Resource Manager

Resource sharing on a high-performance cluster dedicated to scientific computing is organized by a piece of software called a resource manager or job scheduler. Indeed, users do not run software on those cluster like they would do on a workstation, rather, they must submit jobs, which are run unattended, by the job scheduler at the time, and on the resources decided by its algorithm.

SLURM (Simple Linux utility Resource manager) is the workload manager and job scheduler for FEDGEN HPC Cluster. Slurm Workload Manager is an open source, fault-tolerant, and highly scalable cluster management and job scheduling system for large and small Linux clusters. It is used by many of the world’s supercomputers and computer clusters.

The main function of SLURM is to allocate resources within the cluster to jobs as requested by users. Resources managed by SLURM include:

  • Nodes: A Node is a computing instance with one or more cores, memory and local storage.

  • Cores: A complete isolated set of registers, Arithmetic Logic Units and queues to execute a program.

  • Threads: Within each physical core, the operating system is able to address two virtual cores to increase the number of independent instruction sets processed.

  • Memory: Program execution space

  • Accelerators such as GPUs can be managed by SLURM

  • License guide: SLURM also assists with license management by assigning available licenses to jobs at the time of scheduling. If the relevant license is not available, the job will not be executed and will remain in the pending state.Machine learning and deep learning models can be trained in HPC with Tensorflow, PyTorch, Dask or other distributed computing library.

Read the official Quick Start User Guide for an overview of the architecture, commands and examples.