This section includes brief discussions of performance issues in HDF5 and performance analysis tools for HDF5 or pointers to such discussions.
The Pablo software consists of an instrumented copy of the HDF5 library, the Pablo Trace and Trace Extensions libraries, and some utilities for processing the output. The instrumented version of the HDF5 library has hooks inserted into the HDF5 code which call routines in the Pablo Trace library just after entry to each instrumented HDF5 routine and just prior to exit from the routine. The Pablo Trace Extension library has programs that track the I/O activity between the entry and exit of the HDF5 routine during execution.
A few lines of code must be inserted in the user's main program to enable tracing and to specify which HDF5 procedures are to be traced. The program is linked with the special HDF5 and Pablo libraries to produce an executable. Running this executable on a single processor produces an output file called the trace file which contains records, called Pablo Self-Defining Data Format (SDDF) records, which can later be analyzed using the HDF5 Analysis Utilities. The HDF5 Analysis Utilites can be used to interpret the SDDF records in the trace files to produce a report describing the HDF5 IO activity that occurred during execution.
For further instructions, see the file READ_ME
in the $(toplevel)/hdf5/pablo/
subdirectory of
the HDF5 source code distribution.
For further information about Pablo and the
Self-Defining Data Format, visit the Pablo website at
http://www-pablo.cs.uiuc.edu/
.