World Library  
Flag as Inappropriate
Email this Article

Simple Linux Utility for Resource Management

Article Id: WHEBN0028025384
Reproduction Date:

Title: Simple Linux Utility for Resource Management  
Author: World Heritage Encyclopedia
Language: English
Subject: Grid computing
Publisher: World Heritage Encyclopedia

Simple Linux Utility for Resource Management

Stable release 14.03
Development status active
Written in C
Operating system Linux
Type Job Scheduler for Cluster and Supercomputers
License GNU General Public License
Website .com.schedmdslurm

Simple Linux Utility for Resource Management (SLURM) is a free and open-source job scheduler for the Linux kernel used by many of the world's supercomputers and computer clusters. It provides three key functions. First, it allocates exclusive and/or non-exclusive access to resources (computer nodes) to users for some duration of time so they can perform work. Second, it provides a framework for starting, executing, and monitoring work (typically a parallel job such as MPI) on a set of allocated nodes. Finally, it arbitrates contention for resources by managing a queue of pending jobs.

SLURM is the workload manager on roughly half of the TOP500 supercomputers, including Tianhe-2 that (as of June 2013) is the world's fastest computer.

SLURM uses a best fit algorithm based on Hilbert curve scheduling or fat tree network topology in order to optimize locality of task assignments on parallel computers.[1]


SLURM began development as a collaborative effort primarily by Lawrence Livermore National Laboratory, SchedMD,[2] Linux NetworX, Hewlett-Packard, and Groupe Bull as a Free Software resource manager. It was inspired by the closed source Quadrics RMS and shares a similar syntax. Over 100 people around the world have contributed to the project. It has since evolved into a sophisticated batch scheduler capable of satisfying the requirements of many large computer centers.

As of June 2014, TOP500 list of most powerful computers in the world indicates that SLURM is the workload manager on six of the top ten systems. Some of the systems in the top ten running SLURM include Tianhe-2, a 33.86 PetaFlop system at NUDT, IBM Sequoia, an IBM Bluegene/Q with 1.57 million cores and 17.2 Petaflops at Lawrence Livermore National Laboratory; Piz Daint a 7.78 PetaFlop Cray computer at Swiss National Supercomputing Centre, Stampede, a 5.17 PetaFlop Dell computer at the Texas Advance Computing Center;[3] and Vulcan, a 4.29 Petaflop IBM Bluegene/Q at Lawrence Livermore National Laboratory;.[4]


SLURM's design is very modular with dozens of optional plugins. In its simplest configuration, it can be installed and configured in a couple of minutes. More sophisticated configurations provide database integration for accounting, management of resource limits and workload prioritization. SLURM also works with several meta-schedulers such as Moab Cluster Suite, Maui Cluster Scheduler, and Platform LSF.

Notable features

Notable SLURM features include the following:

  • No single point of failure, backup daemons, fault-tolerant job options
  • Highly scalable (schedules up to 100,000 independent jobs on the 100,000 sockets of IBM Sequoia)
  • High performance (up to 1000 job submissions per second and 600 job executions per second)
  • Free and open-source software (GNU General Public License)
  • Highly configurable with about 100 plugins
  • Fair-share scheduling with hierarchical bank accounts
  • Preemptive and gang scheduling (time-slicing of parallel jobs)
  • Integrated with database for accounting and configuration
  • Resource allocations optimized for network topology and on-node topology (sockets, cores and hyperthreads)
  • Advanced reservation
  • Idle nodes can be powered down
  • Different operating systems can be booted for each job
  • Scheduling for generic resources (e.g. Graphics processing unit)
  • Real-time accounting down to the task level (identify specific tasks with high CPU or memory usage)
  • Accounting for power usage by job
  • Support of IBM Parallel Environment (PE/POE)
  • Support for job arrays
  • Job profiling (periodic sampling of each tasks CPU use, memory use, power consumption, network and file system use)
  • Accounting for a job's power consumption
  • Support for MapReduce+

The following features are announced for version 14.11 of SLURM, which is expected to be released in November 2014:[5]

  • Improved job array data structure and scalability
  • Support for heterogeneous generic resources
  • Add user options to set the CPU governor
  • Automatic job requeue policy based on exit value
  • Report API use by user, type, count and time consumed
  • Communication gateway nodes improve scalability

Supported platforms

While SLURM was originally written for the Linux kernel, the latest version supports many other operating systems:[6]

SLURM also supports several unique computer architectures including:

  • IBM BlueGene L, P and Q models including the 20 petaflop IBM Sequoia
  • Cray XT, XE and Cascade
  • Tianhe-2 a 33.9 petaflop system with 32,000 Intel Ivy Bridge chips and 48,000 Intel Xeon Phi chips with a total of 3.1 million cores
  • IBM Parallel Environment
  • Anton


SLURM is available under the GNU General Public License V2.

Commercial support

In 2010, the developers of SLURM founded SchedMD, which maintains the canonical source, provides development, level 3 commercial support and training services. Commercial support is also available from Bright Computing, Bull. Cray, and Science + Computing


  1. ^ Pascual, Jose Antonio; Navaridas, Javier; Miguel-Alonso, Jose (2009). "Job Scheduling Strategies for Parallel Processing". Lecture Notes in Computer Science 5798. pp. 138–144.  
  2. ^ "Slurm Commercial Support, Development, and Installation". SchedMD. Retrieved 2014-02-23. 
  3. ^ "Texas Advanced Computing Center - Home". Retrieved 2014-02-23. 
  4. ^ Donald B Johnston (2010-10-01). "Lawrence Livermore's Vulcan brings 5 petaflops computing power to collaborations with industry and academia to advance science and technology". Retrieved 2014-02-23. 
  5. ^ "Slurm - What's New". SchedMD. Retrieved 2014-08-29. 
  6. ^ SLURM Platforms

Further reading

External links

  • SLURM Documentation
  • SchedMD
This article was sourced from Creative Commons Attribution-ShareAlike License; additional terms may apply. World Heritage Encyclopedia content is assembled from numerous content providers, Open Access Publishing, and in compliance with The Fair Access to Science and Technology Research Act (FASTR), Wikimedia Foundation, Inc., Public Library of Science, The Encyclopedia of Life, Open Book Publishers (OBP), PubMed, U.S. National Library of Medicine, National Center for Biotechnology Information, U.S. National Library of Medicine, National Institutes of Health (NIH), U.S. Department of Health & Human Services, and, which sources content from all federal, state, local, tribal, and territorial government publication portals (.gov, .mil, .edu). Funding for and content contributors is made possible from the U.S. Congress, E-Government Act of 2002.
Crowd sourced content that is contributed to World Heritage Encyclopedia is peer reviewed and edited by our editorial staff to ensure quality scholarly research articles.
By using this site, you agree to the Terms of Use and Privacy Policy. World Heritage Encyclopedia™ is a registered trademark of the World Public Library Association, a non-profit organization.

Copyright © World Library Foundation. All rights reserved. eBooks from Project Gutenberg are sponsored by the World Library Foundation,
a 501c(4) Member's Support Non-Profit Organization, and is NOT affiliated with any governmental agency or department.