diff options
author | Jonathan Kim <jkm@hdfgroup.org> | 2012-09-04 17:00:38 (GMT) |
---|---|---|
committer | Jonathan Kim <jkm@hdfgroup.org> | 2012-09-04 17:00:38 (GMT) |
commit | 0aa8d4d88a7d90cbb841bafacf54d97bc1d7a3f7 (patch) | |
tree | 0df0359ab13df0f84c4d69689007bcae2c9880e4 /src/H5Ppublic.h | |
parent | 3ab17f5e0409b717d9739577f8cc59ce460401bc (diff) | |
download | hdf5-0aa8d4d88a7d90cbb841bafacf54d97bc1d7a3f7.zip hdf5-0aa8d4d88a7d90cbb841bafacf54d97bc1d7a3f7.tar.gz hdf5-0aa8d4d88a7d90cbb841bafacf54d97bc1d7a3f7.tar.bz2 |
[svn-r22735] Purpose:
HDFFV-8143 Provide a routine(s) for telling the user why the library broke collective data access
Description:
Added H5Pget_mpio_no_collective_cause() function that retrive reasons why the collective I/O was broken during Read/Write IO access.
Reasons to break collective I/O:
- SET_INDEPENDENT
- DATATYPE_CONVERSION
- DATA_TRANSFORMS
- MPIPOSIX
- NOT_SIMPLE_OR_SCALAR_DATASPACES (NULL Space)
- POINT_SELECTIONS
- NOT_CONTIGUOUS_OR_CHUNKED_DATASET (Compact or External-Storage)
- FILTERS
Tested:
jam (linux32-LE), koala (linux64-LE), ostrich (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE)
Diffstat (limited to 'src/H5Ppublic.h')
-rw-r--r-- | src/H5Ppublic.h | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/H5Ppublic.h b/src/H5Ppublic.h index 654772a..fd75e86 100644 --- a/src/H5Ppublic.h +++ b/src/H5Ppublic.h @@ -153,6 +153,19 @@ typedef enum H5D_mpio_actual_io_mode_t { H5D_MPIO_CONTIGUOUS_COLLECTIVE = 0x4 } H5D_mpio_actual_io_mode_t; +/* Broken collective IO property */ +typedef enum H5D_mpio_no_collective_cause_t { + H5D_MPIO_COLLECTIVE = 0x00, + H5D_MPIO_SET_INDEPENDENT = 0x01, + H5D_MPIO_DATATYPE_CONVERSION = 0x02, + H5D_MPIO_DATA_TRANSFORMS = 0x04, + H5D_MPIO_SET_MPIPOSIX = 0x08, + H5D_MPIO_NOT_SIMPLE_OR_SCALAR_DATASPACES = 0x10, + H5D_MPIO_POINT_SELECTIONS = 0x20, + H5D_MPIO_NOT_CONTIGUOUS_OR_CHUNKED_DATASET = 0x40, + H5D_MPIO_FILTERS = 0x80 +} H5D_mpio_no_collective_cause_t; + /********************/ /* Public Variables */ /********************/ @@ -399,6 +412,7 @@ H5_DLL herr_t H5Pget_type_conv_cb(hid_t dxpl_id, H5T_conv_except_func_t *op, voi #ifdef H5_HAVE_PARALLEL H5_DLL herr_t H5Pget_mpio_actual_chunk_opt_mode(hid_t plist_id, H5D_mpio_actual_chunk_opt_mode_t *actual_chunk_opt_mode); H5_DLL herr_t H5Pget_mpio_actual_io_mode(hid_t plist_id, H5D_mpio_actual_io_mode_t *actual_io_mode); +H5_DLL herr_t H5Pget_mpio_no_collective_cause(hid_t plist_id, H5D_mpio_no_collective_cause_t *local_no_collective_cause, H5D_mpio_no_collective_cause_t *global_no_collective_cause); #endif /* H5_HAVE_PARALLEL */ /* Link creation property list (LCPL) routines */ |