This is the multi-page printable view of this section. Click here to print.
Software
1 - Scheduler
| Component | Value |
|---|---|
| Scheduler | Slurm 25.05 |
| Default partition | all |
| QoS | normal |
Job submission
Jobs are submitted using sbatch for batch jobs or salloc for interactive sessions.
sbatch job.sh # Submit batch job
salloc --partition=all # Start interactive session
Required options
All jobs require an account:
#SBATCH --account=<your-account>
Find your account with:
sacctmgr show user $USER withassoc format=account%20
2 - Modules
Overview
DAIC uses Lmod to manage software environments. Modules allow you to load specific versions of software without conflicts.
Module hierarchy
DAIC organizes modules in a hierarchy. First load a base module to access software:
| Base module | Purpose |
|---|---|
2025/cpu | CPU-only software (default) |
2025/gpu | GPU software (CUDA, PyTorch, etc.) |
module load 2025/gpu
After loading a base module, additional software becomes available.
Common commands
Loading and unloading
| Command | Description |
|---|---|
module load <name> | Load a module |
module unload <name> | Unload a module |
module swap <old> <new> | Replace one module with another |
module purge | Unload all modules |
module refresh | Reload aliases from current modules |
module update | Reload all currently loaded modules |
Listing and searching
| Command | Description |
|---|---|
module list | Show loaded modules |
module avail | List available modules |
module avail <string> | List modules containing string |
module spider <name> | Search all possible modules |
module spider <name>/<version> | Detailed info about specific version |
module whatis <name> | Print module description |
module keyword <string> | Search names and descriptions |
module show <name> | Show commands in module file |
Collections
| Command | Description |
|---|---|
module save <name> | Save current modules to collection |
module restore <name> | Restore modules from collection |
module savelist | List saved collections |
module describe <name> | Show contents of collection |
module disable <name> | Remove a collection |
Utility
| Command | Description |
|---|---|
module is-loaded <name> | Check if module is loaded (for scripts) |
module is-avail <name> | Check if module can be loaded |
ml | Shorthand for module list |
ml <name> | Shorthand for module load <name> |
Finding software
List all available modules:
module avail
Search for a specific module:
module spider pytorch
Get details about a module:
module spider py-torch/2.5.1
Loading modules
Load a single module:
module load cuda/12.9
Load multiple modules:
module load 2025/gpu cuda/12.9 py-torch/2.5.1
Check loaded modules:
module list
Example: GPU software stack
To use PyTorch with GPU support:
module load 2025/gpu
module load py-torch/2.5.1
python -c "import torch; print(torch.cuda.is_available())"
> True
Available software
After loading 2025/gpu, the following software is available (partial list):
| Category | Modules |
|---|---|
| Deep learning | py-torch/2.5.1, py-torch-geometric/2.5.3 |
| GPU | cuda/12.9, cudnn/8.9.7.29-12 |
| Scientific | py-numpy/1.26.4, py-scipy/1.14.1, py-pandas/2.2.3 |
| ML | py-scikit-learn/1.5.2 |
| Compilers | cuda/12.9, intel/oneapi_2025.3 |
| Applications | matlab/R2025b |
Use module avail to see the full list.
Using modules in jobs
Load modules in your SLURM batch script:
#!/bin/bash
#SBATCH --account=<your-account>
#SBATCH --partition=all
#SBATCH --gres=gpu:1
module purge
module load 2025/gpu
module load py-torch/2.5.1
srun python train.py
Always use module purge
Start batch scripts withmodule purge to ensure a clean environment.Saving module collections
Save frequently used module combinations:
module load 2025/gpu py-torch/2.5.1 py-numpy/1.26.4
module save my-pytorch
Restore later:
module restore my-pytorch
List saved collections:
module savelist