diff options
author | Albert Cheng <acheng@hdfgroup.org> | 2010-06-11 21:26:55 (GMT) |
---|---|---|
committer | Albert Cheng <acheng@hdfgroup.org> | 2010-06-11 21:26:55 (GMT) |
commit | cfcbb212c85a7a098928ad8de20772be082aaa67 (patch) | |
tree | 0a9c8ff7d5a72557e912d4bdd9f822154696066e | |
parent | 63ec41868180edbbc558a79e20355a85f14dc7e3 (diff) | |
download | hdf5-cfcbb212c85a7a098928ad8de20772be082aaa67.zip hdf5-cfcbb212c85a7a098928ad8de20772be082aaa67.tar.gz hdf5-cfcbb212c85a7a098928ad8de20772be082aaa67.tar.bz2 |
[svn-r18991] Bug Fix: (ID 1921)
PHDF5 changed to use "mpiexec", instead of mpirun, as the default MPI
applications startup command as defined in the MPI-2 definition, section
4.1. Note that only mpich related (using mpicc command) definitions are
changed to mpiexec. Other favors like hcc, AIX, champion, are not changed
since I don't have a way to verify them yet.
Tested:
jam and amani, using both current and new mpich.
Did not h5committested since this affects PHDF5 configure only.
-rwxr-xr-x | configure | 30 | ||||
-rw-r--r-- | configure.in | 40 | ||||
-rw-r--r-- | release_docs/RELEASE.txt | 4 |
3 files changed, 38 insertions, 36 deletions
@@ -1,5 +1,5 @@ #! /bin/sh -# From configure.in Id: configure.in 18841 2010-05-18 15:26:01Z mamcgree . +# From configure.in Id: configure.in 18979 2010-06-04 19:22:09Z lrknox . # Guess values for system-dependent variables and create Makefiles. # Generated by GNU Autoconf 2.65 for HDF5 1.8.5-snap0. # @@ -7408,8 +7408,8 @@ fi case "$CC_BASENAME" in mpicc) PARALLEL=mpicc - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for mpirun" >&5 -$as_echo_n "checking for mpirun... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for mpiexec" >&5 +$as_echo_n "checking for mpiexec... " >&6; } cmd="`echo $CC | cut -f1 -d' '`" if (echo $cmd | grep / >/dev/null); then @@ -7422,13 +7422,13 @@ $as_echo_n "checking for mpirun... " >&6; } done fi - if test -x $path/mpirun; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $path/mpirun" >&5 -$as_echo "$path/mpirun" >&6; } + if test -x $path/mpiexec; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $path/mpiexec" >&5 +$as_echo "$path/mpiexec" >&6; } RUNSERIAL="${RUNSERIAL:-none}" if test -z "$RUNPARALLEL"; then - RUNPARALLEL="$path/mpirun -np \$\${NPROCS:=3}" + RUNPARALLEL="$path/mpiexec -n \$\${NPROCS:=3}" fi else { $as_echo "$as_me:${as_lineno-$LINENO}: result: none" >&5 @@ -7507,8 +7507,8 @@ ac_compiler_gnu=$ac_cv_fc_compiler_gnu case "$FC" in *mpif90*) PARALLEL=mpif90 - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for mpirun" >&5 -$as_echo_n "checking for mpirun... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for mpiexec" >&5 +$as_echo_n "checking for mpiexec... " >&6; } cmd=`echo $FC |cut -f1 -d' '` if (echo $cmd |grep / >/dev/null); then @@ -7521,13 +7521,13 @@ $as_echo_n "checking for mpirun... " >&6; } done fi - if test -x $path/mpirun; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $path/mpirun" >&5 -$as_echo "$path/mpirun" >&6; } + if test -x $path/mpiexec; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $path/mpiexec" >&5 +$as_echo "$path/mpiexec" >&6; } RUNSERIAL="${RUNSERIAL:-none}" if test -z "$RUNPARALLEL"; then - RUNPARALLEL="$path/mpirun -np \$\${NPROCS:=2}" + RUNPARALLEL="$path/mpiexec -n \$\${NPROCS:=2}" fi else { $as_echo "$as_me:${as_lineno-$LINENO}: result: none" >&5 @@ -21518,7 +21518,7 @@ case "$host_cpu-$host_vendor-$host_os" in AM_CPPFLAGS="-D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE $AM_CPPFLAGS" fi - H5_CPPFLAGS="-D_POSIX_SOURCE $H5_CPPFLAGS" + H5_CPPFLAGS="-D_POSIX_SOURCE $H5_CPPFLAGS" AM_CPPFLAGS="-D_BSD_SOURCE $AM_CPPFLAGS" ;; @@ -26419,7 +26419,7 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu fi if test "X$PARALLEL" = "Xyes" -a -z "$RUNPARALLEL"; then - RUNPARALLEL="mpirun -np \$\${NPROCS:=3}" + RUNPARALLEL="mpiexec -n \$\${NPROCS:=3}" fi ;; diff --git a/configure.in b/configure.in index 8c6f539..681d7b2 100644 --- a/configure.in +++ b/configure.in @@ -683,7 +683,7 @@ dnl RUNSERIAL -- This is a command which will be prepended to dnl the executable name to run the executable using dnl a single process. For serial versions of the dnl library this will normally be empty. For parallel -dnl versions it might be something like `mpirun -np 1'. +dnl versions it might be something like `mpiexec -n 1'. dnl The value of this variable is substituted in *.in dnl files. dnl @@ -692,7 +692,7 @@ dnl the executable name to run the executable on dnl multiple processors. For the serial library the dnl value will normally be the empty string. For dnl parallel library it should be something like -dnl `mpi -np $$NPROCS' where NPROCS will eventually +dnl `mpiexec -n $$NPROCS' where NPROCS will eventually dnl contain the number of processors on which to run dnl the executable (the double dollarsigns are to dnl protect the expansion until make executes the @@ -708,15 +708,15 @@ dnl ---------------------------------------------------------------------- dnl If the compiler is obviously a parallel compiler then we're building dnl a parallel version of hdf5 and should define HAVE_PARALLEL. Furthermore, dnl the name of the compiler might tell us how to run the resulting -dnl executable. For `mpicc' the executable should be run with `mpirun' from +dnl executable. For `mpicc' the executable should be run with `mpiexec' from dnl the same directory as mpicc if it exists. dnl case "$CC_BASENAME" in mpicc) - dnl The mpich compiler. Use mpirun from the same directory if it + dnl The mpich compiler. Use mpiexec from the same directory if it dnl exists. PARALLEL=mpicc - AC_MSG_CHECKING([for mpirun]) + AC_MSG_CHECKING([for mpiexec]) dnl Find the path where mpicc is located. cmd="`echo $CC | cut -f1 -d' '`" @@ -730,13 +730,13 @@ case "$CC_BASENAME" in done fi - dnl Is there an mpirun at that path? - if test -x $path/mpirun; then - AC_MSG_RESULT([$path/mpirun]) + dnl Is there an mpiexec at that path? + if test -x $path/mpiexec; then + AC_MSG_RESULT([$path/mpiexec]) RUNSERIAL="${RUNSERIAL:-none}" if test -z "$RUNPARALLEL"; then - RUNPARALLEL="$path/mpirun -np \$\${NPROCS:=3}" + RUNPARALLEL="$path/mpiexec -n \$\${NPROCS:=3}" fi else AC_MSG_RESULT([none]) @@ -813,7 +813,7 @@ dnl If the Fortran compiler is obviously a parallel compiler then we're dnl building a parallel version of hdf5 and should define HAVE_PARALLEL. dnl Furthermore, the name of the compiler might tell us how to run the dnl resulting executable. For `mpif90' the executable should be run with -dnl `mpirun' from the same directory as mpif90 if it exists. +dnl `mpiexec' from the same directory as mpif90 if it exists. dnl if test "X$HDF_FORTRAN" = "Xyes"; then dnl Change to the Fortran 90 language @@ -821,10 +821,10 @@ if test "X$HDF_FORTRAN" = "Xyes"; then case "$FC" in *mpif90*) - dnl The Fortran mpich compiler. Use mpirun from the same directory + dnl The Fortran mpich compiler. Use mpiexec from the same directory dnl if it exists. PARALLEL=mpif90 - AC_MSG_CHECKING([for mpirun]) + AC_MSG_CHECKING([for mpiexec]) dnl Find the path where mpif90 is located. cmd=`echo $FC |cut -f1 -d' '` @@ -838,13 +838,13 @@ if test "X$HDF_FORTRAN" = "Xyes"; then done fi - dnl Is there an mpirun at that path? - if test -x $path/mpirun; then - AC_MSG_RESULT([$path/mpirun]) + dnl Is there an mpiexec at that path? + if test -x $path/mpiexec; then + AC_MSG_RESULT([$path/mpiexec]) RUNSERIAL="${RUNSERIAL:-none}" if test -z "$RUNPARALLEL"; then - RUNPARALLEL="$path/mpirun -np \$\${NPROCS:=2}" + RUNPARALLEL="$path/mpiexec -n \$\${NPROCS:=2}" fi else AC_MSG_RESULT([none]) @@ -2633,9 +2633,9 @@ case "X-$enable_parallel" in AC_LANG_POP(Fortran) fi - dnl Set RUNPARALLEL to mpirun if not set yet. + dnl Set RUNPARALLEL to mpiexec if not set yet. dnl Check for building on Cray if RUNPARALLEL is not yet set by checking - dnl for 'aprun' command (which is the parallel job launcher, like mpirun). + dnl for 'aprun' command (which is the parallel job launcher, like mpiexec). if test "X$PARALLEL" = "Xyes" -a -z "$RUNPARALLEL"; then dnl Find the path where aprun is located. for path in `echo $PATH | ${TR} ":" " "`; do @@ -2646,9 +2646,9 @@ case "X-$enable_parallel" in done fi - dnl Set RUNPARALLEL to mpirun if not set yet. + dnl Set RUNPARALLEL to mpiexec if not set yet. if test "X$PARALLEL" = "Xyes" -a -z "$RUNPARALLEL"; then - RUNPARALLEL="mpirun -np \$\${NPROCS:=3}" + RUNPARALLEL="mpiexec -n \$\${NPROCS:=3}" fi ;; diff --git a/release_docs/RELEASE.txt b/release_docs/RELEASE.txt index 7b156a5..226de84 100644 --- a/release_docs/RELEASE.txt +++ b/release_docs/RELEASE.txt @@ -97,7 +97,9 @@ Bug Fixes since HDF5-1.8.5 Configuration ------------- - - None MAM 2010/05/18 + - PHDF5 changed to use "mpiexec", instead of mpirun, as the default MPI + applications startup command as defined in the MPI-2 definition, section + 4.1. (AKC - 2010/6/11 - Bug 1921) Library ------- |