HDF5

Using HDF5 on SeaWulf

Overview

HDF5 is a versatile data model and file format widely used for storing large, complex data in scientific and engineering fields. On the SeaWulf cluster, you can access multiple versions of the HDF5 module optimized for different computing environments. This guide covers how to load and use these modules efficiently across the Skylake, Milan, and Haswell clusters.

Available Modules on SeaWulf

SeaWulf provides several versions of HDF5 optimized for different hardware and compilers. Below are the available modules for the Skylake, Milan, and Haswell clusters:

Skylake Nodes

  • hdf5-parallel/gcc12.1/openmpi/1.12.2
  • hdf5-parallel/intel2023.1/1.12.2
  • hdf5-parallel/intel2022.2/1.12.2
  • hdf5-parallel/intel2024.0/1.14.3

Milan Nodes

  • hdf5-parallel/aocc4.0/openmpi/1.12.2
  • hdf5-parallel/intel2022.2/1.12.2
  • hdf5-parallel/gcc12.1/mvapich2/1.12.2
  • hdf5-parallel/intel2023.1/1.12.2
  • hdf5-parallel/gcc12.1/openmpi/1.12.2

Haswell Nodes

  • hdf5/1.6.10
  • hdf5/intel/1.6.10-parallel
  • hdf5/1.6.10-parallel
  • hdf5/intel/1.8.20-parallel
  • hdf5/1.8.4
  • hdf5/intel/1.10.5-parallel
  • hdf5/1.8.17
  • hdf5/parallel/intel2022.2/1.12.2
  • hdf5/1.8.19

Loading a Module

To load the appropriate HDF5 module, use the module load command. For example, to load the HDF5 module for the Skylake cluster using GCC and OpenMPI, use the following command:

module load hdf5-parallel/gcc12.1/openmpi/1.12.2

Once the module is loaded, you can start using HDF5 in your environment. Ensure you are loading the correct version for your application to avoid any compatibility issues.

Using HDF5

After loading the module, you can begin compiling and running your HDF5-based programs. Below is a sample command for compiling a simple HDF5 program:

mpicc -o my_hdf5_program my_hdf5_program.c -lhdf5

Ensure that your program links to the correct HDF5 libraries based on the module you loaded.

Important Notes

HDF5 on SeaWulf is optimized for parallel processing. Always select a parallel version (indicated by "parallel" in the module name) when working with large datasets to take advantage of the cluster's capabilities.

Make sure to check the compatibility of your HDF5 program with the compiler and MPI version you are using. Incompatible versions may result in errors or suboptimal performance.

Additional Resources

If you encounter any issues or need further assistance, consult the SeaWulf documentation or reach out to the support team for help with HDF5 and other modules.