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
- To include Fortran interface see: https://support.hdfgroup.org/HDF5/release/chgcmkbuild.html
- Better (easier to debug) to use ccmake directly:
- at top of source tree:
$ 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
[2] HDF5 Knowledge Base - Questions about thread-safety and concurrent access