mirror of
https://github.com/smyalygames/FiniteVolumeGPU.git
synced 2025-05-18 06:24:13 +02:00
Added benchmarks for Saga and updated figures.
This commit is contained in:
parent
528b738dda
commit
a7a723aca6
464
Figures.ipynb
464
Figures.ipynb
File diff suppressed because one or more lines are too long
@ -16,7 +16,8 @@
|
|||||||
#SBATCH --partition=accel
|
#SBATCH --partition=accel
|
||||||
#
|
#
|
||||||
# Max memory usage per task (core) - increasing this will cost more core hours:
|
# Max memory usage per task (core) - increasing this will cost more core hours:
|
||||||
#SBATCH --mem-per-cpu=3800M
|
##SBATCH --mem-per-cpu=3800M
|
||||||
|
#SBATCH --mem-per-cpu=24G
|
||||||
#
|
#
|
||||||
#SBATCH --qos=devel
|
#SBATCH --qos=devel
|
||||||
|
|
||||||
@ -26,6 +27,8 @@
|
|||||||
|
|
||||||
module restore system # instead of 'module purge' rather set module environment to the system default
|
module restore system # instead of 'module purge' rather set module environment to the system default
|
||||||
module load CUDA/11.4.1
|
module load CUDA/11.4.1
|
||||||
|
#module load CUDA/11.1.1-GCC-10.2.0
|
||||||
|
#module load OpenMPI/4.0.5-gcccuda-2020b
|
||||||
|
|
||||||
# It is also recommended to to list loaded modules, for easier debugging:
|
# It is also recommended to to list loaded modules, for easier debugging:
|
||||||
module list
|
module list
|
||||||
@ -40,12 +43,23 @@ cp -r . $SCRATCH/ShallowWaterGPU
|
|||||||
## Make sure the results are copied back to the submit directory (see Work Directory below):
|
## Make sure the results are copied back to the submit directory (see Work Directory below):
|
||||||
# chkfile MyResultFile
|
# chkfile MyResultFile
|
||||||
# chkfile is replaced by 'savefile' on Saga
|
# chkfile is replaced by 'savefile' on Saga
|
||||||
savefile "$SCRATCH/ShallowWaterGPU/*.log"
|
#savefile "$SCRATCH/ShallowWaterGPU/*.log"
|
||||||
savefile "$SCRATCH/ShallowWaterGPU/*.nc"
|
#savefile "$SCRATCH/ShallowWaterGPU/*.nc"
|
||||||
savefile "$SCRATCH/ShallowWaterGPU/*.json"
|
#savefile "$SCRATCH/ShallowWaterGPU/*.json"
|
||||||
|
#savefile "$SCRATCH/ShallowWaterGPU/*.qdrep"
|
||||||
|
|
||||||
|
cleanup "rm -rf $SCRATCH/ShallowWaterGPU"
|
||||||
|
|
||||||
|
export OMPI_MCA_opal_cuda_support=true
|
||||||
|
|
||||||
## Do some work:
|
## Do some work:
|
||||||
cd $SCRATCH/ShallowWaterGPU
|
cd $SCRATCH/ShallowWaterGPU
|
||||||
srun $HOME/.conda/envs/ShallowWaterGPU_HPC/bin/python3 --version
|
srun /cluster/projects/nn9882k/martinls/.conda/envs/ShallowWaterGPU_HPC/bin/python3 --version
|
||||||
srun $HOME/.conda/envs/ShallowWaterGPU_HPC/bin/python3 mpiTesting.py -nx $NX -ny $NY --profile
|
srun /cluster/projects/nn9882k/martinls/.conda/envs/ShallowWaterGPU_HPC/bin/python3 mpiTesting.py -nx $NX -ny $NY --profile
|
||||||
|
|
||||||
|
cd $HOME/src/ShallowWaterGPU
|
||||||
|
mkdir -p output_saga/$NOW/$SLURM_JOB_ID
|
||||||
|
mv $SCRATCH/ShallowWaterGPU/*.log ./output_saga/$NOW/$SLURM_JOB_ID
|
||||||
|
mv $SCRATCH/ShallowWaterGPU/*.nc ./output_saga/$NOW/$SLURM_JOB_ID
|
||||||
|
mv $SCRATCH/ShallowWaterGPU/*.json ./output_saga/$NOW
|
||||||
|
mv $SCRATCH/ShallowWaterGPU/*.qdrep ./output_saga/$NOW
|
||||||
|
@ -1,12 +1,30 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
# one node: 1-4 GPUs
|
TIMESTAMP=$(date "+%Y-%m-%dT%H%M%S")
|
||||||
sbatch --nodes=1 --gpus-per-node=1 --ntasks-per-node=1 --export=ALL,NX=8192,NY=8192 saga_scaling_benchmark.job
|
|
||||||
sbatch --nodes=1 --gpus-per-node=2 --ntasks-per-node=2 --export=ALL,NX=8192,NY=4096 saga_scaling_benchmark.job
|
|
||||||
sbatch --nodes=1 --gpus-per-node=3 --ntasks-per-node=3 --export=ALL,NX=8192,NY=2731 saga_scaling_benchmark.job
|
|
||||||
sbatch --nodes=1 --gpus-per-node=4 --ntasks-per-node=4 --export=ALL,NX=8192,NY=2048 saga_scaling_benchmark.job
|
|
||||||
|
|
||||||
# 2-4 nodes: 1 GPUs per node
|
# one node: 1–4 GPUs
|
||||||
sbatch --nodes=2 --gpus-per-node=1 --ntasks-per-node=1 --export=ALL,NX=8192,NY=4096 saga_scaling_benchmark.job
|
sbatch --nodes=1 --gpus-per-node=1 --ntasks-per-node=1 --export=ALL,NX=20480,NY=20480,NOW=$TIMESTAMP saga_scaling_benchmark.job # 1 ranks
|
||||||
sbatch --nodes=3 --gpus-per-node=1 --ntasks-per-node=1 --export=ALL,NX=8192,NY=2731 saga_scaling_benchmark.job
|
sbatch --nodes=1 --gpus-per-node=2 --ntasks-per-node=2 --export=ALL,NX=20480,NY=10240,NOW=$TIMESTAMP saga_scaling_benchmark.job # 2 ranks
|
||||||
sbatch --nodes=4 --gpus-per-node=1 --ntasks-per-node=1 --export=ALL,NX=8192,NY=2048 saga_scaling_benchmark.job
|
sbatch --nodes=1 --gpus-per-node=3 --ntasks-per-node=3 --export=ALL,NX=20480,NY=6826,NOW=$TIMESTAMP saga_scaling_benchmark.job # 3 ranks
|
||||||
|
sbatch --nodes=1 --gpus-per-node=4 --ntasks-per-node=4 --export=ALL,NX=20480,NY=5120,NOW=$TIMESTAMP saga_scaling_benchmark.job # 4 ranks
|
||||||
|
|
||||||
|
# 4 nodes: 1–4 GPUs per node
|
||||||
|
sbatch --nodes=4 --gpus-per-node=1 --ntasks-per-node=1 --export=ALL,NX=20480,NY=5120,NOW=$TIMESTAMP saga_scaling_benchmark.job # 4 ranks
|
||||||
|
sbatch --nodes=4 --gpus-per-node=2 --ntasks-per-node=2 --export=ALL,NX=20480,NY=2560,NOW=$TIMESTAMP saga_scaling_benchmark.job # 8 ranks
|
||||||
|
sbatch --nodes=4 --gpus-per-node=3 --ntasks-per-node=3 --export=ALL,NX=20480,NY=1706,NOW=$TIMESTAMP saga_scaling_benchmark.job # 12 ranks
|
||||||
|
sbatch --nodes=4 --gpus-per-node=4 --ntasks-per-node=4 --export=ALL,NX=20480,NY=1280,NOW=$TIMESTAMP saga_scaling_benchmark.job # 16 ranks
|
||||||
|
|
||||||
|
# 4 nodes: 1–4 GPUs per node
|
||||||
|
sbatch --nodes=4 --gpus-per-node=1 --ntasks-per-node=1 --export=ALL,NX=40960,NY=10240,NOW=$TIMESTAMP saga_scaling_benchmark.job # 4 ranks
|
||||||
|
sbatch --nodes=4 --gpus-per-node=2 --ntasks-per-node=2 --export=ALL,NX=40960,NY=5120,NOW=$TIMESTAMP saga_scaling_benchmark.job # 8 ranks
|
||||||
|
sbatch --nodes=4 --gpus-per-node=3 --ntasks-per-node=3 --export=ALL,NX=40960,NY=3413,NOW=$TIMESTAMP saga_scaling_benchmark.job # 12 ranks
|
||||||
|
sbatch --nodes=4 --gpus-per-node=4 --ntasks-per-node=4 --export=ALL,NX=40960,NY=2560,NOW=$TIMESTAMP saga_scaling_benchmark.job # 16 ranks
|
||||||
|
|
||||||
|
## one node: 1–4 GPUs
|
||||||
|
#sbatch --nodes=1 --gpus-per-node=4 --ntasks-per-node=4 --export=ALL,NX=24576,NY=6144,NOW=$TIMESTAMP saga_scaling_benchmark.job # 4 ranks
|
||||||
|
#
|
||||||
|
## 4 nodes: 1–4 GPUs per node
|
||||||
|
#sbatch --nodes=4 --gpus-per-node=1 --ntasks-per-node=1 --export=ALL,NX=24576,NY=6144,NOW=$TIMESTAMP saga_scaling_benchmark.job # 4 ranks
|
||||||
|
#sbatch --nodes=4 --gpus-per-node=2 --ntasks-per-node=2 --export=ALL,NX=24576,NY=3072,NOW=$TIMESTAMP saga_scaling_benchmark.job # 8 ranks
|
||||||
|
#sbatch --nodes=4 --gpus-per-node=3 --ntasks-per-node=3 --export=ALL,NX=24576,NY=2048,NOW=$TIMESTAMP saga_scaling_benchmark.job # 12 ranks
|
||||||
|
#sbatch --nodes=4 --gpus-per-node=4 --ntasks-per-node=4 --export=ALL,NX=24576,NY=1536,NOW=$TIMESTAMP saga_scaling_benchmark.job # 16 ranks
|
||||||
|
25
saga_weak_scaling_benchmark.sh
Normal file
25
saga_weak_scaling_benchmark.sh
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
TIMESTAMP=$(date "+%Y-%m-%dT%H%M%S")
|
||||||
|
|
||||||
|
# one node: 1-4 GPUs
|
||||||
|
sbatch --nodes=1 --gpus-per-node=1 --ntasks-per-node=1 --export=ALL,NX=20480,NY=20480,NOW=$TIMESTAMP saga_scaling_benchmark.job # 1 ranks
|
||||||
|
sbatch --nodes=1 --gpus-per-node=2 --ntasks-per-node=2 --export=ALL,NX=20480,NY=20480,NOW=$TIMESTAMP saga_scaling_benchmark.job # 2 ranks
|
||||||
|
sbatch --nodes=1 --gpus-per-node=3 --ntasks-per-node=3 --export=ALL,NX=20480,NY=20480,NOW=$TIMESTAMP saga_scaling_benchmark.job # 3 ranks
|
||||||
|
sbatch --nodes=1 --gpus-per-node=4 --ntasks-per-node=4 --export=ALL,NX=20480,NY=20480,NOW=$TIMESTAMP saga_scaling_benchmark.job # 4 ranks
|
||||||
|
|
||||||
|
# 2-4 nodes: 1 GPUs per node
|
||||||
|
sbatch --nodes=2 --gpus-per-node=1 --ntasks-per-node=1 --export=ALL,NX=20480,NY=20480,NOW=$TIMESTAMP saga_scaling_benchmark.job # 2 ranks
|
||||||
|
sbatch --nodes=3 --gpus-per-node=1 --ntasks-per-node=1 --export=ALL,NX=20480,NY=20480,NOW=$TIMESTAMP saga_scaling_benchmark.job # 3 ranks
|
||||||
|
sbatch --nodes=4 --gpus-per-node=1 --ntasks-per-node=1 --export=ALL,NX=20480,NY=20480,NOW=$TIMESTAMP saga_scaling_benchmark.job # 4 ranks
|
||||||
|
|
||||||
|
## one node: 1-4 GPUs
|
||||||
|
#sbatch --nodes=1 --gpus-per-node=1 --ntasks-per-node=1 --export=ALL,NX=12288,NY=12288,NOW=$TIMESTAMP saga_scaling_benchmark.job # 1 ranks
|
||||||
|
#sbatch --nodes=1 --gpus-per-node=2 --ntasks-per-node=2 --export=ALL,NX=12288,NY=12288,NOW=$TIMESTAMP saga_scaling_benchmark.job # 2 ranks
|
||||||
|
#sbatch --nodes=1 --gpus-per-node=3 --ntasks-per-node=3 --export=ALL,NX=12288,NY=12288,NOW=$TIMESTAMP saga_scaling_benchmark.job # 3 ranks
|
||||||
|
#sbatch --nodes=1 --gpus-per-node=4 --ntasks-per-node=4 --export=ALL,NX=12288,NY=12288,NOW=$TIMESTAMP saga_scaling_benchmark.job # 4 ranks
|
||||||
|
|
||||||
|
## 2-4 nodes: 1 GPUs per node
|
||||||
|
#sbatch --nodes=2 --gpus-per-node=1 --ntasks-per-node=1 --export=ALL,NX=12288,NY=12288,NOW=$TIMESTAMP saga_scaling_benchmark.job # 2 ranks
|
||||||
|
#sbatch --nodes=3 --gpus-per-node=1 --ntasks-per-node=1 --export=ALL,NX=12288,NY=12288,NOW=$TIMESTAMP saga_scaling_benchmark.job # 3 ranks
|
||||||
|
#sbatch --nodes=4 --gpus-per-node=1 --ntasks-per-node=1 --export=ALL,NX=12288,NY=12288,NOW=$TIMESTAMP saga_scaling_benchmark.job # 4 ranks
|
Loading…
x
Reference in New Issue
Block a user