[MOAB-dev] r4647 - in MOAB/trunk: . src/io

kraftche at cae.wisc.edu kraftche at cae.wisc.edu
Fri Mar 25 11:38:29 CDT 2011


Author: kraftche
Date: 2011-03-25 11:38:29 -0500 (Fri, 25 Mar 2011)
New Revision: 4647

Modified:
   MOAB/trunk/configure.ac
   MOAB/trunk/src/io/ReadHDF5.cpp
Log:
and configure- and run-time checks for H5_MPI_COMPLEX_DERIVED_DATATYPE_WORKS

Modified: MOAB/trunk/configure.ac
===================================================================
--- MOAB/trunk/configure.ac	2011-03-25 16:04:47 UTC (rev 4646)
+++ MOAB/trunk/configure.ac	2011-03-25 16:38:29 UTC (rev 4647)
@@ -340,6 +340,7 @@
 AC_SUBST(HDF5_LIBS)
 
 WARN_PARALLEL_HDF5=no
+WARN_PARALLEL_HDF5_NO_COMPLEX=no
 HAVE_HDF5_PARALLEL=no
 if test "xno" != "x$HAVE_HDF5"; then
   if test "xno" != "x$WITH_MPI"; then
@@ -355,6 +356,15 @@
 AM_CONDITIONAL(PARALLEL_HDF5, [test "xno" != "x$HAVE_HDF5_PARALLEL"])
 if test "xno" != "x$HAVE_HDF5_PARALLEL"; then
   AM_CPPFLAGS="$AM_CPPFLAGS -DHDF5_PARALLEL"
+  
+  AC_MSG_CHECKING([for H5_MPI_COMPLEX_DERIVED_DATATYPE_WORKS])
+  old_CPPFLAGS="$CPPFLAGS"
+  CPPFLAGS="$CPPFLAGS $HDF5_CPPFLAGS"
+  AC_PREPROC_IFELSE([AC_LANG_PROGRAM([#include <h5pubconf.h>],[
+#ifndef H5_MPI_COMPLEX_DERIVED_DATATYPE_WORKS
+  choke me
+#endif])],[AC_MSG_RESULT(yes)],[AC_MSG_RESULT(no); WARN_PARALLEL_HDF5_NO_COMPLEX=yes])
+  CPPFLAGS="$old_CPPFLAGS"
 fi
 
 ################################################################################
@@ -1184,3 +1194,14 @@
 *************************************************************************])
 fi
 
+if test "x$WARN_PARALLEL_HDF5_NO_COMPLEX" = "xyes"; then
+  AC_MSG_WARN([
+*************************************************************************
+*     Your parallel HDF5 library is configured without 
+*     H5_MPI_COMPLEX_DERIVED_DATATYPE_WORKS .  For the types of IO
+*     patterns MOAB typically does this will result in degrading
+*     collective IO calls to independent IO, which may have a very
+*     significant impact on IO performance.
+*************************************************************************])
+fi
+

Modified: MOAB/trunk/src/io/ReadHDF5.cpp
===================================================================
--- MOAB/trunk/src/io/ReadHDF5.cpp	2011-03-25 16:04:47 UTC (rev 4646)
+++ MOAB/trunk/src/io/ReadHDF5.cpp	2011-03-25 16:38:29 UTC (rev 4647)
@@ -364,6 +364,10 @@
     dbgOut.set_rank(rank);
     mpiComm = new MPI_Comm(myPcomm->proc_config().proc_comm());


More information about the moab-dev mailing list