- HDF5 Software
- New Features and Changes
- External Libraries Used By HDF5
- Release Notes
- Known Problems
The HDF5-1.10.0-patch1 release consists of a few improvements to the HDF5-1.10.0 release. Please see the New Features and Changes for the changes in this release and the new features in HDF5-1.10.
HDF5-1.10.0-patch1 Source Code
- How to build HDF5 with configure
- How to build HDF5 with CMake using a platform configuration file
|Source Code||ALL Platforms|
HDF5-1.10.0-patch1 Pre-built Binary Distributions
The pre-built binary distributions in the table below include the HDF5 libraries, include files, utilities, and release notes, and are built with the SZIP Encoder Enabled and ZLIB external libraries. For information on using SZIP, see the SZIP licensing information.
|Linux 3.10 CentOS 7 x86_64 Compilers: gcc, g++, gfortran 4.8.5, jdk 1.7 or greater||Individual Utilities|
|Linux 2.6 CentOS 6 x86_64 Compilers: gcc, g++, gfortran 4.4.7, jdk 1.7 or greater||Individual Utilities|
|Linux 2.6 CentOS 6 x86_64 (32-bit) Compilers: gcc, g++, gfortran 4.4.7||Individual Utilities|
|Linux CentOS 6 and 7 64-bit RPMS (not yet available)|
|Windows (64-bit)  Compilers: CMake VS 2013 C, C++, IVF 15, jdk 1.7 or greater|
|Windows (32-bit)  Compilers: CMake VS 2013 C, C++, IVF 15, jdk 1.7 or greater|
|Windows (64-bit)  Compilers: CMake VS 2015 C, C++, IVF 16, jdk 1.7 or greater|
|Windows (32-bit)  Compilers: CMake VS 2015 C, C++, IVF 16, jdk 1.7 or greater|
The HDF Group uses an installer program to install the HDF5
libraries, header and support files on Windows. This installer is digitally signed by The HDF
Group. Please be aware that the installer requires that the user have permission to install
files on the target computer.
Also note that the Windows binary distributions are built in Release mode with debugging symbols.
Please avoid using spaces in directory path names as this can cause problems when building.
To use the shared libraries on Windows with Visual Studio you must specify the H5_BUILT_AS_DYNAMIC_LIB compile definition.
Static libraries begin with lib and shared libraries do not. For example, hdf5.lib is the shared library and libhdf5.lib is the static library.
New Features and Changes
Changes in HDF5-1.10.0-patch1
The HDF5-1.10.0-patch1 release consists of a few improvements to the HDF5-1.10.0 release. The major changes are:
The High Level library could not be built with CMake, which effectively meant HDF5 could not be built on Windows. The issue has been fixed.
The h5repack utility can now repack an HDF5 dataset with a virtual storage layout into a dataset with a contiguous, chunked, or compact layout.
The h5diff utility will now print a warning if a dataset is virtual and allow the data to be compared.
Although they are not tested, the SWMR utilities (h5watch, h5format_convert, h5clear) are now included when building HDF5 with CMake.
There were a few other minor changes included in this release. Please see the
for detailed information regarding the changes in HDF5-1.10.0-patch1 (as well as those in hdf5-1.10.0).
New Features in HDF5-1.10
HDF5-1.10 is a major release that contains several important new features. Please be aware that this release required format changes. Although this release can read files created with earlier releases, earlier releases may not be able to read HDF5-1.10 files.
A brief description of the new features in HDF5-1.10.0 is included below. (For more information see the HDF5-1.10 documentation.)
Concurrent Access to an HDF5 File: Single-Writer / Multiple-Reader (SWMR)
The Single-Writer / Multiple-Reader or SWMR feature enables users to read data while concurrently writing it. Communications between the processes and file locking are not required. An HDF5 file under SWMR access must reside on a file system that complies with POSIX write() semantics. For more information, see the Single-Writer / Multiple-Reader (SWMR) Documentation. See the Single-Writer/Multiple-Reader (SWMR) tutorial topic for a brief introduction to SWMR.
Virtual Dataset (VDS)
The VDS feature enables access to data stored in datasets in different HDF5 files using the standard H5D interface without rewriting or rearranging the data. Please note that the VDS feature can be used with SWMR. See the Virtual Dataset (VDS) tutorial topic for a brief introduction to Virtual Datasets.
Scalable Chunk Indexing
The indexing structure for chunked datasets has been changed to signficantly improve performance.
Persistent Free File Space Tracking
Usage patterns when working with an HDF5 file sometimes result in wasted space within the file. This can also impair access times when working with the resulting files. The new file space management feature enables users to manage the unused space in a file.
Collective Metadata I/O Feature for Improving Parallel HDF5 Performance
The HDF5 Collective Metadata I/O feature has been added to improve performance when reading and writing data collectively with Parallel HDF5.
Calls for HDF5 metadata can result in many small reads and writes. On metadata reads, collective metadata I/O can improve performance by allowing the library to perform optimizations when reading the metadata, by having one rank read the data and broadcasting it to all other ranks.
Collective metadata I/O improves metadata write performance through the construction of an MPI derived datatype that is then written collectively in a single call.
For more information see the Collective Metadata I/O Documentation.
Integration of Java HDF5 JNI into HDF5
The Java HDF5 JNI library has been integrated into the HDF5 source code repository. The configure option "--enable-java" has been added to build HDF5 with Java. The CMake option is HDF5_BUILD_JAVA:BOOL=ON.
In addition, the package hierarchy has changed to "hdf.hdflib.hdf5" from "ncsa.hdf.hdflib.hdf5", as it was in the HDF5-1.8 JNI.
Several new APIs have also been added, including those for VDS and SWMR.
Many changes have been made to the HDF5 configuration, including:
- The --with-default-api-version=v18 configure flag has been added to build HDF5-1.10 using the HDF5-1.8 APIs.
- The autotools configuration options have been updated to allow more control over build options and to correct some bugs.
- Changes were made in how autotools handles large file support (LFS).
For complete details regarding these changes see the Release Notes.
Partial Edge Chunk Options
New options for the storage and filtering of partial edge chunks in a dataset provide a tool for tuning I/O speed and file size in cases where the dataset size may not be a multiple of the chunk size.
External Libraries Used by HDF5
The SZIP and ZLIB external libraries are optional for use with HDF5. The HDF5 pre-compiled binary distributions include the SZIP (Encoder Enabled) and ZLIB libraries that they are compiled with.
The SZIP software is distributed by The HDF Group. Please see the SZIP Compression In HDF Products page for information on SZIP. Although the current release is 2.1, the SZIP 2.0 binaries can be used with HDF5.
Please view the SZIP licensing information to determine whether to use the Encoder Enabled or Decoder Enabled SZIP library.
- - Last modified: 15 November 2016