Debian 13 Trixie environments release notes: Difference between revisions
Pvirouleau (talk | contribs) |
Pvirouleau (talk | contribs) |
||
| Line 179: | Line 179: | ||
=== Open MPI === | === Open MPI === | ||
OpenMPI is only available through the modules. You have to load it with <code>module load openmpi</code>. | |||
Loading ''openmpi'' doesn't load a toolchain, you '''must''' load a toolchain and make sure to use it, otherwise you will end up using the system's toolchain and you will run into issues; you can use <code>module load gcc-toolchain</code> to make a compatible gcc available. | |||
If your code depends on other librairies, please make sure they come from the modules and not the system. | |||
== Tools changes == | == Tools changes == | ||
Revision as of 12:00, 21 August 2026
There is some significant evolutions since previous debian11 environments.
Common componants changes (Debian)
| Componant | Debian 11 Bullseye | Debian 13 Trixie |
|---|---|---|
| Linux kernel | 5.10 | 6.12 |
| GCC | 10.2 | 14.2 |
| LLVM/Clang toolchain | 11 | 19 |
| Perl | 5.32 | 5.40 |
| Python | 3.9 | 3.13 |
| Ruby | 2.7 | 3.3 |
| OpenJDK | 17 | 25 |
| Qemu | 5.2 | 10.0 |
| RDMA | 33.2 | 56.1 |
| Singularity | 4.1.2 | N/A |
| Apptainer (Singularity replacement) | N/A | 1.4.5 |
For more informations, see debian.org Release Notes.
Environments specific changes
Available in debian13-big and debian13-std (default) environments :
| x86_64 (AMD64) componants | debian11 envs | debian13 envs |
|---|---|---|
| Nvidia drivers | 535.x | 580.x |
| Nvidia CUDA | 11.2.x | 13.0 via modules |
| AMD drivers (amdgpu) | 6.3.x | 30.x |
| AMD ROCm | 6.3.x | 7.1 via modules |
| Open MPI | 4.1 | 4.1 via modules |
| aarch64 (ARM64) componants | debian11 env | debian13 env |
|---|---|---|
| Nvidia drivers | N/A | 580.x |
| Nvidia CUDA | N/A | via modules (planned) |
Note some “old” Nvidia GPU clusters use a new dedicated environment named debiannvlegacy13 for big and std (default) variants. The only change in this environment flavor is that the proprietary nvidia module kernel is used, instead of the more recent open source one, as it is mandatory for Nvidia GPU Compute Capability < 7.5 .
For more informations, see this Nvidia explanation.
Some other useful informations:
Modules evolution
The default provided modules are no more build with Spack, but with GUIX.
For more informations, see
| Note | |
|---|---|
ARM64 CPU architecture modules are not available for now. We are working on it. | |
CUDA and ROCm
Only nvidia and amdgpu drivers (kernel modules) are provided in big and default environments. Tools like CUDA and ROCm have to be loaded with module commands.
Nvidia CUDA modules
If you want to use cuda from the modules and run the compiled code, you need to load two modules: cuda-toolkit, which provide the cuda-related software, and nvidia-driver-libs, which allows the packaged cuda to see the system's drivers. You likely also want to use a toolchain to compile non-cuda code, and therefore will need to load gcc-toolchain.
If the default environment is debian13 the module load looks like this : module load gcc-toolchain cuda-toolkit nvidia-driver-libs (default is currently cuda-toolkit/13).
And if the default environment is debiannvlegacy13 : module load gcc-toolchain cuda-toolkit/12 nvidia-driver-libs
Compatibility matrix:
| environment | Nvidia kernel module | Nvidia GPU compute capability | CUDA 12.9 | CUDA 13 |
|---|---|---|---|---|
| debiannvlegacy13 | proprietary (legacy) | < 7.5 | OK | KO |
| debian13 | open | ≥ 7.5 | OK | OK |
For more informations on CUDA GPU Compute Capability, see Nvidia documentation.
AMD ROCm (Radeon Open Compute) modules
There are a lot of ROCm modules available, and currently you'll need to load a number of modules to fully use ROCm (see the warning below):
module load cmake gcc-toolchain rocm-hip-runtime hipblas hipblas-common hipcub rocm-toolchain rocprim hiprand rocrand hipfft hipify python rocblas
| Warning | |
|---|---|
We still have ongoing work on ROCm, please read this if you want to use ROCm.
In the next week or so we'll make a module release to provide a meta package rocm which you'll be able to use in order to use ROCm related modules (which will replace the line above by a single | |
Open MPI
OpenMPI is only available through the modules. You have to load it with module load openmpi.
Loading openmpi doesn't load a toolchain, you must load a toolchain and make sure to use it, otherwise you will end up using the system's toolchain and you will run into issues; you can use module load gcc-toolchain to make a compatible gcc available.
If your code depends on other librairies, please make sure they come from the modules and not the system.
Tools changes
DHCP client and IPv6
ISC DHCP tools (client and server) are deprecated. See ISC Note.
The client has been replaced by dhcpcd. So the commonly used dhclient <interface_name> is no more available, and is replaced by dhcpcd <interface_name>.
Node network interface will have both IPv4 and IPv6 addresses by default.
Network Time Protocol (NTP) client
For system time synchronizaton, ntpsec and ntpsec-ntpdate are used instead of no more available ntp et ntpdate tools packages.
CPU frequency scaling
cpufrequtils has been replaced by linux-cpupower (introduced with kernel 3.1).
See the cpupower manpage for more informations.
Singularity to Apptainer
Apptainer is available in replacement of Singularity.
PMem (Persistent Memory)
Debian ipmctl package, a utility for configuring and managing Intel® Optane™ Persistent Memory modules is not compatible with python 3.13 provided by Debian 13 repository.
So the Troll cluster in Grenoble featuring PMem remains on debian11 environnement by default.
Custom Linux kernel
For big and std environments variants, we had to use a custom Linux kernel build to enable and continue using control groups v1 (cgroupv1) instead of newer cgroupv2 to keep compatibility with currently used OAR 2.5.10.