Page tree

The license could not be verified: License Certificate has expired!









Sets the size of a contiguous block reserved for small data


H5P_SET_SMALL_DATA_BLOCK_SIZE ( fapl_id, size )


herr_t H5Pset_small_data_block_size(hid_t fapl_id,
        hsize_t size

Fortran90 Interface: h5pset_small_data_block_size_f
SUBROUTINE h5pset_small_data_block_size_f(plist_id, size, hdferr) 
  INTEGER(HID_T), INTENT(IN) :: plist_id ! File access
                                         ! property list identifier
  INTEGER(HSIZE_T), INTENT(IN) :: size   ! Small raw data block size
  INTEGER, INTENT(OUT)       :: hdferr   ! Error code
                                         ! 0 on success and -1 on failure
END SUBROUTINE h5pset_small_data_block_size_f

hid_t fapl_id    IN: File access property list identifier
hsize_t sizeIN: Maximum size, in bytes, of the small data block
The default size is 2048.


H5Pset_small_data_block_size reserves blocks of size bytes for the contiguous storage of the raw data portion of small datasets. The HDF5 library then writes the raw data from small datasets to this reserved space, thus reducing unnecessary discontinuities within blocks of meta data and improving I/O performance.

A small data block is actually allocated the first time a qualifying small dataset is written to the file. Space for the raw data portion of this small dataset is suballocated within the small data block. The raw data from each subsequent small dataset is also written to the small data block until it is filled; additional small data blocks are allocated as required.

The HDF5 library employs an algorithm that determines whether I/O performance is likely to benefit from the use of this mechanism with each dataset as storage space is allocated in the file. A larger size will result in this mechanism being employed with larger datasets.

The small data block size is set as an allocation property in the file access property list identified by fapl_id.

Setting size to zero (0) disables the small data block mechanism.


Returns a non-negative value if successful; otherwise a negative value.


Coming Soon!

Release    C
1.4.4Function introduced in this release.

--- Last Modified: December 04, 2017 | 08:55 AM