# Platforms

## Operating Systems

- FreeBSD — Limited support, not actively tested.
- Linux — Slurm has been thoroughly tested on most popular Linux distributions using arm64 (aarch64), ppc64, and x86_64 architectures. Some features are limited to recent releases and newer Linux kernel versions. Currently supported distributions include:
  - Cray Linux Environment 6
  - Cray Linux Environment 7
  - Debian (jessie, stretch, buster, and newer)
  - RedHat Enterprise Linux 6 (RHEL6), CentOS 6, Scientific Linux 6 (deprecated, and will be removed in a future release)
  - RedHat Enterprise Linux 7 (RHEL7), CentOS 7, Scientific Linux 7
  - RedHat Enterprise Linux 8 (RHEL7), CentOS 8 (and newer)
  - SUSE Linux Enterprise Server (SLES) 12 (and newer)
  - Ubuntu (16.04, 18.04, and newer)
- NetBSD — Limited support, not actively tested.
- macOS — Slurm has run on macOS in the past, but does not currently. It should be possible to fix this with some adjustments to linker and compiler flags, and any patches would be appreciated.

## Databases

Slurm will be built with support for MySQL if it finds supported development libraries at build time. Although it is possible to build Slurm against older versions of MySQL, it is not recommended. SchedMD recommends you use modern versions of MySQL or MariaDB, preferably versions newer than MySQL 5.5.

## Accelerators

Slurm has optional support for managing a variety of accelerator cards. Specific plugins have been developed for:

- gres/gpu with AutoDetect=nvml — autodetection of NVIDIA GPUs through their proprietary NVML library (tested on x86_64 and arm64)
- gres/mps — NVIDIA CUDA Multi-Process Service provides ways to share GPUs between multiple compute processes

Last modified 7 December 2021