diff options
author | jhendersonHDF <jhenderson@hdfgroup.org> | 2023-08-02 04:01:01 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-08-02 04:01:01 (GMT) |
commit | b1e07c74fde8bf4f1c61c98e951f080c570accf5 (patch) | |
tree | ce1b45350a790e98e20a480cf0ba4ca5e1fb31ee /src/H5Fio.c | |
parent | f62feaef31aebee95bef9b59a7423cb728e872cf (diff) | |
download | hdf5-b1e07c74fde8bf4f1c61c98e951f080c570accf5.zip hdf5-b1e07c74fde8bf4f1c61c98e951f080c570accf5.tar.gz hdf5-b1e07c74fde8bf4f1c61c98e951f080c570accf5.tar.bz2 |
Switch parallel compression to use vector I/O (#3245)
Updates parallel compression feature to use vector I/O instead of
creating and passing down MPI derived types to VFD
Diffstat (limited to 'src/H5Fio.c')
-rw-r--r-- | src/H5Fio.c | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/src/H5Fio.c b/src/H5Fio.c index 1924004..09d57e8 100644 --- a/src/H5Fio.c +++ b/src/H5Fio.c @@ -328,8 +328,16 @@ H5F_shared_vector_read(H5F_shared_t *f_sh, uint32_t count, H5FD_mem_t types[], h * for now, assume the caller has done this already. */ #ifndef NDEBUG - for (uint32_t i = 0; i < count; i++) + for (uint32_t i = 0; i < count; i++) { + /* Break early if H5FD_MEM_NOLIST was specified + * since a full 'count'-sized array may not + * have been passed for 'types' + */ + if (i > 0 && types[i] == H5FD_MEM_NOLIST) + break; + assert(types[i] != H5FD_MEM_GHEAP); + } #endif /* Pass down to file driver layer (bypass page buffer for now) */ @@ -373,8 +381,16 @@ H5F_shared_vector_write(H5F_shared_t *f_sh, uint32_t count, H5FD_mem_t types[], * for now, assume the caller has done this already. */ #ifndef NDEBUG - for (uint32_t i = 0; i < count; i++) + for (uint32_t i = 0; i < count; i++) { + /* Break early if H5FD_MEM_NOLIST was specified + * since a full 'count'-sized array may not + * have been passed for 'types' + */ + if (i > 0 && types[i] == H5FD_MEM_NOLIST) + break; + assert(types[i] != H5FD_MEM_GHEAP); + } #endif /* Pass down to file driver layer (bypass page buffer for now) */ |