summaryrefslogtreecommitdiffstats
path: root/release_docs/INSTALL_parallel
diff options
context:
space:
mode:
authorDana Robinson <derobins@hdfgroup.org>2018-12-20 11:03:16 (GMT)
committerDana Robinson <derobins@hdfgroup.org>2018-12-20 11:03:16 (GMT)
commitfe1a5b4279bbbf705c6d3b3886ffe2a963bd07ec (patch)
treea482951f2d94a0f3d4e85b65791f73c0493874af /release_docs/INSTALL_parallel
parent34c0328c4d44a26916ebe0756ad5d74ac3c1dec8 (diff)
downloadhdf5-fe1a5b4279bbbf705c6d3b3886ffe2a963bd07ec.zip
hdf5-fe1a5b4279bbbf705c6d3b3886ffe2a963bd07ec.tar.gz
hdf5-fe1a5b4279bbbf705c6d3b3886ffe2a963bd07ec.tar.bz2
Added a shell script so we can run the parallel flush test
on OpenMPI.
Diffstat (limited to 'release_docs/INSTALL_parallel')
-rw-r--r--release_docs/INSTALL_parallel17
1 files changed, 13 insertions, 4 deletions
diff --git a/release_docs/INSTALL_parallel b/release_docs/INSTALL_parallel
index f32fffc..1bf1dd4 100644
--- a/release_docs/INSTALL_parallel
+++ b/release_docs/INSTALL_parallel
@@ -100,9 +100,9 @@ qsub -I -q debug -l mppwidth=8
mkdir build-hdf5; cd build-hdf5/
- configure HDF5:
- RUNSERIAL="aprun -q -n 1" RUNPARALLEL="aprun -q -n 6" FC=ftn CC=cc /path/to/source/configure --enable-fortran --enable-parallel --disable-shared
+ RUNSERIAL="aprun -q -n 1" RUNPARALLEL="aprun -q -n 6" RUNPARALLELSCRIPT="aprun -q -n 6" FC=ftn CC=cc /path/to/source/configure --enable-fortran --enable-parallel --disable-shared
- RUNSERIAL and RUNPARALLEL tells the library how it should launch programs that are part of the build procedure.
+ RUNSERIAL, RUNPARALLEL, and RUNPARALLELSCRIPT tell the library how it should launch programs that are part of the build procedure.
- Compile HDF5:
gmake
@@ -155,12 +155,21 @@ to run a parallel application on one processor and on many processors. If the
compiler is `mpicc' and the user hasn't specified values for RUNSERIAL and
RUNPARALLEL then configure chooses `mpiexec' from the same directory as `mpicc':
- RUNSERIAL: /usr/local/mpi/bin/mpiexec -np 1
- RUNPARALLEL: /usr/local/mpi/bin/mpiexec -np $${NPROCS:=6}
+ RUNSERIAL: mpiexec -n 1
+ RUNPARALLEL: mpiexec -n $${NPROCS:=6}
The `$${NPROCS:=6}' will be substituted with the value of the NPROCS
environment variable at the time `make check' is run (or the value 6).
+RUNPARALLELSCRIPT is identical to RUNPARALLEL but is used in parallel shell
+scripts and lacks the environment variable protection.
+
+ RUNPARALLELSCRIPT: mpiexec -n ${NPROCS:=6}
+
+Note that some MPI implementations (e.g. OpenMPI 4.0) disallow oversubscribing
+nodes by default so you'll have to either set NPROCS equal to the number of
+processors available (or fewer) or redefine RUNPARALLEL(SCRIPT) with appropriate
+flag(s) (--oversubscribe in OpenMPI).
4. Parallel test suite
----------------------