https://github.com/jfjlaros/smake
GNU Make for SLURM clusters.
https://github.com/jfjlaros/smake
cluster gnu-make makefile slurm
Last synced: 3 months ago
JSON representation
GNU Make for SLURM clusters.
- Host: GitHub
- URL: https://github.com/jfjlaros/smake
- Owner: jfjlaros
- Created: 2022-01-22T10:47:53.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2022-01-22T19:49:04.000Z (over 3 years ago)
- Last Synced: 2025-01-12T09:47:16.655Z (4 months ago)
- Topics: cluster, gnu-make, makefile, slurm
- Language: Shell
- Homepage:
- Size: 2.93 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.rst
Awesome Lists containing this project
README
SMake
=====Wrapper that enables `GNU Make`_ to make use of a Slurm_ cluster.
Quick Start
-----------A normal ``Makefile`` can be used by overriding the ``SHELL`` variable.
::
make "SHELL=./wrapper" -j 100
Alternatively, this can be set in the ``Makefile`` itself.
.. code-block:: make
SHELL := ./wrapper
Job parameters
~~~~~~~~~~~~~~~The ``SBATCH`` environment variable can be used for setting default sbatch_
options.::
export SBATCH="--mem=1G"
Alternatively, this can be set in the ``Makefile`` itself.
.. code-block:: make
export SBATCH := --mem=1G
Defaults can be overridden per rule using the ``SBATCH`` variable.
.. code-block:: make
SBATCH="--mem=2G" mycommand
Local rules
~~~~~~~~~~~Rules that start with a definition of the ``LOCAL`` variable are executed
locally... code-block:: make
LOCAL="true" mycommand
.. _Slurm: https://slurm.schedmd.com/
.. _`GNU Make`: https://www.gnu.org/software/make/
.. _sbatch: https://slurm.schedmd.com/sbatch.html