HDF5 is a data model, library, and file format for data management. It supports many datatypes, and is designed for efficient I/O and for high volume and complex data. HDF5 is portable and extensible, allowing applications to evolve in their use of HDF5.

Usage on Opuntia

To use HDF5 you must load its module:

$ module load hdf5

Use HDF5 wrapper scripts when compiling:

$ h5pcc hdf5_test.c # C code 
$ h5pcc hdf5_test.f90 # Fortran code

Further Information

PyTables is a Python package built on top of the HDF5 library for managing hierarchical datasets and designed to cope with large amounts of data. PyTables is available when loading the HDF5 modules along with the corresponding python one.
For example, create a HDF5 file from python:

$ module load hdf5
$ module load python
$ python
>>> from numpy import *
>>> from tables import *
>>> fileh = open_file("test.h5", mode = "w", title="Testing")
>>> root = fileh.root
>>> a = array([1, 2, 4], int32)
>>> hdfarray = fileh.create_array(root, 'array', a,
"Integer array")
>>> fileh.close()
>>> exit()

You could check the output file with the HDF5 h5ls utility:

$ h5ls -d test.h5 
array Dataset {3} 
Data: 
(0) 1, 2, 4