Esimerkkieräajokomennostot Roihulle
Esimerkkikomentosarjoja erityyppisten ohjelmien ajamiseen:
Note
Jos käytät näitä komentosarjoja (suosittelemme!), muista muuttaa resurssit
(aika, tehtävät jne.) tarpeitasi vastaaviksi ja korvata myprog <options>
sen ohjelman suoritettavalla tiedostolla (ja valinnoilla), jonka haluat ajaa, sekä
<project> projektisi nimellä.
Roihu-CPU
Sarjallinen CPU
#!/bin/bash
#SBATCH --job-name=example
#SBATCH --account=<project>
#SBATCH --partition=small
#SBATCH --time=00:30:00
#SBATCH --nodes=1
#SBATCH --ntasks=1
#SBATCH --mem-per-cpu=1000M
# Run the program
srun myprog <options>
Osittainen CPU-solmu: MPI
#!/bin/bash
#SBATCH --job-name=example
#SBATCH --account=<project>
#SBATCH --partition=small
#SBATCH --time=00:30:00
#SBATCH --nodes=1
#SBATCH --ntasks=2
#SBATCH --mem-per-cpu=1000M
# Run the program
srun myprog <options>
Osittainen CPU-solmu: OpenMP
#!/bin/bash
#SBATCH --job-name=example
#SBATCH --account=<project>
#SBATCH --partition=small
#SBATCH --time=00:30:00
#SBATCH --nodes=1
#SBATCH --ntasks=1
#SBATCH --cpus-per-task=4
#SBATCH --mem-per-cpu=1000M
# Set the number of threads based on cpus-per-task
export OMP_NUM_THREADS=${SLURM_CPUS_PER_TASK:-1}
# Place and bind threads to single cores
# Comment the following lines if binding is not desired
export OMP_PLACES=cores
export OMP_PROC_BIND=spread
# Run the program
srun myprog <options>
Osittainen CPU-solmu: MPI+OpenMP
#!/bin/bash
#SBATCH --job-name=example
#SBATCH --account=<project>
#SBATCH --partition=small
#SBATCH --time=00:30:00
#SBATCH --nodes=1
#SBATCH --ntasks=2
#SBATCH --cpus-per-task=4
#SBATCH --mem-per-cpu=1000M
# Set the number of threads based on cpus-per-task
export OMP_NUM_THREADS=${SLURM_CPUS_PER_TASK:-1}
# Place and bind threads to single cores
# Comment the following lines if binding is not desired
export OMP_PLACES=cores
export OMP_PROC_BIND=spread
# Run the program
srun myprog <options>
Täydet CPU-solmut: MPI
#!/bin/bash
#SBATCH --job-name=example
#SBATCH --account=<project>
#SBATCH --partition=medium
##SBATCH --partition=large # uncomment if using 6 or more nodes
#SBATCH --time=00:30:00
#SBATCH --nodes=2
#SBATCH --ntasks-per-node=384 --cpus-per-task=1 # The product should be 384
# Run the program
srun myprog <options>
Täydet CPU-solmut: OpenMP
#!/bin/bash
#SBATCH --job-name=example
#SBATCH --account=<project>
#SBATCH --partition=medium
##SBATCH --partition=large # uncomment if using 6 or more nodes
#SBATCH --time=00:30:00
#SBATCH --nodes=2
#SBATCH --ntasks-per-node=1 --cpus-per-task=384 # The product should be 384
# Set the number of threads based on cpus-per-task
export OMP_NUM_THREADS=${SLURM_CPUS_PER_TASK:-1}
# Place and bind threads to single cores
# Comment the following lines if binding is not desired
export OMP_PLACES=cores
export OMP_PROC_BIND=spread
# Run the program
srun myprog <options>
Täydet CPU-solmut: MPI+OpenMP
#!/bin/bash
#SBATCH --job-name=example
#SBATCH --account=<project>
#SBATCH --partition=medium
##SBATCH --partition=large # uncomment if using 6 or more nodes
#SBATCH --time=00:30:00
#SBATCH --nodes=2
#SBATCH --ntasks-per-node=192 --cpus-per-task=2 # The product should be 384
#SBATCH --ntasks-per-node=96 --cpus-per-task=4 # The product should be 384
# Set the number of threads based on cpus-per-task
export OMP_NUM_THREADS=${SLURM_CPUS_PER_TASK:-1}
# Place and bind threads to single cores
# Comment the following lines if binding is not desired
export OMP_PLACES=cores
export OMP_PROC_BIND=spread
# Run the program
srun myprog <options>
Roihu-GPU
Osittaiset GPU-solmut: 1–4 GPU:ta
#!/bin/bash
#SBATCH --job-name=example
#SBATCH --account=<project>
#SBATCH --partition=gpumedium
#SBATCH --time=00:30:00
#SBATCH --nodes=1
#SBATCH --ntasks-per-node=1 --cpus-per-task=72 # The product should be 72 if requesting 1 GPU per node
#SBATCH --gres=gpu:gh200:1 # Corresponds to 1 GPU per node
# Set the number of CPU threads based on cpus-per-task
export OMP_NUM_THREADS=${SLURM_CPUS_PER_TASK:-1}
# Place and bind CPU threads to single CPU cores
# Comment the following lines if binding is not desired
export OMP_PLACES=cores
export OMP_PROC_BIND=spread
# Run the program
srun myprog <options>
Täydet GPU-solmut: 4 tai enemmän GPU:ita
#!/bin/bash
#SBATCH --job-name=example
#SBATCH --account=<project>
#SBATCH --partition=gpularge
#SBATCH --time=00:30:00
#SBATCH --nodes=4
#SBATCH --ntasks-per-node=4 --cpus-per-task=72 # The product should be 288
#SBATCH --gres=gpu:gh200:4 # 4 GPUs per node
# Set the number of CPU threads based on cpus-per-task
export OMP_NUM_THREADS=${SLURM_CPUS_PER_TASK:-1}
# Place and bind CPU threads to single CPU cores
# Comment the following lines if binding is not desired
export OMP_PLACES=cores
export OMP_PROC_BIND=spread
# Run the program
srun myprog <options>
GPU-osiot
Työ kesken
Tämä osio on vielä työn alla. GPU-osioita ei ole vielä määritetty järjestelmään.
Hajautettu tallennus / nopea levy (NVMe over Fabric)
Roihussa on mahdollista pyytää paikallisia levyosliitoksia keskitetystä nopeiden tallennusresurssien poolista. Tämä nopea tallennuskapasiteetti tarjotaan verkon yli, ja se näkyy paikallisena scratch-tilana Slurm-työn sisältä.
Esimerkkikomentosarja, joka varaa 10G nopeaa NVMe-levytilaa:
#!/bin/bash
#SBATCH --job-name=example
#SBATCH --account=<project>
#SBATCH --partition=medium
#SBATCH --time=00:10:00
#SBATCH --nodes=1
#SBATCH --ntasks-per-node=4 --cpus-per-task=96
#SBATCH --bb="#BB_LUA SBF storagesize=10G path=/run/sbb/<user>"
# Set the number of CPU threads based on cpus-per-task
export OMP_NUM_THREADS=${SLURM_CPUS_PER_TASK:-1}
# Place and bind CPU threads to single CPU cores
# Comment the following lines if binding is not desired
export OMP_PLACES=cores
export OMP_PROC_BIND=spread
# Run the program
srun myprog <options>
Hajautettu tallennus on tällä hetkellä saatavilla vain täyden solmun töissä
Tällä hetkellä tätä tallennusta voidaan pyytää vain, jos olet laskentasolmun ainoa käyttäjä, eli
jos lähetät työn CPU-puolella medium- ja large-osioihin tai pyydät
GPU-osioissa solmuja --exclusive-lipulla.
Virheelliset hajautetun tallennuksen pyynnöt voivat epäonnistua siten, että työ ilmoitetaan tilassa CANCELLED by 350,
eikä vakiotulostetta tai virhelokeja synny.
Tuki jaetun solmun töille on odotettavissa vuoden 2026 kolmannella neljänneksellä tai silloin, kun palvelu on valmis.