summaryrefslogtreecommitdiffstats
path: root/src/H5B.c
diff options
context:
space:
mode:
authorRobert Kim Yates <rkyates@llnl.gov>1998-08-28 23:37:58 (GMT)
committerRobert Kim Yates <rkyates@llnl.gov>1998-08-28 23:37:58 (GMT)
commit1373661a78b7a6d3c7526cd8f80b9ba3460a1d74 (patch)
tree83bd2e2ef70d44c57fa8fd53453aea99067ab10a /src/H5B.c
parent96c2b5fec405a2dd4a63b7482a431dfc984523df (diff)
downloadhdf5-1373661a78b7a6d3c7526cd8f80b9ba3460a1d74.zip
hdf5-1373661a78b7a6d3c7526cd8f80b9ba3460a1d74.tar.gz
hdf5-1373661a78b7a6d3c7526cd8f80b9ba3460a1d74.tar.bz2
[svn-r630] Added code to eliminate redundant writes of metadata,
so only proc 0 writes it to disk. The elimination is activated only when the environment variable HDF5_MPI_1_METAWRITE is nonzero; otherwise all processes that opened the file will write the metadata to disk.
Diffstat (limited to 'src/H5B.c')
-rw-r--r--src/H5B.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/H5B.c b/src/H5B.c
index 7491ed2..aeb0879 100644
--- a/src/H5B.c
+++ b/src/H5B.c
@@ -383,6 +383,7 @@ H5B_load(H5F_t *f, const haddr_t *addr, const void *_type, void *udata)
* Jun 23 1997
*
* Modifications:
+ * rky 980828 Only p0 writes metadata to disk.
*
*-------------------------------------------------------------------------
*/
@@ -453,6 +454,9 @@ H5B_flush(H5F_t *f, hbool_t destroy, const haddr_t *addr, H5B_t *bt)
* bother writing data for the child entries that don't exist or
* for the final unchanged children.
*/
+#ifdef HAVE_PARALLEL
+ H5F_mpio_tas_allsame( f->shared->lf, TRUE ); /* only p0 will write */
+#endif /* HAVE_PARALLEL */
if (H5F_block_write(f, addr, (hsize_t)size, H5D_XFER_DFLT,
bt->page) < 0) {
HRETURN_ERROR(H5E_BTREE, H5E_CANTFLUSH, FAIL,