Currently, the metadata timing report may include dataset operations' time, which is due to pending dataset operations holding the HDF5 global mutex and blocking any H5ESwait.
To Reproduce
How are you building/running h5bench?
Normal build with async I/O enabled.
What is the input configuration file you use?
h5bench write benchmarks
Expected Behavior
One workaround is to reorder the H5ESwait calls and wait on the dataset operations first. This way we will have an accurate recording of the dataset timing, the metadata timing could be less than actual as it may be included in the dataset timing, but since the metadata time is usually small, this could be a worthy trade-off.
Bug Report
Currently, the metadata timing report may include dataset operations' time, which is due to pending dataset operations holding the HDF5 global mutex and blocking any H5ESwait.
To Reproduce
How are you building/running h5bench?
What is the input configuration file you use?
Expected Behavior
One workaround is to reorder the H5ESwait calls and wait on the dataset operations first. This way we will have an accurate recording of the dataset timing, the metadata timing could be less than actual as it may be included in the dataset timing, but since the metadata time is usually small, this could be a worthy trade-off.
Software Environment
Additional information N/A