II Slurm Overview
II Slurm Overview
II Slurm Overview
SchedMD LLC
www.schedmd.com
● Highly scalable
– Managing 3.1 million core Tianhe-2
– Tested to much larger systems using emulation
● Open source GPLv2, available on Github: https://github.com/SchedMD/
● System administrator friendly
● Secure
● Fault-tolerant (no single point of failure)
● Portable - Targeting POSIX2008.1 and C99
Copyright 2018 SchedMD LLC
www.schedmd.com
SLUG Sept. 25&26th, 2018
Slurm Portability
accounting_storage/slurmdbd accounting_storage/mysql
Partition debug
Job 1
Job 2
Job 3
Node: tux123
#!/bin/bash Socket: 0
#SBATCH -n6
.. Core 0
Partition debug Core 1
Core 2
Job 1
Core 3
Job 2
Core 4
Job 3
Core 5
● ID (a number)
● Name
● Time limit (minimum and/or maximum)
● Size specification (minimum and/or maximum; nodes, CPUs, sockets, cores, and/or
threads)
● Specific node names to include or exclude in allocation
● Node features required in allocation
● Dependency
● Account name
● Quality Of Service (QOS)
● State (Pending, Running, Suspended, Canceled, Failed, etc.)
Submission Pending
Configuring
(node booting)
Completing
● ID (a number): <jobid>.<stepid>
● Name
● Time limit (maximum)
● Size specification (minimum and/or maximum; nodes, CPUs,
sockets, cores, and/or threads)
● Specific node names to include or exclude in allocation
● Node features required in allocation
Copyright 2018 SchedMD LLC
www.schedmd.com
SLUG Sept. 25&26th, 2018
Summary
Slurmctld Slurmdbd
(backup) (backup)
Slurm
Slurmctld Slurmdbd
user MySQL
(master) (master)
tools
Slurm administration
tools
●
General conf
●
Plugin activation ●
Slurmdbd params.
●
Scheduler ●
Archive/Purge
parameters
●
Storage options
●
Node definition
●
Partition definition
●
Other files configure specific plugin options
– burst_buffer.conf, acct_gather.conf, knl.conf...
Options used
--ntasks or -n Number of tasks and by default the number of CPUs
--time or -t Wall time limit (minutes in our example)
--dependency or -d Job dependency
--begin Delay job initiation at least
Copyright 2018 until LLC
SchedMD this date and time
www.schedmd.com
SLUG Sept. 25&26th, 2018
srun Example - Multiple Serial Job Steps
● Managing jobs
● Accounting
● As soon as some reason is found why a job cannot be started, that is recorded in
the job's “reason” field and the scheduler moves on to the next job
Some common reasons why jobs are pending:
Priority Resources being reserved for higher priority job
Resources Required resources are in use
Dependency Job dependencies not yet satisfied
Reservation Waiting for advanced reservation
● Managing jobs
● Accounting
Root 100%
● Questions?