diff options
author | Quincey Koziol <koziol@hdfgroup.org> | 2003-07-11 18:01:05 (GMT) |
---|---|---|
committer | Quincey Koziol <koziol@hdfgroup.org> | 2003-07-11 18:01:05 (GMT) |
commit | 2c92c3ca18ca65ee0bf1e02235ba668808d39030 (patch) | |
tree | f599204e32d78623d7ca8eddb630f7ca8f9c5f45 /src/H5Fistore.c | |
parent | 9f171c6addb7a28f920760d4e74948fdbc8a0553 (diff) | |
download | hdf5-2c92c3ca18ca65ee0bf1e02235ba668808d39030.zip hdf5-2c92c3ca18ca65ee0bf1e02235ba668808d39030.tar.gz hdf5-2c92c3ca18ca65ee0bf1e02235ba668808d39030.tar.bz2 |
[svn-r7210] Purpose:
Refactoring code
Description:
Refactored "IS_H5FD_MPIO || IS_H5FD_MPIPOSIX || IS_H5FD_FPHDF5" combination
of macros in many places into single IS_H5FD_MPI macro, which has the same
definition, but should be easier to maintain.
Platforms tested:
FreeBSD 4.8 (sleipnir)
h5committest
Diffstat (limited to 'src/H5Fistore.c')
-rw-r--r-- | src/H5Fistore.c | 16 |
1 files changed, 5 insertions, 11 deletions
diff --git a/src/H5Fistore.c b/src/H5Fistore.c index 06e5d70..d5c2855 100644 --- a/src/H5Fistore.c +++ b/src/H5Fistore.c @@ -52,6 +52,7 @@ #include "H5Dprivate.h" /* Datasets */ #include "H5Eprivate.h" /* Error handling */ #include "H5Fpkg.h" /* Files */ +#include "H5FDprivate.h" /* File drivers */ #include "H5FLprivate.h" /* Free Lists */ #include "H5Iprivate.h" /* IDs */ #include "H5MFprivate.h" /* File space management */ @@ -61,11 +62,6 @@ #include "H5Sprivate.h" /* Dataspaces */ #include "H5Vprivate.h" /* Vector and array functions */ -/* MPIO, MPIPOSIX, & FPHDF5 drivers needed for special checks */ -#include "H5FDfphdf5.h" -#include "H5FDmpio.h" -#include "H5FDmpiposix.h" - /* * Feature: If this constant is defined then every cache preemption and load * causes a character to be printed on the standard error stream: @@ -1897,15 +1893,13 @@ HDfprintf(stderr,"%s: mem_offset_arr[%Zu]=%Hu\n",FUNC,*mem_curr_seq,mem_offset_a * for the chunk has been defined, then don't load the chunk into the * cache, just write the data to it directly. * - * If MPIO, MPIPOSIX, or FPHDF5 is used, must bypass the + * If MPI based VFD is used, must bypass the * chunk-cache scheme because other MPI processes could be * writing to other elements in the same chunk. Do a direct * write-through of only the elements requested. */ - if ((chunk_size>f->shared->rdcc_nbytes && pline.nfilters==0 && - chunk_addr!=HADDR_UNDEF) - || ((IS_H5FD_MPIO(f) ||IS_H5FD_MPIPOSIX(f) || IS_H5FD_FPHDF5(f)) && - (H5F_ACC_RDWR & f->shared->flags))) { + if ((chunk_size>f->shared->rdcc_nbytes && pline.nfilters==0 && chunk_addr!=HADDR_UNDEF) + || (IS_H5FD_MPI(f) && (H5F_ACC_RDWR & f->shared->flags))) { #ifdef H5_HAVE_PARALLEL /* Additional sanity check when operating in parallel */ if (chunk_addr==HADDR_UNDEF || pline.nfilters>0) @@ -2345,7 +2339,7 @@ H5F_istore_allocate(H5F_t *f, hid_t dxpl_id, const H5O_layout_t *layout, #ifdef H5_HAVE_PARALLEL /* Check if this file is accessed with an MPI-capable file driver */ if(using_mpi) { - /* Round-robin write the chunks out from only one process */ + /* Write the chunks out from only one process */ if(H5_PAR_META_WRITE==mpi_rank) { if (H5F_block_write(f, H5FD_MEM_DRAW, udata.addr, udata.key.nbytes, dxpl_id, chunk)<0) HGOTO_ERROR(H5E_IO, H5E_WRITEERROR, FAIL, "unable to write raw data to file"); |