diff options
author | Mohamad Chaarawi <chaarawi@hdfgroup.org> | 2016-02-10 20:48:34 (GMT) |
---|---|---|
committer | Mohamad Chaarawi <chaarawi@hdfgroup.org> | 2016-02-10 20:48:34 (GMT) |
commit | 63c90e5c67445de5deaaf45b70273fef1286ae60 (patch) | |
tree | 97f30fd46663aa809ac03bb4feac32bed9b12ee5 /src/H5Pdxpl.c | |
parent | 4da0790886dd7f52d9bd01ef5d9191f7ff729b3e (diff) | |
parent | 557a3972ac65f4d0d40f73b5add3195b739ea5cc (diff) | |
download | hdf5-63c90e5c67445de5deaaf45b70273fef1286ae60.zip hdf5-63c90e5c67445de5deaaf45b70273fef1286ae60.tar.gz hdf5-63c90e5c67445de5deaaf45b70273fef1286ae60.tar.bz2 |
[svn-r29081] - merge in the phdf5_metadata_opt/ branch with the collective metadata optimizations.
- rename H5AC_dxpl_id to H5AC_ind_read_dxpl_id and update all usage in the library
tested on bb-8 with parallel and serial.
Diffstat (limited to 'src/H5Pdxpl.c')
-rw-r--r-- | src/H5Pdxpl.c | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/src/H5Pdxpl.c b/src/H5Pdxpl.c index 3ff71dc..9353094 100644 --- a/src/H5Pdxpl.c +++ b/src/H5Pdxpl.c @@ -179,8 +179,15 @@ #ifdef H5_DEBUG_BUILD /* dxpl I/O type - private property */ #define H5FD_DXPL_TYPE_SIZE sizeof(H5FD_dxpl_type_t) -#define H5FD_DXPL_TYPE_DEF H5FD_NOIO_DXPL #endif /* H5_DEBUG_BUILD */ +#ifdef H5_HAVE_PARALLEL +/* Definition for reading metadata collectively */ +#define H5D_XFER_COLL_MD_READ_SIZE sizeof(H5P_coll_md_read_flag_t) +#define H5D_XFER_COLL_MD_READ_DEF H5P_USER_FALSE +#define H5D_XFER_COLL_MD_READ_ENC H5P__encode_coll_md_read_flag_t +#define H5D_XFER_COLL_MD_READ_DEC H5P__decode_coll_md_read_flag_t +#endif /* H5_HAVE_PARALLEL */ + /******************/ /* Local Typedefs */ @@ -278,6 +285,7 @@ static const H5D_mpio_no_collective_cause_t H5D_def_mpio_no_collective_cause_g = #ifdef H5_HAVE_PARALLEL static const MPI_Datatype H5D_def_btype_g = H5FD_MPI_XFER_MEM_MPI_TYPE_DEF; /* Default value for MPI buffer type */ static const MPI_Datatype H5D_def_ftype_g = H5FD_MPI_XFER_FILE_MPI_TYPE_DEF; /* Default value for MPI file type */ +static const H5P_coll_md_read_flag_t H5D_def_coll_md_read_g = H5D_XFER_COLL_MD_READ_DEF; /* Default setting for the collective metedata read flag */ #endif /* H5_HAVE_PARALLEL */ static const H5Z_EDC_t H5D_def_enable_edc_g = H5D_XFER_EDC_DEF; /* Default value for EDC property */ static const H5Z_cb_t H5D_def_filter_cb_g = H5D_XFER_FILTER_CB_DEF; /* Default value for filter callback */ @@ -435,6 +443,13 @@ H5P__dxfr_reg_prop(H5P_genclass_t *pclass) if(H5P_register_real(pclass, H5FD_MPI_XFER_FILE_MPI_TYPE_NAME, H5FD_MPI_XFER_FILE_MPI_TYPE_SIZE, &H5D_def_ftype_g, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL) < 0) HGOTO_ERROR(H5E_PLIST, H5E_CANTINSERT, FAIL, "can't insert property into class") + + /* Register the metadata collective read flag */ + if(H5P_register_real(pclass, H5_COLL_MD_READ_FLAG_NAME, H5D_XFER_COLL_MD_READ_SIZE, + &H5D_def_coll_md_read_g, + NULL, NULL, NULL, H5D_XFER_COLL_MD_READ_ENC, H5D_XFER_COLL_MD_READ_DEC, + NULL, NULL, NULL, NULL) < 0) + HGOTO_ERROR(H5E_PLIST, H5E_CANTINSERT, FAIL, "can't insert property into class") #endif /* H5_HAVE_PARALLEL */ /* Register the EDC property */ |