The HDF5 library is located on bitbucket. But the parallel test suite will not all pass since there is some unsupported functionality used by HDF5:
- atomicity
- POSIX and MPI-IO access of the same file
- reading empty data expecting 0s (default fill-value)
There are other changes required in the library basically to sync with timestamps instead of barriers when one rank is expected to read what another rank wrote.
Those changes can be obtained from
git clone https://github.com/mchaarawi/hdf5
Which is a clone of HDF5 develop branch with the above changes.
Build:
After configure and building MPICH (see directions here):
- git clone https://github.com/mchaarawi/hdf5
- cd hdf5
- ./autogen.sh
- mkdir build; cd build
../configure --enable-parallel --prefix=dir
make -j8 install
Run:
Launch server(s)
Using all the directions from this page for client side execution:
- create pool with dmg and export related env variables
export HDF5_PARAPREFIX=daos:
mpirun -np 6 --hostfile ~/cli_hosts ./testphdf5
mpirun -np 6 --hostfile ~/cli_hosts ./t_shapesame
Status:
Passing / Should Pass all tests