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

kraftche at cae.wisc.edu kraftche at cae.wisc.edu
Thu Jan 6 14:55:51 CST 2011


Author: kraftche
Date: 2011-01-06 14:55:51 -0600 (Thu, 06 Jan 2011)
New Revision: 4422

Modified:
   MOAB/trunk/configure.ac
   MOAB/trunk/src/io/ReadHDF5.cpp
   MOAB/trunk/src/io/mhdf/src/file.c
Log:
always try to do lockless IO for HDF5 on BlueGene

Modified: MOAB/trunk/configure.ac
===================================================================
--- MOAB/trunk/configure.ac	2011-01-06 17:26:13 UTC (rev 4421)
+++ MOAB/trunk/configure.ac	2011-01-06 20:55:51 UTC (rev 4422)
@@ -40,13 +40,13 @@
 fi
 ])
 
-
 # Check if platform is BlueGene
 AC_MSG_CHECKING([if platform is IBM BlueGene])
-FATHOM_TRY_COMPILER_DEFINE([__bg__],[BLUEGENE=yes],[BLUEGENE=no])
-AC_MSG_RESULT([$BLUEGENE])
+FATHOM_TRY_COMPILER_DEFINE([__bg__],
+  [AM_CPPFLAGS="$AM_CPPFLAGS -DBLUEGENE"
+   AC_MSG_RESULT([yes])],
+  [AC_MSG_RESULT([no])])
 
-
 AC_CHECK_PROG([ZCAT],[gunzip],[gunzip -c],[])
 AC_CHECK_PROG([ZCAT],[gzip],[gzip -cd],[])
 AC_CHECK_PROG([ZCAT],[zcat],[zcat],[])

Modified: MOAB/trunk/src/io/ReadHDF5.cpp
===================================================================
--- MOAB/trunk/src/io/ReadHDF5.cpp	2011-01-06 17:26:13 UTC (rev 4421)
+++ MOAB/trunk/src/io/ReadHDF5.cpp	2011-01-06 20:55:51 UTC (rev 4422)
@@ -56,8 +56,19 @@
 
 namespace moab {
 
+/* If defined, coordinates are read in blocked format (all X values before
+ * Y values before Z values.)  If undefined, then all coordinates for a 
+ * given vertex are read at the same time.
+ */
 #undef BLOCKED_COORD_IO
 
+/* If defined, file is opened first by root node only to read summary,
+ * file is the closed and the summary is broadcast to all nodes, after 
+ * which all nodes open file in parallel to read data.  If undefined,
+ * file is opened once in parallel and all nodes read summary data.
+ */
+#undef BCAST_SUMMARY
+
 #define READ_HDF5_BUFFER_SIZE (128*1024*1024)
 
 #define assert_range( PTR, CNT ) \
@@ -274,6 +285,15 @@
     return error(MB_MEMORY_ALLOCATION_FAILED);
   
   if (use_mpio || nativeParallel) {


More information about the moab-dev mailing list