aboutsummaryrefslogtreecommitdiff
path: root/Tools/BatchScripts
diff options
context:
space:
mode:
authorGravatar Axel Huebl <axel.huebl@plasma.ninja> 2020-09-25 08:26:38 -0700
committerGravatar GitHub <noreply@github.com> 2020-09-25 08:26:38 -0700
commit8b5ee89c3002ce94c3b71c09b5e1c43cde51f89f (patch)
tree6a54c7091504bab617117ff5f8bf222f07576e0d /Tools/BatchScripts
parent20d2d2df343bc672316deb76c1088fb44cc0cf93 (diff)
downloadWarpX-8b5ee89c3002ce94c3b71c09b5e1c43cde51f89f.tar.gz
WarpX-8b5ee89c3002ce94c3b71c09b5e1c43cde51f89f.tar.zst
WarpX-8b5ee89c3002ce94c3b71c09b5e1c43cde51f89f.zip
Doc: Cori MPI Thread Multiple (#1376)
Thread multiple support is not the default on Cori. One needs to set this with an environment variable.
Diffstat (limited to 'Tools/BatchScripts')
-rw-r--r--Tools/BatchScripts/batch_cori.sh3
-rw-r--r--Tools/BatchScripts/batch_cori_haswell.sh3
2 files changed, 6 insertions, 0 deletions
diff --git a/Tools/BatchScripts/batch_cori.sh b/Tools/BatchScripts/batch_cori.sh
index ee2658451..a827ad779 100644
--- a/Tools/BatchScripts/batch_cori.sh
+++ b/Tools/BatchScripts/batch_cori.sh
@@ -37,4 +37,7 @@ export WARPX_NTHREADS_PER_NODE=$(( ${WARPX_HYPERTHREAD_LEVEL} * ${CORI_NCORES_PE
export OMP_NUM_THREADS=$(( ${WARPX_NTHREADS_PER_NODE} / ${WARPX_NMPI_PER_NODE} ))
export WARPX_THREAD_COUNT=$(( ${CORI_NHYPERTHREADS_MAX} / ${WARPX_NMPI_PER_NODE} ))
+# for async_io support: (optional)
+export MPICH_MAX_THREAD_SAFETY=multiple
+
srun --cpu_bind=cores -n $(( ${SLURM_JOB_NUM_NODES} * ${WARPX_NMPI_PER_NODE} )) -c ${WARPX_THREAD_COUNT} <path/to/executable> <input file>
diff --git a/Tools/BatchScripts/batch_cori_haswell.sh b/Tools/BatchScripts/batch_cori_haswell.sh
index a1a21defc..0f3c66b49 100644
--- a/Tools/BatchScripts/batch_cori_haswell.sh
+++ b/Tools/BatchScripts/batch_cori_haswell.sh
@@ -31,6 +31,9 @@ export OMP_PROC_BIND=spread
export OMP_PLACES=threads
export OMP_NUM_THREADS=16
+# for async_io support: (optional)
+export MPICH_MAX_THREAD_SAFETY=multiple
+
EXE="<path/to/executable>"
srun --cpu_bind=cores -n $(( ${SLURM_JOB_NUM_NODES} * ${WARPX_NMPI_PER_NODE} )) ${EXE} <input file>