H5Pset_hyper_cache(hid_t plist,
unsigned cache,
unsigned limit
)
H5_WANT_H5_V1_4_COMPAT;
the function is not enabled in the binaries distributed by NCSA.
]
Given a dataset transfer property list, H5Pset_hyper_cache
indicates whether to cache hyperslab blocks during I/O,
a process which can significantly increase I/O speeds.
When working with hyperslab selections, it is possible to
significantly speed up I/O operations by retrieving an
entire hyperslab from the file in one operation and
caching it in memory.
The cache parameter specifies whether to turn
caching on for hyperslab I/O operations.
If cache is set to 1,
caching is turned on;
if set to 0, caching is turned off.
The parameter limit sets the maximum size of the
hyperslab block to cache. If a block is smaller than that limit,
it may still not be cached if no memory is available.
Setting limit to 0 (zero) indicates
no limitation on the size of block to attempt to cache.
The default is to cache blocks with no limit on block size for serial I/O and to not cache blocks for parallel I/O.
plist
cache
1) or off (0).
limit
0 (zero) indicates no limit.
SUBROUTINE h5pset_hyper_cache_f(prp_id, cache, limit, hdferr)
IMPLICIT NONE
INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
INTEGER, INTENT(IN) :: cache !
INTEGER, INTENT(IN) :: limit ! Maximum size of the hyperslab
! block to cache
! 0 (zero) indicates no limit
INTEGER, INTENT(OUT) :: hdferr ! Error code
! 0 on success and -1 on failure
END SUBROUTINE h5pset_hyper_cache_f