diff options
Diffstat (limited to 'src/H5FDmpi.h')
-rw-r--r-- | src/H5FDmpi.h | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/src/H5FDmpi.h b/src/H5FDmpi.h index aac7bf6..c9da439 100644 --- a/src/H5FDmpi.h +++ b/src/H5FDmpi.h @@ -21,12 +21,34 @@ #ifndef H5FDmpi_H #define H5FDmpi_H +/***** Macros for One linked collective IO case. *****/ +/* The default value to do one linked collective IO for all chunks. + If the average number of chunks per process is greater than this value, + the library will create an MPI derived datatype to link all chunks to do collective IO. + The user can set this value through an API. */ + +#define H5D_ONE_LINK_CHUNK_IO_THRESHOLD 0 +/***** Macros for multi-chunk collective IO case. *****/ +/* The default value of the threshold to do collective IO for this chunk. + If the average number of processes per chunk is greater than the default value, + collective IO is done for this chunk. +*/ + +#define H5D_MULTI_CHUNK_IO_COL_THRESHOLD 50 /* Type of I/O for data transfer properties */ typedef enum H5FD_mpio_xfer_t { H5FD_MPIO_INDEPENDENT = 0, /*zero is the default*/ H5FD_MPIO_COLLECTIVE } H5FD_mpio_xfer_t; +/* Type of I/O for data transfer properties */ +typedef enum H5FD_mpio_chunk_opt_t { + H5FD_MPIO_OPT_IGNORE = 0, + H5FD_MPIO_OPT_ONE_IO, /*zero is the default*/ + H5FD_MPIO_OPT_MULTI_IO +} H5FD_mpio_chunk_opt_t; + + #ifdef H5_HAVE_PARALLEL /* Sub-class the H5FD_class_t to add more specific functions for MPI-based VFDs */ |