This is the Slurm Workload Manager. Slurm is an open-source cluster resource management and job scheduling system that strives to be simple, scalable, portable, fault-tolerant, and interconnect agnostic. Slurm currently has been tested only under Linux.
As a cluster resource manager, Slurm provides three key functions. First, it allocates exclusive and/or non-exclusive access to resources (compute nodes) to users for some duration of time so they can perform work. Second, it provides a framework for starting, executing, and monitoring work (normally a parallel job) on the set of allocated nodes. Finally, it arbitrates conflicting requests for resources by managing a queue of pending work.
- The official issue tracker for Slurm is at
- https://bugs.schedmd.com/
We welcome code contributions and patches, but we do not accept Pull Requests through Github at this time. Please submit patches as attachments to new bugs under "Contributions" category.
The top-level distribution directory contains this README as well as other high-level documentation files, and the scripts used to configure and build Slurm (see INSTALL). Subdirectories contain the source-code for Slurm as well as a DejaGNU test suite and further documentation. A quick description of the subdirectories of the Slurm distribution follows:
- src/ [ Slurm source ]
- Slurm source code is further organized into self explanatory subdirectories such as src/api, src/slurmctld, etc.
- doc/ [ Slurm documentation ]
- The documentation directory contains some latex, html, and ascii text papers, READMEs, and guides. Manual pages for the Slurm commands and configuration files are also under the doc/ directory.
- etc/ [ Slurm configuration ]
- The etc/ directory contains a sample config file, as well as some scripts useful for running Slurm.
- slurm/ [ Slurm include files ]
- This directory contains installed include files, such as slurm.h and slurm_errno.h, needed for compiling against the Slurm API.
- testsuite/ [ Slurm test suite ]
- The testsuite directory contains the framework for a set of DejaGNU and "make check" type tests for Slurm components. There is also an extensive collection of Expect scripts.
- auxdir/ [ autotools directory ]
- Directory for autotools scripts and files used to configure and build Slurm
- contribs/ [ helpful tools outside of Slurm proper ]
- Directory for anything that is outside of slurm proper such as a different api or such. To have this build you need to do a make contrib/install-contrib.
- Please see the instructions at
- https://slurm.schedmd.com/quickstart_admin.html
- Extensive documentation is available from our home page at
- https://slurm.schedmd.com/slurm.html
- If you experience problems compiling, installing, or running Slurm, see
- https://slurm.schedmd.com/help.html
Slurm is provided "as is" and with no warranty. This software is distributed under the GNU General Public License, please see the files COPYING, DISCLAIMER, and LICENSE.OpenSSL for details.