The CSF2 has been replaced by the CSF3 - please use that system! This documentation may be out of date. Please read the CSF3 documentation instead. To display this old CSF2 page click here. |
HDF
Overview
HDF (Hierarchical Data Format) is a set of software libraries and self-describing, machine-independent data formats that support the creation, access, and sharing of large complex datasets.
The following versions are available:
- v1.8.6 built with the Intel 11.1.064 fortran compiler
- v1.8.7 built with the GNU C compiler
- v1.8.11 built with the Open64 4.5.2 compiler for AMD Bulldozer only
- v1.8.11 built with the PGI 12.10 compiler for AMD Bulldozer only
- v1.8.16 built with the GNU C compiler
- v1.8.16-mpi built with the GNU C compiler, MPI I/O enabled, no C++ interface
- v1.8.16 built with the Intel 15.0.3 C and Fortran compilers
If you require a version compiled with a particular compiler please contact us via its-ri-team@manchester.ac.uk
Restrictions on use
There are no restrictions on access.
Set up procedure
Load one of the following modulefiles to set up your environment:
# Includes MPI I/O support but does not have the C++ interface compiled (a limitation of HDF) module load apps/gcc/hdf5/1.8.16-mpi # # Before loading this modulefile you should load one of the # following MPI modulefiles: # module load mpi/gcc/openmpi/1.6 # module load mpi/gcc/openmpi/1.6-ib # No MPI I/O support but does have the C++ interface compiled. module load apps/gcc/hdf5/1.8.16 module load apps/gcc/hdf5/1.8.7 # Older Intel compiler build module load libs/intel-11.1/hdf/5/1.8.6 # Note the different hdf/5/ naming convention # Newer Intel compiler build module load libs/intel-15.0/hdf/t/1.8.16 # Suitable for using on AMD Bulldozer module load libs/open64-4.5.2/hdf/5/1.8.11 # Note the different hdf/5/ naming convention module load libs/pgi-12.10/hdf/5/1.8.11-ib-amd-bd # Note the different hdf/5/ naming convention
Running the application
The modulefiles will set an environement variable named HDF5DIR
which can then be used in your compilation process (e.g., in a Makefile) to access the header and library files:
- To inform the compiler of the header file directory use:
-I$HDF5DIR/include
on the command line - To inform the compiler of the library files use:
-L$HDF5DIR/lib -lhdf5
on the command line - In a Makefile use
$(HDF5DIR)
rather than$HDF5DIR
.
An example compilation command could be
gcc -I$HDF5DIR/include ex_hdf5.c -o ex_hdf5 -L$HDF5DIR/lib -lhdf5 # # Use mpicc if compiling MPI code that uses the hdf5 library
The HDF ‘bin’ directory is added to your path so that you can access the h5
tools. Use ls $HDF5BIN
to see all binary tools.
Further info
Example projects are available in $HDF5DIR/share/hdf5_examples/
See the HDF website for full documentation.
Updates
None.