[svn-r11065] 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:
This commit is contained in:
MuQun Yang 2005-07-12 14:14:18 -05:00
parent b73a072f69
commit bee5c236e5

View File

@ -112,3 +112,20 @@ if test -z "$CXX"; then
CXX=g++
CXX_BASENAME=g++
fi
# 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