Add a few slurm scripts for the cluster

This commit is contained in:
Paul Brinkmeier 2023-12-11 19:06:11 +01:00
parent 7f747be334
commit a0eaa76b27
4 changed files with 79 additions and 1 deletions

View File

@ -10,3 +10,17 @@ jupyter-lab
``` ```
The `shell.nix` contains a workaround for NixOS and is not necessary for normal use. The `shell.nix` contains a workaround for NixOS and is not necessary for normal use.
## Building NAStJA for Experiments
Build it either with or without CUDA support.
When NAStJA is built with CUDA support it will automatically switch to the GPU implementation of the dynamic ECM.
I use the `mold` linker because it makes the code-build-test-loop slightly shorter.
This shouldn't have any impact on the performance of the produced binary.
If you would like to shorten the linking time even further you can add `-DNASTJA_ENABLE_IPO=OFF` to turn of Link Time Optimization (LTO).
However, it is likely that will have an impact on performance.
```
cmake .. -DCMAKE_CXX_FLAGS="-fuse-ld=mold"
cmake .. -DCMAKE_CXX_FLAGS="-fuse-ld=mold" -DNASTJA_ENABLE_CUDA=ON
```

View File

@ -0,0 +1,19 @@
#!/usr/bin/env bash
#SBATCH --job-name=build-cuda
# Forschergruppe Schug
#SBATCH --account=hkf6
#SBATCH --partition=develbooster
#SBATCH --nodes=1
#SBATCH --ntasks-per-node=1
#SBATCH --cpus-per-task=48
#SBATCH --time=01:00:00
#SBATCH --output=build-cuda-%j.out
#SBATCH --error=build-cuda-%j.err
SOURCE_DIR=/p/project/cellsinsilico/paulslustigebude
source "${SOURCE_DIR}/activate-nastja-modules"
cd "${SOURCE_DIR}/nastja/build-cuda"
srun make -j48

View File

@ -0,0 +1,19 @@
#!/usr/bin/env bash
#SBATCH --job-name=build-nocuda
# Forschergruppe Schug
#SBATCH --account=hkf6
#SBATCH --partition=develbooster
#SBATCH --nodes=1
#SBATCH --ntasks-per-node=1
#SBATCH --cpus-per-task=48
#SBATCH --time=01:00:00
#SBATCH --output=build-nocuda-%j.out
#SBATCH --error=build-nocuda-%j.err
SOURCE_DIR=/p/project/cellsinsilico/paulslustigebude
source "${SOURCE_DIR}/activate-nastja-modules"
cd "${SOURCE_DIR}/nastja/build-nocuda"
srun make -j48

26
experiments/batch/nocuda Normal file
View File

@ -0,0 +1,26 @@
#!/usr/bin/env bash
#SBATCH --job-name=nocuda
# Forschergruppe Schug
#SBATCH --account=hkf6
# 48 Cores, 512GiB RAM, 4x NVIDIA A100 GPUs
#SBATCH --partition=booster
# Right now we're using a single node
#SBATCH --nodes=1
# Number of MPI processes
# TODO: Change the config and set to this the maximum of 48
#SBATCH --ntasks-per-node=16
#SBATCH --cpus-per-task=1
#SBATCH --time=01:00:00
#SBATCH --output=nocuda-%j.out
#SBATCH --error=nocuda-%j.err
SOURCE_DIR=/p/project/cellsinsilico/paulslustigebude
OUTPUT_DIR=/p/scratch/cellsinsilico/paul/nastja-out/nocuda
mkdir -p "${OUTPUT_DIR}"
source "${SOURCE_DIR}/activate-nastja-modules"
srun "${SOURCE_DIR}/nastja/build-nocuda/nastja" \
-c "${SOURCE_DIR}/ma/experiments/configs/genesis.json" \
-o "${OUTPUT_DIR}"