.TH Slurm "1" "Slurm System" "June 2018" "Slurm System"

.SH "NAME"
Slurm \- Slurm Workload Manager overview.

.SH "DESCRIPTION"
The Slurm Workload Manager is an open source,
fault\-tolerant, and highly scalable cluster management and job scheduling system
for large and small Linux clusters. Slurm requires no kernel modifications for
its operation and is relatively self\-contained. As a cluster resource manager,
Slurm has 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 contention for resources by managing a queue of
pending work.
Optional plugins can be used for accounting, advanced reservation,
gang scheduling (time sharing for parallel jobs), backfill scheduling,
resource limits by user or bank account,
and sophisticated multifactor job prioritization algorithms.

Slurm has a centralized manager, \fBslurmctld\fR, to monitor resources and
work. There may also be a backup manager to assume those responsibilities in the
event of failure. Each compute server (node) has a \fBslurmd\fR daemon, which
can be compared to a remote shell: it waits for work, executes that work, returns
status, and waits for more work. An optional \fBslurmdbd\fR (Slurm DataBase Daemon)
can be used for accounting purposes and to maintain resource limit information.

Basic user tools include \fBsrun\fR to initiate jobs,
\fBscancel\fR to terminate queued or running jobs, \fBsinfo\fR to report system
status, and \fBsqueue\fR to report the status of jobs. There is also an administrative
tool \fBscontrol\fR available to monitor and/or modify configuration and state
information. APIs are available for all functions.

Slurm configuration is maintained in the \fBslurm.conf\fR file.

Man pages are available for all Slurm commands, daemons, APIs, plus the
\fBslurm.conf\fR file.
Extensive documentation is also available on the internet at
\fB<https://slurm.schedmd.com/>\fR.

.SH "COPYING"
Copyright (C) 2005\-2007 The Regents of the University of California.
Produced at Lawrence Livermore National Laboratory (cf, DISCLAIMER).
.br
Copyright (C) 2008\-2009 Lawrence Livermore National Security.
.br
Copyright (C) 2010\-2022 SchedMD LLC.
.LP
This file is part of Slurm, a resource management program.
For details, see <https://slurm.schedmd.com/>.
.LP
Slurm is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free
Software Foundation; either version 2 of the License, or (at your option)
any later version.
.LP
Slurm is distributed in the hope that it will be useful, but WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
details.

.SH "SEE ALSO"
\fBsacct\fR(1), \fBsacctmgr\fR(1), \fBsalloc\fR(1), \fBsattach\fR(1),
\fBsbatch\fR(1), \fBsbcast\fR(1), \fBscancel\fR(1), \fBscontrol\fR(1),
\fBsinfo\fR(1), \fBsqueue\fR(1), \fBsreport\fR(1),
\fBsrun\fR(1), \fBsshare\fR(1), \fBsstat\fR(1), \fBstrigger\fR(1),
\fBsview\fR(1),
\fBslurm.conf\fR(5), \fBslurmdbd.conf\fR(5),
\fBslurmctld\fR(8), \fBslurmd\fR(8), \fBslurmdbd\fR(8), \fBslurmstepd\fR(8),
\fBspank\fR(8)
