Skip to content

HDF5 is a high performance data management and software suite.[1]

For installed versions, see: HDF5

Picotte

hdf5 1.14.0

Intel Toolchain 1.14.0

Cmake works. Set:

CMAKE_C_FLAGS = -qopenmp

Intel Toolchain 1.12.x

Could not get cmake build to work with Intel toolchain, though it worked fine for GCC.

Modules:

intel/composerxe/2020 (unload gcc/9.2.0) picotte-openmpi/intel/2020/4.1.0 szip/intel/2020/2.1.1

Environment variables (kluge for MPI support):

export CC=`which mpicc` export CXX=`which mpic++` export FC=`which mpifort`

Environment variables (kluge for SZIP support):

export CPPFLAGS="-I${SZIPDIR}/include" export LDFLAGS="-L${SZIPDIR}/lib -Wl,-rpath,${SZIPDIR}/lib -lsz"

Configure line:

./configure --prefix=/ifs/opt/hdf5/intel/2020/1.12.0-mpi --enable-build-mode=production \ --enable-optimization=high --enable-parallel --enable-fortran \ --with-zlib --with-szlib=${SZIPDIR}/lib

Test - first set env var to local or beegfs:

export HDF5_PARAPREFIX=/beegfs/scratch/myname

Proteus

Download

We recommend using the CMake build system. Documentation for using CMake to build HDF5 is here: https://support.hdfgroup.org/HDF5/release/cmakebuild.html

Configure

NB Single-Writer / Multiple-Reader (SWMR) feature works only on Lustre or local disk (i.e. it will not work in the group directories or the home directories).[2][3]

  • Load modules for szip and zlib

szip/intel/2015/2.1 zlib/cloudflare/intel/2015/1.2.8

$ mkdir BUILD $ cd BUILD $ ccmake ../hdf5-1.10.1

  • Have to kludge one of the CMake files because there's some error compiling a test program within CMake. It compiles fine on its own.
    • hdf5-1.10.1/config/cmake/HDF5UseFortran.cmake
    • comment out lines 421-458 inclusive
    • add a line at 459:

set (PROG_OUTPUT "18;0")

Check

make check

References

[1] HDF5® Official Website

[2] HDF5 Knowledge Base - Questions about thread-safety and concurrent access

[3] HDF5 Tutorial - Single-Writer / Multiple-Reader (SWMR)