H5P_SET_ELINK_FILE_CACHE_SIZE
Sets the number of files that can be held open in an external link open file cache
Procedure:
H5P_SET_ELINK_FILE_CACHE_SIZE ( fapl_id, efc_size )
Signature:
herr_t H5Pset_elink_file_cache_size(
hid_t fapl_id,
unsigned efc_size
)
Parameters:
hid_t fapl_id | IN: File access property list identifier |
unsigned efc_size | IN: External link open file cache size in number of files Default setting is 0 (zero). |
Description:
H5P_SET_ELINK_FILE_CACHE_SIZE specifies the number of files that will be held open in an external link open file cache.
The default external link open file cache size is 0 (zero), meaning that files accessed via an external link are not held open. Setting the cache size to a positive integer turns on the cache; setting the size back to zero turns it off.
With this property set, files are placed in the external link open file cache cache when they are opened via an external link. Files are then held open until either they are evicted from the cache or the parent file is closed. This property setting can improve performance when external links are repeatedly accessed.
When the cache is full, files will be evicted using a least recently used (LRU) scheme; the file which has gone the longest time without being accessed through the parent file will be evicted and closed if nothing else is holding that file open.
Files opened through external links inherit the parent file’s file access property list by default, and therefore inherit the parent file’s external link open file cache setting.
When child files contain external links of their own, the caches can form a graph of cached external files. Closing the last external reference to such a graph will recursively close all files in the graph, even if cycles are present.
Returns:
Returns a non-negative value if successful; otherwise returns a negative value.
Example:
The following code sets up an external link open file cache that will hold open up to 8 files reached through external links:
status = H5Pset_elink_file_cache_size(fapl_id, 8);
History:
Release | Change |
---|
1.8.7 | C function introduced in this release. |
--- Last Modified: August 05, 2019 | 08:57 AM