diff options
author | 2021-11-15 13:45:02 -0800 | |
---|---|---|
committer | 2021-11-15 21:45:02 +0000 | |
commit | 0d5b38f3195c02da0cf4ab4f0e815d33c8fe533e (patch) | |
tree | 622a718560f4157b27e586345738efd30483422e /Tools/BatchScripts | |
parent | ed9a8edc1e6c07b7f6942c0c9b86ab8d2fda6690 (diff) | |
download | WarpX-0d5b38f3195c02da0cf4ab4f0e815d33c8fe533e.tar.gz WarpX-0d5b38f3195c02da0cf4ab4f0e815d33c8fe533e.tar.zst WarpX-0d5b38f3195c02da0cf4ab4f0e815d33c8fe533e.zip |
I/O performance hints for Summit (#2495)
* Fix conflict with upstream
* Apply suggestions from code review
* Remove space in the end of lines
* Include suggestions from PR review
* Generalize ROMIO Hints in Batch Scripts
* Fix Comment
* Fix Comment
* Remove duplication
* Formatting
Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja>
Diffstat (limited to 'Tools/BatchScripts')
-rw-r--r-- | Tools/BatchScripts/batch_summit.sh | 17 | ||||
-rw-r--r-- | Tools/BatchScripts/batch_summit_power9.sh | 15 |
2 files changed, 31 insertions, 1 deletions
diff --git a/Tools/BatchScripts/batch_summit.sh b/Tools/BatchScripts/batch_summit.sh index 0397c7e6a..5064ab6db 100644 --- a/Tools/BatchScripts/batch_summit.sh +++ b/Tools/BatchScripts/batch_summit.sh @@ -31,7 +31,22 @@ export OMPI_MCA_coll_ibm_skip_barrier=true #export FABRIC_IFACE=mlx5_0 # ADIOS SST: select interface (1 NIC on Summit) #export FI_OFI_RXM_USE_SRX=1 # libfabric: use shared receive context from MSG provider -# OpenMP: one thread per MPI rank and GPU +# ROMIO has a hint for GPFS named IBM_largeblock_io which optimizes I/O with operations on large blocks +export IBM_largeblock_io=true + +# MPI-I/O: ROMIO hints for parallel HDF5 performance +export OMPI_MCA_io=romio321 +export ROMIO_HINTS=./romio-hints +# number of hosts: unique node names minus batch node +NUM_HOSTS=$(( $(echo $LSB_HOSTS | tr ' ' '\n' | uniq | wc -l) - 1 )) +cat > romio-hints << EOL + romio_cb_write enable + romio_ds_write enable + cb_buffer_size 16777216 + cb_nodes ${NUM_HOSTS} + EOL + +# OpenMP: 1 thread per MPI rank export OMP_NUM_THREADS=1 # run WarpX diff --git a/Tools/BatchScripts/batch_summit_power9.sh b/Tools/BatchScripts/batch_summit_power9.sh index d53b49deb..18131aaea 100644 --- a/Tools/BatchScripts/batch_summit_power9.sh +++ b/Tools/BatchScripts/batch_summit_power9.sh @@ -30,6 +30,21 @@ export OMPI_MCA_coll_ibm_skip_barrier=true #export FABRIC_IFACE=mlx5_0 # ADIOS SST: select interface (1 NIC on Summit) #export FI_OFI_RXM_USE_SRX=1 # libfabric: use shared receive context from MSG provider +# ROMIO has a hint for GPFS named IBM_largeblock_io which optimizes I/O with operations on large blocks +export IBM_largeblock_io=true + +# MPI-I/O: ROMIO hints for parallel HDF5 performance +export OMPI_MCA_io=romio321 +export ROMIO_HINTS=./romio-hints +# number of hosts: unique node names minus batch node +NUM_HOSTS=$(( $(echo $LSB_HOSTS | tr ' ' '\n' | uniq | wc -l) - 1 )) +cat > romio-hints << EOL + romio_cb_write enable + romio_ds_write enable + cb_buffer_size 16777216 + cb_nodes ${NUM_HOSTS} + EOL + # OpenMP: 21 threads per MPI rank export OMP_NUM_THREADS=21 |