mirror of
https://github.com/HDFGroup/hdf5.git
synced 2026-09-25 04:09:44 +03:00
Improve performance of H5Ovisit with deeply nested groups (#6272)
Improve performance of H5Ovisit (and H5Ocopy, and functions that retrieve and object name) by passing more information about the visited object from the underlying H5G_visit routine to these callbacks. Introduced an internal object callback for H5G_visit to facilitate this. H5Ovisit1 and potentially H5Ovisit2 are still slow with deeply nested groups due to the way these deprecated functions interact with the VOL layer.
This commit is contained in:
@@ -65,6 +65,10 @@ We would like to thank the many HDF5 community members who contributed to this r
|
||||
|
||||
## Library
|
||||
|
||||
### Improve performance of H5Ovisit() with deeply nested group structures
|
||||
|
||||
`H5Ovisit()` would previously internally traverse each object's path name from the iteration root group in order to retrieve information about that object, causing severe performance degradation with a deeply nested group structure. Modified the algorithm to instead retrieve information directly from the object. To get this benefit, users should use `H5Ovisit3()`, or use `H5Ovisit2()` with neither `H5O_INFO_HDR` nor `H5O_INFO_META_SIZE` selected in the `fields` parameter. Performance of `H5Ocopy()`, `H5Iget_name()`, and external links with a callback set should also improve in similar situations.
|
||||
|
||||
## Parallel Library
|
||||
|
||||
## Fortran Library
|
||||
|
||||
Reference in New Issue
Block a user