diff options
author | MuQun Yang <ymuqun@hdfgroup.org> | 2005-07-12 19:16:39 (GMT) |
---|---|---|
committer | MuQun Yang <ymuqun@hdfgroup.org> | 2005-07-12 19:16:39 (GMT) |
commit | 0f1c1ae4b3c6ac7fad11b4c949f9f4c67cd2989a (patch) | |
tree | c8543226809b2d3f3c804a05a2060ceb43571f8f | |
parent | bee5c236e56815d5d53dcb96f9cd3cbb64b4713a (diff) | |
download | hdf5-0f1c1ae4b3c6ac7fad11b4c949f9f4c67cd2989a.zip hdf5-0f1c1ae4b3c6ac7fad11b4c949f9f4c67cd2989a.tar.gz hdf5-0f1c1ae4b3c6ac7fad11b4c949f9f4c67cd2989a.tar.bz2 |
[svn-r11066] Purpose:
Updating phase 2 work of collective IO
Description:
When the size is bigger than some value for MPI derived data type, mpich 1.2.5 and lower
version won't work any more, so in the configuration file, we will check the version number
and switch from collective IO to independent IO by turning off complex derived datatype.
Solution:
Platforms tested:
linux 2.4, AIX 5.1, Linux 2.4 IA64 and IRIX 6.5
Misc. update:
-rw-r--r-- | config/ia64-linux-gnu | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/config/ia64-linux-gnu b/config/ia64-linux-gnu index 11cfacb..f22bf21 100644 --- a/config/ia64-linux-gnu +++ b/config/ia64-linux-gnu @@ -137,5 +137,19 @@ case $CXX_BASENAME in PROFILE_CPPFLAGS= ;; esac - +# We know that for mpich 1.2.5 and previous version, complicated derived datatype is +# supported, we need to set the macro to hdf5_mpi_complex_derived_datatype_works to no. +# Notice that this fix will only work if the compiler name is mpicc and mpi package is +# mpich 1.x.x. +if [ -z "$hdf5_mpi_complex_derived_datatype_works" -a $CC_BASENAME = mpicc ]; then + ccversion=`$CC -v 2>&1 | sed -e 's/.*for //p'` + ccversion1=`echo $ccversion | cut -f1 -d.` + ccversion2=`echo $ccversion | cut -f2 -d.` + ccversiontemp=`echo $ccversion | cut -f3 -d.` + ccversion3=`echo $ccversiontemp | cut -c1` + ccversionval=`expr $ccversion1 \* 100 + $ccversion2 \* 10 + $ccversion3` + if [ $ccversionval -lt 126 ]; then + hdf5_mpi_complex_derived_datatype_works='no' + fi +fi |