The purpose of this page is to list and briefly describe the documentation available to those who want to fine-tune how the metadata cache behaves. The following are the sections on this page:

HDF5 Library APIs

H5P_GET_EVICT_ON_CLOSERetrieves property list setting that determines whether an HDF5 object will be evicted from the library's metadata cache when closed
H5P_SET_EVICT_ON_CLOSEControls the library's behavior of evicting metadata associated with a closed object
H5P_GET_MDC_IMAGE_CONFIGRetrieves the metadata cache image option setting from a file access property list
H5P_SET_MDC_IMAGE_CONFIGSets the metadata cache image option for a file access property list
H5F_GET_MDC_IMAGE_INFOGets information about a metadata cache image for a file if it exists
H5F_GET_METADATA_READ_RETRY_INFO Retrieves the collection of read retries for metadata items with checksum
H5P_GET_METADATA_READ_ATTEMPTS

Retrieves the number of read attempts from a file access property list

H5P_SET_METADATA_READ_ATTEMPTS Sets the number of read attempts in a file access property list
H5D_FLUSHCauses all buffers associated with a dataset to be immediately written to disk without removing the data from the cache
H5D_REFRESHCauses all buffers associated with a dataset to be cleared and immediately re-loaded with updated contents from disk storage
H5G_FLUSHCauses all buffers associated with a group to be immediately flushed to disk without removing the data from the cache
H5G_REFRESHCauses all buffers associated with a group to be cleared and immediately re-loaded with updated contents from disk storage
H5O_FLUSHCauses all buffers associated with an object to be immediately flushed to disk without removing the data from the cache
H5O_REFRESHCauses all buffers associated with an object to be cleared and immediately re-loaded with updated contents from disk storage
H5T_FLUSHCauses all buffers associated with a committed datatype to be immediately flushed to disk without removing the data from the cache
H5T_REFRESHCauses all buffers associated with a committed datatype to be cleared and immediately re-loaded with updated contents from disk storage
H5F_GET_INTENTDetermines the read/write or read-only status of a file

 

Logging APIs

H5P_SET_MDC_LOG_OPTIONSSets metadata cache logging options
H5P_GET_MDC_LOG_OPTIONSGets metadata cache logging options
H5F_START_MDC_LOGGINGStarts logging metadata cache events if logging was previously enabled
H5F_STOP_MDC_LOGGINGStops logging metadata cache events if logging was previously enabled and is currently ongoing
H5F_GET_MDC_LOGGING_STATUSGets the current metadata cache logging status

 

 

Fine-tuning the Metadata Cache Design Documents and Information

Fine-grained Control of Metadata Cache Flushes

 

This document describes some new functions which allow dynamic, fine-grained flush control of the entire metadata cache and the caches related to individual HDF5 objects.
Read Attempts for Metadata with ChecksumThe HDF5 library encounters intermittent checksum failures from reading metadata of an HDF5 file opened with single-writer/multiple-reader (SWMR) access. The failure is from a checksum check that does not reflect the data read. This document describes the modifications to the library that address this problem.
Metadata Cache ImageThis document describes the metadata cache image feature and how it improves performance by writing the metadata cache in a single block on file close, and then populating the cache with the contents of this block on file open. This avoids the many small I/O operations that would otherwise be required on file open and close.
Metadata Cache Evict on CloseThis feature will cause all metadata for an object to be evicted from the cache as long as metadata is not referenced from any other open object. This can relieve memory pressure on an application or system caused by a large amount of metadata in the metadata cache. See the H5P_GET_EVICT_ON_CLOSE and H5P_SET_EVICT_ON_CLOSE APIs for more details.
Metadata Cache LoggingThis document describes the improvements made to the library’s metadata cache logging facility. The changes include APIs that can be used to control logging operations and the format of log messages.
Flush Dependency TestingThis document considers how to design tests for flush dependencies of metadata cache items for single-writer/multiple-reader (SWMR) access.

 

Tools

The following tool was modified to support the Metadata Cache Image feature.

h5clearThe "-m" and "--image" flags were added to h5clear to close a cache image if it exists.