# What's New

## Index

- SLURM Version 1.3, March 2008
- SLURM Version 2.0, May 2009
- SLURM Version 2.1, late 2009
- SLURM Version 2.2 and beyond

## Major Updates in SLURM Version 1.3

SLURM Version 1.3 was released in March 2008. Major enhancements include:

- Job accounting and completion data can be stored in a database (MySQL, PGSQL or simple text file).
- SlurmDBD (Slurm Database Deamon) introduced to provide secure database support across multiple clusters.
- Gang scheduler plugin added (time-slicing of parallel jobs without an external scheduler).
- Cryptography logic moved to a separate plugin with the option of using OpenSSL (default) or Munge (GPL).
- Improved scheduling of multiple job steps within a job's allocation.
- Support for job specification of node features with node counts.
- srun's --alloc, --attach, and --batch options removed (use salloc, sattach or sbatch commands instead).
- srun --pty option added to support remote pseudo terminal for spawned tasks.
- Support added for a much richer job dependency specification including testing of exit codes and multiple dependencies.
- Support added for BlueGene/P systems and HTC (High Throughput Computing) mode.

## Major Updates in SLURM Version 2.0

SLURM Version 2.0 was released in May 2009. Major enhancements include:

- Sophisticated job prioritization plugin is now available. Jobs can be prioritized based upon their age, size and/or fair-share resource allocation using hierarchical bank accounts.
- An assortment of resource limits can be imposed upon individual users and/or hierarchical bank accounts such as maximum job time limit, maximum job size, and maximum number of running jobs.
- Advanced reservations can be made to insure resources will be available when needed.
- Idle nodes can now be completely powered down when idle and automatically restarted when their is work available.
- Jobs in higher priority partitions (queues) can automatically preempt jobs in lower priority queues. The preempted jobs will automatically resume execution upon completion of the higher priority job.
- Specific cores are allocated to jobs and jobs steps in order to effective preempt or gang schedule jobs.
- A new configuration parameter, PrologSlurmctld, can be used to support the booting of different operating systems for each job.
- Added switch topology configuration options to optimize job resource allocation with respect to communication performance.
- Automatic Checkpoint/Restart using BLCR is now available.

## Major Updates in SLURM Version 2.1

SLURM Version 2.1 is scheduled for released late in 2009. Major enhancements include:

- Support for job preemption based upon job Quality of Service (QOS) in addition to queue priority.
- Support for time limits on individual job steps (in addition to the job time limit).
- Fully implement the PgSQL accounting plugin.
- Provide a web-based SLURM administration tool.
- Improve fault-tolerance in recognizing compute node reboots.
- Add sinfo and squeue information about specific cores allocated.
- Support for Solaris (OpenSolaris build 116).

## Major Updates in SLURM Version 2.2 and beyond

Detailed plans for release dates and contents of future SLURM releases have not been finalized. Anyone desiring to perform SLURM development should notify slurm-dev@lists.llnl.gov to coordinate activities. Future development plans includes:

- Optimized resource allocation based upon network topology (e.g. hierarchical switches).
- Modify more SLURM commands to operate between clusters.
- Support for BlueGene/Q systems.
- Permit resource allocations (jobs) to change size.
- Add Kerberos credential support including credential forwarding and refresh.

Last modified 20 July 2009