/ FAQ

Slurm Frequently Asked Questions (FAQ)

Common questions about Slurm workload manager: installation, configuration, pricing, PBS comparison, and more. Answers from Mevasis HPC experts.

Frequently Asked Questions About Slurm

Comprehensive answers to the most common questions about the Slurm workload manager — from installation to operations, GPU scheduling to license management.

What is Slurm and what does it do?

Slurm (Simple Linux Utility for Resource Management) is an open-source job scheduler for Linux-based HPC clusters. Its primary function is to fairly and efficiently share compute resources (CPU cores, memory, GPUs) among multiple users. Slurm provides job prioritization, resource reservation, quota management, and usage accounting — making it the standard choice for universities, research centers, and enterprise R&D departments worldwide.

How is Slurm installed?

A Slurm installation consists of four core components: slurmctld (controller daemon), slurmd (worker daemon on each node), slurmdbd (accounting database), and MUNGE (authentication). Installation steps: generate and distribute MUNGE key to all nodes, create slurm.conf configuration, define partitions, enable cgroup resource isolation, and configure GPU GRES if applicable. Enterprise installations typically take 3-10 business days.

What is the difference between Slurm and PBS/Torque?

Both are HPC workload managers, but Slurm is the clear market leader today. Slurm offers faster job start times, better scalability (100,000+ nodes), more flexible GPU scheduling (GRES), and a more active community. PBS is generally simpler to configure but can face performance issues on large clusters. Over 60% of TOP500 supercomputers use Slurm.

What is the difference between Slurm and Kubernetes?

Slurm and Kubernetes are optimized for different workloads. Slurm is designed for traditional HPC (simulation, modeling, CFD) — batch-oriented with jobs running hours to days. Kubernetes is optimized for container-based microservices and web applications — ideal for always-on services. For AI/ML workloads, both can be used. In most enterprise environments, Slurm serves as the primary scheduler with Kubernetes as a complementary orchestration layer.

How does Slurm GPU scheduling work?

Slurm manages GPU resources through the GRES (Generic Resource Scheduling) plugin. Each GPU is defined in gres.conf as a resource. Users request GPUs with --gres=gpu:h100:2. Slurm automatically allocates GPUs, sets CUDA_VISIBLE_DEVICES, and releases GPUs when jobs complete.

What is a Slurm partition?

A partition is a logical grouping of nodes with specific scheduling policies. Typical enterprise setup: ‘short’ partition (test jobs, max 4h), ’long’ partition (production jobs, max 7 days), ‘gpu’ partition (GPU nodes with separate billing), ‘debug’ partition (quick debugging, max 30 min).

Why is cgroup resource isolation important in Slurm?

Cgroups (Control Groups) enforce CPU, memory, and swap limits at the Linux kernel level for each Slurm job. Without cgroups, a single misbehaving job can consume all memory on a node and crash other jobs. With cgroups enabled, memory-exceeding jobs get OOM-killed — but only that specific job is affected, not the entire node.

What is Slurm fair-share?

Fair-share is Slurm’s priority mechanism for equitable resource distribution among users and groups. Users who consume more resources see their priority automatically decrease over time, while lighter users get priority. Fair-share calculation is based on historical usage data in the slurmdbd database.

What are common Slurm problems?

Most common issues: nodes entering ‘drain’ state (usually memory overflow, hardware failure, or slurmd communication loss), jobs stuck in ‘pending’ indefinitely (insufficient resources or partition constraints), MUNGE authentication failures (key mismatch or clock skew), GPU jobs failing to start (GRES misconfiguration or NVIDIA driver issues). Most can be caught proactively with proper monitoring.

What tools should I use to monitor Slurm?

Recommended monitoring stack: Prometheus + slurm_exporter (queue status, node health, job metrics), Grafana (customizable dashboards), DCGM Exporter (NVIDIA GPU metrics), node_exporter (hardware metrics), Alertmanager (automatic notifications on threshold breach via email, Slack, or PagerDuty).

How does Slurm license management work?

Slurm provides built-in license management for expensive engineering software (ANSYS, LS-DYNA, MATLAB). License counts are defined in slurm.conf, and users request licenses with --licenses=ansys_hpc:4. Slurm tracks concurrent license allocation and queues jobs when licenses are exhausted — eliminating manual license coordination.

Should I get professional Slurm support?

Small clusters (8-16 nodes) can often be managed in-house. For 32+ node clusters, GPU systems, multi-user environments, or SLA-required enterprise setups, professional support reduces downtime risk and is more economical long-term. See our Slurm Services page for details.

If you don’t find your answer, contact us.

Need Help?

Didn't find your answer?

Contact our HPC experts for a free consultation.