mirror of
https://github.com/HDFGroup/hdf5.git
synced 2024-12-15 07:40:23 +08:00
49cded79ce
Cimmit changes to Makefile.in(s) and H5PL.c that resulted from running autogen.sh. Conflicts: README.txt c++/src/Makefile.in fortran/src/Makefile.in hl/c++/src/Makefile.in hl/fortran/src/Makefile.in hl/src/Makefile.in java/src/jni/Makefile.in release_docs/RELEASE.txt src/Makefile.in
12345 lines
561 KiB
Plaintext
12345 lines
561 KiB
Plaintext
HDF5 History
|
||
============
|
||
|
||
This file contains development history of HDF5 1.8 branch
|
||
|
||
19. Release Information for hdf5-1.8.17
|
||
18. Release Information for hdf5-1.8.16
|
||
17. Release Information for hdf5-1.8.15
|
||
16. Release Information for hdf5-1.8.14
|
||
15. Release Information for hdf5-1.8.13
|
||
14. Release Information for hdf5-1.8.12
|
||
13. Release Information for hdf5-1.8.11
|
||
12. Release Information for hdf5-1.8.10-patch1
|
||
11. Release Information for hdf5-1.8.10
|
||
10. Release Information for hdf5-1.8.9
|
||
09. Release Information for hdf5-1.8.8
|
||
08. Release Information for hdf5-1.8.7
|
||
07. Release Information for hdf5-1.8.6
|
||
06. Release Information for hdf5-1.8.5
|
||
05. Release Information for hdf5-1.8.4
|
||
04. Release Information for hdf5-1.8.3
|
||
03. Release Information for hdf5-1.8.2
|
||
02. Release Information for hdf5-1.8.1
|
||
01. Release Information for hdf5-1.8.0
|
||
|
||
[Search on the string '%%%%' for section breaks of each release.]
|
||
|
||
%%%%1.8.17%%%%
|
||
|
||
|
||
HDF5 version 1.8.17 released on 2016-05-10
|
||
================================================================================
|
||
|
||
INTRODUCTION
|
||
============
|
||
|
||
This document describes the differences between HDF5-1.8.16 and
|
||
HDF5-1.8.17-*, and contains information on the platforms tested and
|
||
known problems in HDF5-1.8.17-*.
|
||
For more details, see the files HISTORY-1_0-1_8_0_rc3.txt
|
||
and HISTORY-1_8.txt in the release_docs/ directory of the HDF5 source.
|
||
|
||
Links to the HDF5 1.8.17 source code, documentation, and additional materials
|
||
can be found on the HDF5 web page at:
|
||
|
||
http://www.hdfgroup.org/products/hdf5/
|
||
|
||
The HDF5 1.8.17 release can be obtained from:
|
||
|
||
http://www.hdfgroup.org/HDF5/release/obtain5.html
|
||
|
||
User documentation for 1.8.17 can be accessed directly at this location:
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/
|
||
|
||
New features in the HDF5-1.8.x release series, including brief general
|
||
descriptions of some new and modified APIs, are described in the "What's New
|
||
in 1.8.0?" document:
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/ADGuide/WhatsNew180.html
|
||
|
||
All new and modified APIs are listed in detail in the "HDF5 Software Changes
|
||
from Release to Release" document, in the section "Release 1.8.17 (current
|
||
release) versus Release 1.8.16
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/ADGuide/Changes.html
|
||
|
||
If you have any questions or comments, please send them to the HDF Help Desk:
|
||
|
||
help@hdfgroup.org
|
||
|
||
|
||
|
||
CONTENTS
|
||
========
|
||
|
||
- New Features
|
||
- Support for New Platforms, Languages, and Compilers
|
||
- Bug Fixes since HDF5-1.8.16
|
||
- Supported Platforms
|
||
- Supported Configuration Features Summary
|
||
- More Tested Platforms
|
||
- Known Problems
|
||
|
||
|
||
|
||
New Features
|
||
============
|
||
|
||
Configuration
|
||
-------------
|
||
- Cmakehdf5: Added Ability to Run Multiple Make Commands
|
||
|
||
Added option --njobs to specify up to how many jobs to launch during
|
||
build (cmake) and testing (ctest).
|
||
|
||
(AKC - 2015/12/13, HDFFV-9612)
|
||
|
||
- Cmakehdf5: Added Szip Support and Verbose Option
|
||
|
||
Added --with-szlib to support the Szip library; and
|
||
--enable/disable-verbose to display all CMake process output.
|
||
|
||
(AKC - 2015/11/16, HDFFV-8932 and DAILYTEST-195)
|
||
|
||
- CMake minimum is now 3.1.0. (ADB - 2015/11/14)
|
||
|
||
- Large File System (LFS) Support has Changed in the Autotools
|
||
|
||
We assume that fseeko and ftello exist.
|
||
|
||
The *64 I/O functions and types are no longer explicitly used.
|
||
We now rely on a mapping provided by _FILE_OFFSET_BITS (or its
|
||
equivalent).
|
||
|
||
_LARGEFILE(64)_SOURCE is no longer exposed via AM_CPPFLAGS.
|
||
|
||
(DER - 2016/03/29, HDFFV-9626 and HDFFV-9541)
|
||
|
||
|
||
|
||
Library
|
||
-------
|
||
- New API Calls for Searching for External Dataset Storage
|
||
|
||
API calls that determine the search path for dataset external
|
||
storage were added. H5Pset/get_efile_prefix() API calls were added
|
||
to the library. These functions give control over the search path
|
||
for dataset external storage that has been configured with
|
||
H5Pset_external().
|
||
|
||
Additionally, the HDF5_EXTFILE_PREFIX environment variable can be
|
||
used to control the search path.
|
||
|
||
(DER - 2016/04/20, HDFFV-8740)
|
||
|
||
|
||
|
||
Parallel Library
|
||
----------------
|
||
- None
|
||
|
||
|
||
|
||
Tools
|
||
-----
|
||
- None
|
||
|
||
|
||
|
||
High-Level APIs
|
||
---------------
|
||
|
||
C Packet Table API
|
||
------------------
|
||
- Replacement of a Public Function with H5PTcreate
|
||
|
||
The existing function H5PTcreate_fl limits applications so they
|
||
can use the deflate compression only. The public function
|
||
H5PTcreate has been added to replace H5PTcreate_fl. H5PTcreate
|
||
takes a property list identifier to provide flexibility on
|
||
creation properties. This also removes the following warning:
|
||
"deprecated conversion from string constant to "char*"
|
||
[-Wwrite-strings]".
|
||
|
||
(BMR - 2016/04/25, HDFFV-9708, HDFFV-8615)
|
||
|
||
- New Public Functions: H5PTget_dataset and H5PTget_type
|
||
|
||
Two accessor functions have been added. H5PTget_dataset returns
|
||
the identifier of the dataset associated with the packet table,
|
||
and H5PTget_type returns the identifier of the datatype used by
|
||
the packet table.
|
||
|
||
(BMR - 2016/04/25, HDFFV-8623 patch 3)
|
||
|
||
- Regarding #ifdef VLPT_REMOVED
|
||
|
||
The #ifdef VLPT_REMOVED blocks have been removed from the packet
|
||
table (PT) library source except for the following functions:
|
||
+ H5PTis_varlen() has been made available again
|
||
+ H5PTfree_vlen_readbuff() is now H5PTfree_vlen_buff()
|
||
|
||
(BMR - 2016/04/25, HDFFV-442)
|
||
|
||
C++ Packet Table API
|
||
--------------------
|
||
- New Constructor in FL_PacketTable
|
||
|
||
An overloaded constructor has been added to FL_PacketTable and
|
||
takes a property list identifier to provide flexibility on
|
||
creation properties such as compression.
|
||
|
||
FL_PacketTable(hid_t fileID, const char* name, hid_t dtypeID,
|
||
hsize_t chunkSize = 0, hid_t plistID = H5P_DEFAULT)
|
||
|
||
(BMR - 2016/04/25, HDFFV-8623 patch 5)
|
||
|
||
- New Member Functions in PacketTable
|
||
|
||
Two accessor wrappers were added to class PacketTable.
|
||
|
||
PacketTable::GetDataset() returns the identifier of the dataset
|
||
associated with the packet table, and PacketTable::GetDatatype()
|
||
returns the identifier of the datatype that the packet table uses.
|
||
|
||
(BMR - 2016/04/25, HDFFV-8623 patch 4)
|
||
|
||
- New Member Functions with "char*" as an Argument
|
||
|
||
Overloaded functions were added to provide the "const char*"
|
||
argument; the existing version will be deprecated in future
|
||
releases. This also removes the following warning:
|
||
"deprecated conversion from string constant to "char*"
|
||
[-Wwrite-strings]".
|
||
|
||
(BMR - 2016/04/25, HDFFV-8623 patch 1, HDFFV-8615)
|
||
|
||
- Regarding #ifdef VLPT_REMOVED
|
||
|
||
The #ifdef VLPT_REMOVED blocks have been removed from the packet
|
||
table library source code except for the following functions:
|
||
+ VL_PacketTable::IsVariableLength() was moved to PacketTable
|
||
+ VL_PacketTable::FreeReadBuff() is now PacketTable::FreeBuff()
|
||
|
||
(BMR - 2016/04/25, HDFFV-442)
|
||
|
||
|
||
|
||
Fortran API
|
||
-----------
|
||
- None
|
||
|
||
|
||
|
||
C++ API
|
||
-------
|
||
- New Member Function in DSetCreatPropList
|
||
|
||
DSetCreatPropList::setNbit() was added to setup N-bit compression for
|
||
a dataset.
|
||
|
||
(BMR - 2016/04/25, HDFFV-8623 patch 7)
|
||
|
||
- New Overloaded "const" Member Functions in ArrayType
|
||
|
||
The two following functions were added:
|
||
ArrayType::getArrayNDims() const
|
||
ArrayType::getArrayDims() const
|
||
to provide const version, and the non-const version was marked
|
||
deprecated. In-memory array information, ArrayType::rank and
|
||
ArrayType::dimensions, were removed. This is an implementation
|
||
detail and should not affect applications.
|
||
|
||
(BMR, 2016/04/25, HDFFV-9725)
|
||
|
||
- New member function added
|
||
|
||
The assignment operator ArrayType::operator= is added because ArrayType
|
||
has pointer data members.
|
||
|
||
(BMR, 2016/03/07, HDFFV-9562)
|
||
|
||
|
||
Support for New Platforms, Languages, and Compilers
|
||
===================================================
|
||
- Mac OS X El Capitan 10.11.4 with compilers Apple clang/clang++
|
||
version 7.3.0 from Xcode 7.3, gfortran GNU Fortran (GCC) 5.2.0
|
||
and Intel icc/icpc/ifort version 16.0.2
|
||
|
||
|
||
|
||
Bug Fixes since HDF5-1.8.16
|
||
===========================
|
||
|
||
Configuration
|
||
-------------
|
||
- Updated Linux Language Level Flags to Match the Autotools. Removed
|
||
Linux-specific Flags from OS X.
|
||
|
||
An addition to the flags simply being out of sync with the Autotools,
|
||
the Linux flags were used on OS X builds which led to symbols not being
|
||
found. Although this was non-fatal and compilation continued (implicit
|
||
definitions were used by the compiler and the symbols resolved at link
|
||
time), a large number of warnings were raised.
|
||
|
||
Linux changes:
|
||
|
||
* CHANGED: _POSIX_C_SOURCE (from 199605 to 200112L)
|
||
* ADDED: _GNU_SOURCE
|
||
* REMOVED: _BSD_SOURCE
|
||
* REMOVED: _DEFAULT_SOURCE
|
||
|
||
(DER - 2015/12/08, HDFFV-9627)
|
||
|
||
- The --enable-clear-file-buffers configure Option was Non-functional
|
||
so the Feature was Always Enabled (its default value).
|
||
|
||
Regardless of the configure flag, the setting was always enabled when
|
||
the Autotools were used to configure HDF5. This was due to the "no"
|
||
option being processed after the "*" option in configure.ac so "*"
|
||
matched first. CMake was unaffected.
|
||
|
||
The option now works correctly.
|
||
|
||
NOTE that builders are always advised to leave this option enabled.
|
||
When disabled, buffers that are written to disk may contain the
|
||
memory's previous contents, which may include secure information.
|
||
The performance overhead of the feature (a single memset call per
|
||
allocation) is minimal.
|
||
|
||
(DER - 2016/02/03, HDFFV-9676)
|
||
|
||
- Added a patch to remove '"'s from arguments for MPI compilers that
|
||
were causing errors compiling H5lib_settings.c with SGI MPT.
|
||
|
||
(LRK - 2016/04/20, HDFFV-9439)
|
||
|
||
Library
|
||
-------
|
||
- Fixed shared file pointer problem which caused a crash when running a
|
||
program provided by a user.
|
||
|
||
(VC - 2016/04/01, HDFFV-9469)
|
||
|
||
- Fixed some format string warnings that prevent compiling with
|
||
-Werror=format-security on gcc.
|
||
|
||
These only appeared in error messages and would not cause problems
|
||
under normal operation.
|
||
|
||
(DER - 2016/01/13, HDFFV-9640)
|
||
|
||
- Fixed a library segmentation fault when accessing a corrupted
|
||
file provided by a user.
|
||
|
||
(MSC - 2016/02/19, HDFFV-9670)
|
||
|
||
|
||
|
||
Parallel Library
|
||
----------------
|
||
- None
|
||
|
||
|
||
|
||
Performance
|
||
-------------
|
||
- None
|
||
|
||
|
||
|
||
Tools
|
||
-----
|
||
- h5dump: Sub-setting Fixed for Dimensions Greater than Two
|
||
|
||
When a dataset has more than two dimensions, sub-setting would
|
||
incorrectly calculate the data that needed to be displayed.
|
||
Added in block and stride calculations that account for dimensions
|
||
greater than two. NOTE: lines that have line breaks inserted
|
||
because of display length calculations may have index info that
|
||
is incorrect until the next dimension break.
|
||
|
||
(ADB - 2016/03/07, HDFFV-9698)
|
||
|
||
- h5dump: Issue with Argument Segmentation Fault
|
||
|
||
When an argument with an optional value was at the end of the command
|
||
line with a value, h5dump would crash. Reworked check for remaining
|
||
arguments.
|
||
|
||
(ADB - 2016/03/07, HDFFV-9570, HDFFV-9684)
|
||
|
||
- h5dump: Issue with Default Fill Value
|
||
|
||
Added all default cases of fill value to the display of fill value.
|
||
|
||
(ADB -, 2016/03/07, HDFFV-9241)
|
||
|
||
- h5dump: Clarified Help
|
||
|
||
Clarified usage of -O F option in h5dump utility help.
|
||
|
||
(ADB - 2016/03/07, HDFFV-9066)
|
||
|
||
- h5dump: Issue with Double Free Fault
|
||
|
||
Added a check for filename not null before calling free().
|
||
|
||
(ADB - 2016/01/27, HDFFV-9639)
|
||
|
||
- VS2015 Release Changed how Timezone was Handled
|
||
|
||
Created a function, HDget_timezone, in H5system.c. Replaced
|
||
timezone variable usage with function call.
|
||
|
||
(ADB - 2015/11/02, HDFFV-9550)
|
||
|
||
|
||
|
||
Fortran API
|
||
-----------
|
||
- None
|
||
|
||
|
||
|
||
C++ API
|
||
-------
|
||
- Removal of Obsolete Methods
|
||
|
||
The overloaded methods which had parameters that should be const
|
||
but were not have been removed.
|
||
|
||
(BMR - 2016/01/13, HDFFV-9789)
|
||
|
||
|
||
|
||
High-Level APIs:
|
||
---------------
|
||
- Fixed Memory Leak in Packet Table API
|
||
|
||
Applied user's patch to fix memory leak in the creation of a
|
||
packet table.
|
||
|
||
(BMR - 2016/04/25, HDFFV-9700)
|
||
|
||
|
||
|
||
Fortran High-Level APIs:
|
||
------------------------
|
||
- None
|
||
|
||
|
||
|
||
Testing
|
||
-------
|
||
- None
|
||
|
||
|
||
|
||
Supported Platforms
|
||
===================
|
||
The following platforms are supported and have been tested for this release.
|
||
They are built with the configure process unless specified otherwise.
|
||
|
||
AIX 6.1 xlc/xlc_r 10.1.0.5
|
||
(NASA G-ADA) xlC/xlC_r 10.1.0.5
|
||
xlf90/xlf90_r 12.1.0.6
|
||
|
||
Linux 2.6.32-573.22.1.el6 GNU C (gcc), Fortran (gfortran), C++ (g++)
|
||
#1 SMP x86_64 GNU/Linux compilers:
|
||
(platypus) Version 4.4.7 20120313
|
||
Version 4.9.3, Version 5.2.0
|
||
PGI C, Fortran, C++ for 64-bit target on
|
||
x86-64;
|
||
Version 15.7-0
|
||
Intel(R) C (icc), C++ (icpc), Fortran (icc)
|
||
compilers:
|
||
Version 15.0.3.187 Build 20150407
|
||
MPICH 3.1.4 compiled with GCC 4.9.3
|
||
|
||
Linux 2.6.32-504.8.1.el6.ppc64 gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-16)
|
||
#1 SMP ppc64 GNU/Linux g++ (GCC) 4.4.7 20120313 (Red Hat 4.4.7-16)
|
||
(ostrich) GNU Fortran (GCC) 4.4.7 20120313 (Red Hat 4.4.7-16)
|
||
IBM XL C/C++ V13.1
|
||
IBM XL Fortran V15.1
|
||
|
||
Linux 3.10.0-229.14.1.el7 GNU C (gcc), Fortran (gfortran), C++ (g++)
|
||
#1 SMP x86_64 GNU/Linux compilers:
|
||
(kituo/moohan) Version 4.8.5 20150623 (Red Hat 4.8.5-4)
|
||
Version 5.2.0
|
||
Intel(R) C (icc), C++ (icpc), Fortran (icc)
|
||
compilers:
|
||
Version 15.0.3.187 Build 20150407
|
||
MPICH 3.1.4 compiled with GCC 4.9.3
|
||
|
||
SunOS 5.11 32- and 64-bit Sun C 5.12 SunOS_sparc
|
||
(emu) Sun Fortran 95 8.6 SunOS_sparc
|
||
Sun C++ 5.12 SunOS_sparc
|
||
|
||
Windows 7 Visual Studio 2012 w/ Intel Fortran 15 (cmake)
|
||
Visual Studio 2013 w/ Intel Fortran 15 (cmake)
|
||
Visual Studio 2015 (cmake)
|
||
Cygwin(CYGWIN_NT-6.1 2.2.1(0.289/5/3) gcc(4.9.3) compiler and gfortran)
|
||
(cmake and autotools)
|
||
|
||
Windows 7 x64 Visual Studio 2012 w/ Intel Fortran 15 (cmake)
|
||
Visual Studio 2013 w/ Intel Fortran 15 (cmake)
|
||
Visual Studio 2015 (cmake)
|
||
|
||
Windows 8.1 Visual Studio 2012 w/ Intel Fortran 15 (cmake)
|
||
Visual Studio 2013 w/ Intel Fortran 15 (cmake)
|
||
|
||
Windows 8.1 x64 Visual Studio 2012 w/ Intel Fortran 15 (cmake)
|
||
Visual Studio 2013 w/ Intel Fortran 15 (cmake)
|
||
|
||
Mac OS X Mt. Lion 10.8.5 Apple clang/clang++ version 5.1 from Xcode 5.1
|
||
64-bit gfortran GNU Fortran (GCC) 4.8.2
|
||
(swallow/kite) Intel icc/icpc/ifort version 15.0.3
|
||
|
||
Mac OS X Mavericks 10.9.5 Apple clang/clang++ version 6.0 from Xcode 6.2
|
||
64-bit gfortran GNU Fortran (GCC) 4.9.2
|
||
(wren/quail) Intel icc/icpc/ifort version 15.0.3
|
||
|
||
Mac OS X Yosemite 10.10.5 Apple clang/clang++ version 6.1 from Xcode 7.0
|
||
64-bit gfortran GNU Fortran (GCC) 4.9.2
|
||
(osx1010dev/osx1010test) Intel icc/icpc/ifort version 15.0.3
|
||
|
||
Mac OS X El Capitan 10.11.4 Apple clang/clang++ version 7.3.0 from Xcode 7.3
|
||
64-bit gfortran GNU Fortran (GCC) 5.2.0
|
||
(osx1011dev/ox1011test) Intel icc/icpc/ifort version 16.0.2
|
||
|
||
|
||
Tested Configuration Features Summary
|
||
=====================================
|
||
|
||
In the tables below
|
||
y = tested
|
||
n = not tested in this release
|
||
C = Cluster
|
||
W = Workstation
|
||
x = not working in this release
|
||
dna = does not apply
|
||
( ) = footnote appears below second table
|
||
<blank> = testing incomplete on this feature or platform
|
||
|
||
Platform C F90/ F90 C++ zlib SZIP
|
||
parallel F2003 parallel
|
||
SunOS 5.11 32-bit n y/y n y y y
|
||
SunOS 5.11 64-bit n y/y n y y y
|
||
Windows 7 y y/y n y y y
|
||
Windows 7 x64 y y/y n y y y
|
||
Windows 7 Cygwin n y/y n y y n
|
||
Windows 8.1 n y/y n y y y
|
||
Windows 8.1 x64 n y/y n y y y
|
||
Mac OS X Mountain Lion 10.8.5 64-bit n y/y n y y y
|
||
Mac OS X Mavericks 10.9.5 64-bit n y/y n y y y
|
||
Mac OS X Yosemeti 10.10.5 64-bit n y/y n y y y
|
||
AIX 6.1 32- and 64-bit n y/n n y y y
|
||
CentOS 6.7 Linux 2.6.32 x86_64 GNU y y/y y y y y
|
||
CentOS 6.7 Linux 2.6.32 x86_64 Intel n y/y n y y y
|
||
CentOS 6.7 Linux 2.6.32 x86_64 PGI n y/y n y y y
|
||
CentOS 7.1 Linux 3.10.0 x86_64 GNU y y/y y y y y
|
||
CentOS 7.1 Linux 3.10.0 x86_64 Intel n y/y n y y y
|
||
Linux 2.6.32-431.11.2.el6.ppc64 n y/n n y y y
|
||
|
||
Platform Shared Shared Shared Thread-
|
||
C libs F90 libs C++ libs safe
|
||
SunOS 5.11 32-bit y y y y
|
||
SunOS 5.11 64-bit y y y y
|
||
Windows 7 y y y y
|
||
Windows 7 x64 y y y y
|
||
Windows 7 Cygwin n n n y
|
||
Windows 8.1 y y y y
|
||
Windows 8.1 x64 y y y y
|
||
Mac OS X Mountain Lion 10.8.5 64-bit y n y y
|
||
Mac OS X Mavericks 10.9.5 64-bit y n y y
|
||
Mac OS X Yosemeti 10.10.5 64-bit y n y y
|
||
AIX 6.1 32- and 64-bit y n n y
|
||
CentOS 6.7 Linux 2.6.32 x86_64 GNU y y y y
|
||
CentOS 6.7 Linux 2.6.32 x86_64 Intel y y y y
|
||
CentOS 6.7 Linux 2.6.32 x86_64 PGI y y y y
|
||
CentOS 7.1 Linux 3.10.0 x86_64 GNU y y y y
|
||
CentOS 7.1 Linux 3.10.0 x86_64 Intel y y y y
|
||
Linux 2.6.32-431.11.2.el6.ppc64 y y y y
|
||
|
||
Compiler versions for each platform are listed in the preceding
|
||
"Supported Platforms" table.
|
||
|
||
|
||
More Tested Platforms
|
||
=====================
|
||
The following platforms are not supported but have been tested for this release.
|
||
|
||
Linux 2.6.18-431.11.2.el6 g95 (GCC 4.0.3 (g95 0.94!)
|
||
#1 SMP x86_64 GNU/Linux
|
||
(platypus)
|
||
|
||
Windows 7 Visual Studio 2008 (cmake)
|
||
|
||
Windows 7 x64 Visual Studio 2008 (cmake)
|
||
|
||
Windows 10 Visual Studio 2013 w/ Intel Fortran 15 (cmake)
|
||
|
||
Windows 10 x64 Visual Studio 2013 w/ Intel Fortran 15 (cmake)
|
||
|
||
Debian7.5.0 3.2.0-4-amd64 #1 SMP Debian 3.2.51-1 x86_64 GNU/Linux
|
||
gcc (Debian 4.7.2-5) 4.7.2
|
||
GNU Fortran (Debian 4.7.2-5) 4.7.2
|
||
(cmake and autotools)
|
||
|
||
Fedora20 3.15.3-200.fc20.x86_64 #1 SMP x86_64 x86_64 x86_64 GNU/Linux
|
||
gcc (GCC) 4.8.3 20140624 (Red Hat 4.8.3-1)
|
||
GNU Fortran (GCC) 4.8.3 20140624 (Red Hat 4.8.3-1)
|
||
(cmake and autotools)
|
||
|
||
SUSE 13.1 3.11.10-17-desktop #1 SMP PREEMPT x86_64 x86_64 x86_64 GNU/Linux
|
||
gcc (SUSE Linux) 4.8.1
|
||
GNU Fortran (SUSE Linux) 4.8.1
|
||
(cmake and autotools)
|
||
|
||
Ubuntu 14.04 3.13.0-35-generic #62-Ubuntu SMP x86_64 GNU/Linux
|
||
gcc (Ubuntu/Linaro 4.9.1-0ubuntu1) 4.9.1
|
||
GNU Fortran (Ubuntu/Linaro 4.9.1-0ubuntu1) 4.9.1
|
||
(cmake and autotools)
|
||
|
||
hopper.nersc.gov PrgEnv-gnu/5.2.40
|
||
gcc (GCC) 4.9.2 20141030 (Cray Inc.)
|
||
GNU Fortran (GCC) 4.9.2 20141030 (Cray Inc.)
|
||
g++ (GCC) 4.9.2 20141030 (Cray Inc.)
|
||
|
||
|
||
Known Problems
|
||
==============
|
||
* On windows platforms in debug configurations, the VFD flush1 tests will fail
|
||
with the split and multi VFD drivers. These tests will display a modal debug
|
||
dialog which must be answered or wait for the test timeout to expire.
|
||
(ADB - 2014/06/23 - HDFFV-8851)
|
||
|
||
* CLANG compiler with the options -fcatch-undefined-behavior and -ftrapv
|
||
catches some undefined behavior in the alignment algorithm of the macro DETECT_I
|
||
in H5detect.c (Issue 8147). Since the algorithm is trying to detect the alignment
|
||
of integers, ideally the flag -fcatch-undefined-behavior shouldn't to be used for
|
||
H5detect.c. In the future, we can separate flags for H5detect.c from the rest of
|
||
the library. (SLU - 2013/10/16)
|
||
|
||
* Make provided by Solaris fails in "make check". Solaris users should use
|
||
gmake to build and install the HDF5 software. (AKC - 2013/10/08 - HDFFV-8534)
|
||
|
||
* The C++ and FORTRAN bindings are not currently working on FreeBSD with the
|
||
native release 8.2 compilers (4.2.1), but are working with gcc 4.6 from the
|
||
ports (and probably gcc releases after that).
|
||
(QAK - 2012/10/19)
|
||
|
||
* The following h5dump test case fails in BG/P machines (and potentially other
|
||
machines that use a command script to launch executables):
|
||
|
||
h5dump --no-compact-subset -d "AHFINDERDIRECT::ah_centroid_t[0] it=0 tl=0"
|
||
tno-subset.h5
|
||
|
||
This is due to the embedded spaces in the dataset name being interpreted
|
||
by the command script launcher as meta-characters, thus passing three
|
||
arguments to h5dump's -d flag. The command passes if run by hand, just
|
||
not via the test script.
|
||
(AKC - 2012/05/03)
|
||
|
||
* The STDIO VFD does not work on some architectures, possibly due to 32/64
|
||
bit or large file issues. The basic STDIO VFD test is known to fail on
|
||
64-bit SunOS 5.10 on SPARC when built with -m64 and 32-bit OS X/Darwin
|
||
10.7.0. The STDIO VFD test has been disabled while we investigate and
|
||
a fix should appear in a future release.
|
||
(DER - 2011/10/14 - HDFFV-8235)
|
||
|
||
* h5diff can report inconsistent results when comparing datasets of enum type
|
||
that contain invalid values. This is due to how enum types are handled in
|
||
the library and will be addressed in a future release.
|
||
(DER - 2011/10/14 - HDFFV-7527)
|
||
|
||
* The links test can fail under the stdio VFD due to some issues with external
|
||
links. This will be investigated and fixed in a future release.
|
||
(DER - 2011/10/14 - HDFFV-7768)
|
||
|
||
* After the shared library support was fixed for some bugs, it was discovered
|
||
that "make prefix=XXX install" no longer works for shared libraries. It
|
||
still works correctly for static libraries. Therefore, if you want to
|
||
install the HDF5 shared libraries in a location such as /usr/local/hdf5,
|
||
you need to specify the location via the --prefix option during configure
|
||
time. E.g, ./configure --prefix=/usr/local/hdf5 ...
|
||
(AKC - 2011/05/07 - HDFFV-7583)
|
||
|
||
* The parallel test, t_shapesame, in testpar/, may run for a long time and may
|
||
be terminated by the alarm signal. If that happens, one can increase the
|
||
alarm seconds (default is 1200 seconds = 20 minutes) by setting the
|
||
environment variable, $HDF5_ALARM_SECONDS, to a larger value such as 3600
|
||
(60 minutes). Note that the t_shapesame test may fail in some systems
|
||
(see the "While working on the 1.8.6 release..." problem below). If
|
||
it does, it will waste more time if $HDF5_ALARM_SECONDS is set
|
||
to a larger value.
|
||
(AKC - 2011/05/07)
|
||
|
||
* Shared Fortran libraries are not quite working on AIX. While they are
|
||
generated when --enable-shared is specified, the fortran and hl/fortran
|
||
tests fail. the issue. HL and C++ shared libraries should now be
|
||
working as intended, however.
|
||
(MAM - 2011/04/20)
|
||
|
||
* While working on the 1.8.6 release of HDF5, a bug was discovered that can
|
||
occur when reading from a dataset in parallel shortly after it has been
|
||
written to collectively. The issue was exposed by a new test in the parallel
|
||
HDF5 test suite, but had existed before that. We believe the problem lies with
|
||
certain MPI implementations and/or file systems.
|
||
|
||
We have provided a pure MPI test program, as well as a standalone HDF5
|
||
program, that can be used to determine if this is an issue on your system.
|
||
They should be run across multiple nodes with a varying number of processes.
|
||
These programs can be found at:
|
||
http://www.hdfgroup.org/ftp/HDF5/examples/known_problems/
|
||
(NAF - 2011/01/19)
|
||
|
||
* All the VFL drivers aren't backward compatible. In H5FDpublic.h, the
|
||
structure H5FD_class_t changed in 1.8. There is new parameter added to
|
||
get_eoa and set_eoa callback functions. A new callback function
|
||
get_type_map was added in. The public function H5FDrealloc was taken
|
||
out in 1.8. The problem only happens when users define their own driver
|
||
for 1.6 and try to plug in 1.8 library. Because there's only one user
|
||
complaining about it, we (Elena, Quincey, and I) decided to leave it as
|
||
it is (see bug report #1279). Quincey will make a plan for 1.10.
|
||
(SLU - 2010/02/02)
|
||
|
||
* The --enable-static-exec configure flag will only statically link libraries
|
||
if the static version of that library is present. If only the shared version
|
||
of a library exists (i.e., most system libraries on Solaris, AIX, and Mac,
|
||
for example, only have shared versions), the flag should still result in a
|
||
successful compilation, but note that the installed executables will not be
|
||
fully static. Thus, the only guarantee on these systems is that the
|
||
executable is statically linked with just the HDF5 library.
|
||
(MAM - 2009/11/04)
|
||
|
||
* A dataset created or rewritten with a v1.6.3 library or after cannot be read
|
||
with the v1.6.2 library or before when the Fletcher32 EDC filter is enabled.
|
||
There was a bug in the calculation of the Fletcher32 checksum in the
|
||
library before v1.6.3; the checksum value was not consistent between big-
|
||
endian and little-endian systems. This bug was fixed in Release 1.6.3.
|
||
However, after fixing the bug, the checksum value was no longer the same as
|
||
before on little-endian system. Library releases after 1.6.4 can still read
|
||
datasets created or rewritten with an HDF5 library of v1.6.2 or before.
|
||
(SLU - 2005/06/30)
|
||
|
||
|
||
%%%%1.8.16%%%%
|
||
|
||
|
||
HDF5 version 1.8.16 released on 2015-11-10
|
||
================================================================================
|
||
|
||
INTRODUCTION
|
||
============
|
||
|
||
This document describes the differences between HDF5-1.8.15 and
|
||
HDF5-1.8.16, and contains information on the platforms tested and
|
||
known problems in HDF5-1.8.16.
|
||
For more details, see the files HISTORY-1_0-1_8_0_rc3.txt
|
||
and HISTORY-1_8.txt in the release_docs/ directory of the HDF5 source.
|
||
|
||
Links to the HDF5 1.8.16 source code, documentation, and additional materials
|
||
can be found on the HDF5 web page at:
|
||
|
||
http://www.hdfgroup.org/products/hdf5/
|
||
|
||
The HDF5 1.8.16 release can be obtained from:
|
||
|
||
http://www.hdfgroup.org/HDF5/release/obtain5.html
|
||
|
||
User documentation for 1.8.16 can be accessed directly at this location:
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/
|
||
|
||
New features in the HDF5-1.8.x release series, including brief general
|
||
descriptions of some new and modified APIs, are described in the "What's New
|
||
in 1.8.0?" document:
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/ADGuide/WhatsNew180.html
|
||
|
||
All new and modified APIs are listed in detail in the "HDF5 Software Changes
|
||
from Release to Release" document, in the section "Release 1.8.16 (current
|
||
release) versus Release 1.8.15":
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/ADGuide/Changes.html
|
||
|
||
If you have any questions or comments, please send them to the HDF Help Desk:
|
||
|
||
help@hdfgroup.org
|
||
|
||
|
||
CONTENTS
|
||
========
|
||
|
||
- New Features
|
||
- Support for New Platforms, Languages, and Compilers
|
||
- Bug Fixes since HDF5-1.8.15
|
||
- Supported Platforms
|
||
- Supported Configuration Features Summary
|
||
- More Tested Platforms
|
||
- Known Problems
|
||
|
||
New Features
|
||
============
|
||
|
||
Configuration and Build
|
||
-------------
|
||
- The thread-safety + high-level library combination has been marked
|
||
as "unsupported" in the Autotools
|
||
|
||
The global lock used by the thread-safety feature has never been
|
||
raised to the high-level library level, making it possible that
|
||
the library state could change if a context switch were to occur in
|
||
a high-level library call. Because of this, the combination of
|
||
thread-safety and high-level library is officially unsupported by
|
||
The HDF Group.
|
||
|
||
In the past, although this combination has never been supported, this
|
||
was not enforced by the build systems. These changes will cause an
|
||
Autotools configure step to fail if --enable-threadsafe and
|
||
--enable-hl are combined unless additional options are specified.
|
||
Since the high-level library is built by default, this means that
|
||
these extra configuration options will need to be used any time
|
||
--enable-threadsafe is selected.
|
||
|
||
To build with --enable-threadsafe, either:
|
||
|
||
1) Use --disable-hl to disable the high-level library (recommended)
|
||
|
||
2) Use --enable-unsupported to build the high-level library with
|
||
the thread-safety feature.
|
||
|
||
(DER - 2015/09/10 HDFFV-8719)
|
||
|
||
- Using CMake now builds both static and shared libraries.
|
||
|
||
The CMake files have been updated to build both static and shared
|
||
libraries, with tools only built statically. The packaging of the
|
||
libraries and tools will include cmake-config files that allows
|
||
projects to choose either shared or static (default) libraries
|
||
to be found with the find_package command using the COMPONENTS
|
||
keyword and a list of components. The imported libraries will
|
||
include any interface specific settings and dependent libraries.
|
||
|
||
The default setting for BUILD_SHARED_LIBS has changed from OFF
|
||
to ON, which builds both static and shared libraries. The static
|
||
libraries are always built because of tools requirements.
|
||
|
||
(ADB - 2015/08/24 HDFFV-5881)
|
||
|
||
- Inline functions now correctly annotated with Autotools builds.
|
||
|
||
The method used to detect the appropriate inline markup scheme was
|
||
nonfunctional in Autotools builds. The Autotools have been modified
|
||
to correctly detect the compiler's inline markup symbol and apply it
|
||
to the source. Note that only a very small number of internal
|
||
functions are marked inline so this was not a very big change or
|
||
likely to significantly affect performance.
|
||
|
||
As a part of this change, the H5_inline symbol no longer appears in
|
||
H5pubconf.h.
|
||
|
||
(DER - 2015/08/13 HDFFV-9119, HDFFV-9421)
|
||
|
||
- Removed obsolete/unmaintained files from config/
|
||
|
||
Several files were removed from the config directory. These files
|
||
represent old operating systems, were no longer necessary, and/or
|
||
were no longer maintained. configure.ac was updated to reflect the
|
||
removed files.
|
||
|
||
Removed:
|
||
|
||
craynv
|
||
dec-flags
|
||
hpux11.23
|
||
ia64-linux-gnu
|
||
nec-superux14.1
|
||
sv1-cray
|
||
x86_64-redstorm-linux-gnu
|
||
powerpc-ibm-aix5.x
|
||
|
||
As a part of this work, a few lines that deal with locating the
|
||
sys/fpu.h header on SGI machines and some OSF/1 configure lines
|
||
were also removed. The Solaris config was also renamed to not have
|
||
a version number since the version number was ignored by configure
|
||
as it applies to all Solaris versions.
|
||
|
||
(DER - 2015/09/04 HDFFV-9116)
|
||
|
||
- Removed the FP_TO_INTEGER_OVERFLOW_WORKS macro/defines from the library
|
||
|
||
This was for working around bugs in the Cray X1 compiler, which is no
|
||
longer supported.
|
||
|
||
(DER - 2015/09/09 HDFFV-9191)
|
||
|
||
- Removed the H5_SW_ULONG_TO_FP_BOTTOM_BIT_WORKS and
|
||
H5_FP_TO_ULLONG_BOTTOM_BIT_WORKS symbols and associated code.
|
||
|
||
H5_SW_ULONG_TO_FP_BOTTOM_BIT_WORKS was a work-around on old 64-bit
|
||
SGI and Solaris systems.
|
||
|
||
H5_FP_TO_ULLONG_BOTTOM_BIT_WORKS was a work-around for old PGI
|
||
compilers on Linux.
|
||
|
||
Neither of these were used in any current library code and only appeared
|
||
in the dt_arith test.
|
||
|
||
(DER - 2015/09/09 HDFFV-9187)
|
||
|
||
- Removed CONVERT_DENORMAL_FLOAT symbol and associated code from the
|
||
library.
|
||
|
||
This was only set in configure files for Cray and NEC computers. These
|
||
config files no longer exist so there is no effect on currently
|
||
supported platforms.
|
||
|
||
(DER - 2015/09/09 HDFFV-9188)
|
||
|
||
- Removed _BSD_SOURCE and _DEFAULT_SOURCE from configure.ac
|
||
|
||
These are old BSD-compatibility symbols that are no longer needed by
|
||
the library.
|
||
|
||
(DER - 2015/09/10 HDFFV-9079)
|
||
|
||
- Removed HW_FP_TO_LLONG_NOT_WORKS symbol and associated code from the
|
||
library.
|
||
|
||
This was part of a work-around for the VS.NET 2003 compiler, which is
|
||
no longer supported.
|
||
|
||
(DER - 2015/09/10 HDFFV-9189)
|
||
|
||
- Removed the BAD_LOG2_CODE_GENERATED symbol and associated code from the
|
||
library.
|
||
|
||
This was an IRIX work-around.
|
||
|
||
(DER - 2015/09/11 HDFFV-9195)
|
||
|
||
- Decoupled shared object version numbers for wrapper libraries from the
|
||
shared object version number for the HDF5 library. These will be
|
||
maintained on an individual basis according to the interface changes
|
||
specific to these wrapper libraries.
|
||
|
||
For HDF5 1.8.16 the shared object version numbers were changed from
|
||
10.0.1 to 10.1.0 for the HDF5 library due to added APIs. For the C++
|
||
wrapper library they were changed from 10.0.1 to 11.0.0 due to changes
|
||
in existing APIs. For all other wrapper libraries the versions were
|
||
changed from 10.0.1 to 10.0.2 because while the APIs had no changes
|
||
there have been changes in code that did not result in changes to their
|
||
interfaces.
|
||
|
||
(LRK - 2015/10/28)
|
||
|
||
Library
|
||
-------
|
||
|
||
- H5F_ACC_DEBUG flag for H5Fopen/create: functionality removed
|
||
|
||
The symbol was used to emit some extra debugging information
|
||
for HDF Group developers in the multi VFD. The underlying
|
||
functionality has been removed due to disuse. The symbol
|
||
remains defined since it was visible in H5Fpublic.h but it
|
||
has been set to zero and has no effect anywhere in the library.
|
||
|
||
(DER - 2015-05-02, HDFFV-1074)
|
||
|
||
- New public API call: H5is_library_threadsafe()
|
||
|
||
This API call indicates if the library was built with thread-
|
||
safety enabled.
|
||
|
||
(DER - 2015-09-01, HDFFV-9496)
|
||
|
||
Parallel Library
|
||
----------------
|
||
- None
|
||
|
||
Tools
|
||
-----
|
||
- None
|
||
|
||
High-Level APIs
|
||
---------------
|
||
- None
|
||
|
||
Fortran API
|
||
-----------
|
||
- None
|
||
|
||
|
||
C++ API
|
||
-------
|
||
- Class H5::ObjCreatPropList is added for the object creation property
|
||
list class.
|
||
|
||
Class H5::ObjCreatPropList is derived from H5::PropList and is a
|
||
baseclass of H5::DSetCreatPropList. Additional property list classes
|
||
will be derived from H5::ObjCreatPropList when they are added to the
|
||
library in future releases.
|
||
|
||
(BMR, 2015/10/13, Part of HDFFV-9169)
|
||
|
||
- New Wrappers for C Functions H5P[s/g]et_attr_phase_change and
|
||
H5P[s/g]et_attr_creation_order.
|
||
|
||
Wrappers were added to class H5::ObjCreatPropList for the C Functions
|
||
H5Pset_attr_phase_change: H5::ObjCreatPropList::setAttrPhaseChange
|
||
H5Pget_attr_phase_change: H5::ObjCreatPropList::getAttrPhaseChange
|
||
H5Pset_attr_creation_order: H5::ObjCreatPropList::setAttrCrtOrder
|
||
H5Pget_attr_creation_order: H5::ObjCreatPropList::getAttrCrtOrder
|
||
|
||
(BMR, 2015/10/13, Part of HDFFV-9167 and HDFFV-9169)
|
||
|
||
|
||
Support for New Platforms, Languages, and Compilers
|
||
===================================================
|
||
- Added VS2015 with Intel Fortran 16 to supported Windows 7 platforms
|
||
|
||
|
||
Bug Fixes since HDF5-1.8.15
|
||
===========================
|
||
|
||
Configuration
|
||
-------------
|
||
|
||
- CMake test for long long printf format improved
|
||
|
||
The CMake configuration test for determining the printf format string
|
||
for printing a long long integer was fixed. The test would crash
|
||
when executed with VS2015.
|
||
|
||
(ADB - 2015-10-21 HDFFV-9488)
|
||
|
||
Library
|
||
-------
|
||
- VS2015 removed global variable timezone
|
||
|
||
The usage of the global variable timezone was modified for VS2015 by
|
||
adding an alias to Windows builds.
|
||
|
||
(ADB - 2015-10-23 HDFFV-9550)
|
||
|
||
- Fix potential error in H5Iclear_type
|
||
|
||
If the ID type's close callback could close another ID of the same type,
|
||
H5Iclear_type could occasionally run into problems due to the inner
|
||
workings of the skip list package. This could potentially cause an
|
||
error on library shutdown without calling H5Iclear_type directly. This
|
||
issue has been fixed.
|
||
|
||
(NAF - 2015-08-12)
|
||
|
||
- Fix uninitialized memory in dataspace selection code
|
||
|
||
When creating a dataspace with H5Screate and setting the extent with
|
||
H5Sextent_copy, the selection offset was not initialized, potentially
|
||
causing invalid I/O. There may be other cases where this happened.
|
||
Modified the library to always initialize the offset.
|
||
|
||
(NAF - 2015-09-08)
|
||
|
||
- Truncate file in H5Fflush() if EOA != EOF to avoid file
|
||
corruption in certain scenarios
|
||
|
||
In the following scenario, the resulting HDF5 file would be
|
||
incorrectly corrupted because the truncate operation
|
||
was at some point wrongly moved out of the flush operation:
|
||
- Create a new file with a single dataset.
|
||
- Write parts of the dataset (make sure that some values at
|
||
the end of the dataset are not initialized).
|
||
- Flush the file.
|
||
- Crash the program.
|
||
- Try to open the file with h5dump or h5debug, but the
|
||
resulting file is corrupted.
|
||
|
||
(MSC - 2015-06-15 HDFFV-9418)
|
||
|
||
|
||
Parallel Library
|
||
----------------
|
||
-
|
||
(XYZ - YYYY/MM/DD HDFFV-####)
|
||
|
||
Performance
|
||
-------------
|
||
- None
|
||
|
||
Tools
|
||
-----
|
||
- VS2015 changed the default format for printing of exponents
|
||
|
||
VS2015 default format for exponents changed with the elimination
|
||
of the leading '0'. CMake now tests for the VS2015 compiler and
|
||
adjusts which reference files are used by tests.
|
||
|
||
(ADB - 2015-10-23 HDFFV-9550)
|
||
|
||
- Fixed h5repack with user-defined filters
|
||
|
||
h5repack would throw a buffer overrun exception on Windows when
|
||
parsing a user-defined filter ID of 5 digits. A local variable in
|
||
the parse routine was not of sufficient size.
|
||
|
||
(ADB - 2015/09/01 HDFFV-9515)
|
||
|
||
Fortran API
|
||
------------
|
||
- None
|
||
|
||
|
||
C++ API
|
||
------
|
||
- Removed memory leaks
|
||
|
||
The static global constant objects were changed to constant references
|
||
referencing dynamically allocated objects. This ensures that the clean-up
|
||
process in the C++ library occurs before the termination of the C library
|
||
and prevents memory leaks because the previous global constants were not
|
||
properly deleted before the C library termination.
|
||
|
||
(BMR, 2015/10/13, HDFFV-9529)
|
||
|
||
- Fixed the problem about identifiers being closed prematurely.
|
||
|
||
The C++ library needs to increment the ID's reference counter when it is
|
||
duplicated in the form of C++ objects, but not when the ID is obtained
|
||
from a C function. With this approach, both problems, prematurely
|
||
closing ID's and memory leaks due to ID's not being closed, should be
|
||
eliminated.
|
||
|
||
(BMR, 2015/10/15, HDFFV-7947)
|
||
|
||
|
||
High-Level APIs:
|
||
------
|
||
- None
|
||
|
||
|
||
Fortran High-Level APIs:
|
||
------------------------
|
||
- None
|
||
|
||
|
||
Testing
|
||
-------
|
||
- None
|
||
|
||
|
||
Supported Platforms
|
||
===================
|
||
The following platforms are supported and have been tested for this release.
|
||
They are built with the configure process unless specified otherwise.
|
||
|
||
AIX 6.1 xlc/xlc_r 10.1.0.5
|
||
(NASA G-ADA) xlC/xlC_r 10.1.0.5
|
||
xlf90/xlf90_r 12.1.0.6
|
||
|
||
Linux 2.6.32-573.3.1.el6 GNU C (gcc), Fortran (gfortran), C++ (g++)
|
||
#1 SMP x86_64 GNU/Linux compilers:
|
||
(platypus) Version 4.4.7 20120313
|
||
Version 4.8.4, Version 5.2.0
|
||
PGI C, Fortran, C++ for 64-bit target on
|
||
x86-64;
|
||
Version 15.7-0
|
||
Intel(R) C (icc), C++ (icpc), Fortran (icc)
|
||
compilers:
|
||
Version 15.0.3.187 Build 20150407
|
||
MPICH 3.1.4 compiled with GCC 4.9.3
|
||
|
||
Linux 2.6.32-504.8.1.el6.ppc64 gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-11)
|
||
#1 SMP ppc64 GNU/Linux g++ (GCC) 4.4.7 20120313 (Red Hat 4.4.7-11)
|
||
(ostrich) GNU Fortran (GCC) 4.4.7 20120313 (Red Hat 4.4.7-11)
|
||
IBM XL C/C++ V13.1
|
||
IBM XL Fortran V15.1
|
||
|
||
Linux 3.10.0-229.14.1.el7 GNU C (gcc), Fortran (gfortran), C++ (g++)
|
||
#1 SMP x86_64 GNU/Linux compilers:
|
||
(kituo/moohan) Version 4.8.3 20140911 (Red Hat 4.8.3-9)
|
||
Version 5.2.0
|
||
Intel(R) C (icc), C++ (icpc), Fortran (icc)
|
||
compilers:
|
||
Version 15.0.3.187 Build 20150407
|
||
MPICH 3.1.4 compiled with GCC 4.9.3
|
||
|
||
SunOS 5.11 32- and 64-bit Sun C 5.12 SunOS_sparc
|
||
(emu) Sun Fortran 95 8.6 SunOS_sparc
|
||
Sun C++ 5.12 SunOS_sparc
|
||
|
||
Windows 7 Visual Studio 2012 w/ Intel Fortran 15 (cmake)
|
||
Visual Studio 2013 w/ Intel Fortran 15 (cmake)
|
||
Visual Studio 2015 w/ Intel Fortran 16 (cmake)
|
||
Cygwin(CYGWIN_NT-6.1 2.2.1(0.289/5/3) gcc(4.9.3) compiler and gfortran)
|
||
(cmake and autotools)
|
||
|
||
Windows 7 x64 Visual Studio 2012 w/ Intel Fortran 15 (cmake)
|
||
Visual Studio 2013 w/ Intel Fortran 15 (cmake)
|
||
Visual Studio 2015 w/ Intel Fortran 16 (cmake)
|
||
|
||
Windows 8.1 Visual Studio 2012 w/ Intel Fortran 15 (cmake)
|
||
Visual Studio 2013 w/ Intel Fortran 15 (cmake)
|
||
|
||
Windows 8.1 x64 Visual Studio 2012 w/ Intel Fortran 15 (cmake)
|
||
Visual Studio 2013 w/ Intel Fortran 15 (cmake)
|
||
|
||
Mac OS X Mt. Lion 10.8.5 Apple clang/clang++ version 5.1 from Xcode 5.1
|
||
64-bit gfortran GNU Fortran (GCC) 4.8.2
|
||
(swallow/kite) Intel icc/icpc/ifort version 15.0.3
|
||
|
||
Mac OS X Mavericks 10.9.5 Apple clang/clang++ version 6.0 from Xcode 6.2.0
|
||
64-bit gfortran GNU Fortran (GCC) 4.9.2
|
||
(wren/quail) Intel icc/icpc/ifort version 15.0.3
|
||
|
||
Mac OS X Yosemite 10.10.5 Apple clang/clang++ version 6.0 from Xcode 7.0.0
|
||
64-bit gfortran GNU Fortran (GCC) 4.9.2
|
||
(osx1010dev/osx1010test) Intel icc/icpc/ifort version 15.0.3
|
||
|
||
Tested Configuration Features Summary
|
||
=====================================
|
||
|
||
In the tables below
|
||
y = tested
|
||
n = not tested in this release
|
||
C = Cluster
|
||
W = Workstation
|
||
x = not working in this release
|
||
dna = does not apply
|
||
( ) = footnote appears below second table
|
||
<blank> = testing incomplete on this feature or platform
|
||
|
||
Platform C F90/ F90 C++ zlib SZIP
|
||
parallel F2003 parallel
|
||
SunOS 5.11 32-bit n y/y n y y y
|
||
SunOS 5.11 64-bit n y/y n y y y
|
||
Windows 7 y y/y n y y y
|
||
Windows 7 x64 y y/y n y y y
|
||
Windows 7 Cygwin n y/y n y y n
|
||
Windows 8.1 n y/y n y y y
|
||
Windows 8.1 x64 n y/y n y y y
|
||
Mac OS X Mountain Lion 10.8.5 64-bit n y/y n y y y
|
||
Mac OS X Mavericks 10.9.5 64-bit n y/y n y y y
|
||
Mac OS X Yosemeti 10.10.5 64-bit n y/y n y y y
|
||
AIX 6.1 32- and 64-bit n y/n n y y y
|
||
CentOS 6.7 Linux 2.6.32 x86_64 GNU y y/y y y y y
|
||
CentOS 6.7 Linux 2.6.32 x86_64 Intel n y/y n y y y
|
||
CentOS 6.7 Linux 2.6.32 x86_64 PGI n y/y n y y y
|
||
CentOS 7.1 Linux 3.10.0 x86_64 GNU y y/y y y y y
|
||
CentOS 7.1 Linux 3.10.0 x86_64 Intel n y/y n y y y
|
||
Linux 2.6.32-431.11.2.el6.ppc64 n y/n n y y y
|
||
|
||
Platform Shared Shared Shared Thread-
|
||
C libs F90 libs C++ libs safe
|
||
SunOS 5.11 32-bit y y y y
|
||
SunOS 5.11 64-bit y y y y
|
||
Windows 7 y y y y
|
||
Windows 7 x64 y y y y
|
||
Windows 7 Cygwin n n n y
|
||
Windows 8.1 y y y y
|
||
Windows 8.1 x64 y y y y
|
||
Mac OS X Mountain Lion 10.8.5 64-bit y n y y
|
||
Mac OS X Mavericks 10.9.5 64-bit y n y y
|
||
Mac OS X Yosemeti 10.10.5 64-bit y n y y
|
||
AIX 6.1 32- and 64-bit y n n y
|
||
CentOS 6.7 Linux 2.6.32 x86_64 GNU y y y y
|
||
CentOS 6.7 Linux 2.6.32 x86_64 Intel y y y y
|
||
CentOS 6.7 Linux 2.6.32 x86_64 PGI y y y y
|
||
CentOS 7.1 Linux 3.10.0 x86_64 GNU y y y y
|
||
CentOS 7.1 Linux 3.10.0 x86_64 Intel y y y y
|
||
Linux 2.6.32-431.11.2.el6.ppc64 y y y y
|
||
|
||
Compiler versions for each platform are listed in the preceding
|
||
"Supported Platforms" table.
|
||
|
||
|
||
More Tested Platforms
|
||
=====================
|
||
The following platforms are not supported but have been tested for this release.
|
||
|
||
Linux 2.6.18-431.11.2.el6 g95 (GCC 4.0.3 (g95 0.94!)
|
||
#1 SMP x86_64 GNU/Linux
|
||
(platypus)
|
||
|
||
Mac OS X El Capitan 10.11 Apple clang/clang++ version 7.0.0 from Xcode 7.0.1
|
||
64-bit gfortran GNU Fortran (GCC) 5.2.0
|
||
(VM)
|
||
|
||
Windows 7 Visual Studio 2008 (cmake)
|
||
|
||
Windows 7 x64 Visual Studio 2008 (cmake)
|
||
|
||
Windows 10 Visual Studio 2013 w/ Intel Fortran 15 (cmake)
|
||
|
||
Windows 10 x64 Visual Studio 2013 w/ Intel Fortran 15 (cmake)
|
||
|
||
Debian7.5.0 3.2.0-4-amd64 #1 SMP Debian 3.2.51-1 x86_64 GNU/Linux
|
||
gcc (Debian 4.7.2-5) 4.7.2
|
||
GNU Fortran (Debian 4.7.2-5) 4.7.2
|
||
(cmake and autotools)
|
||
|
||
Fedora20 3.15.3-200.fc20.x86_64 #1 SMP x86_64 x86_64 x86_64 GNU/Linux
|
||
gcc (GCC) 4.8.3 20140624 (Red Hat 4.8.3-1)
|
||
GNU Fortran (GCC) 4.8.3 20140624 (Red Hat 4.8.3-1)
|
||
(cmake and autotools)
|
||
|
||
SUSE 13.1 3.11.10-17-desktop #1 SMP PREEMPT x86_64 x86_64 x86_64 GNU/Linux
|
||
gcc (SUSE Linux) 4.8.1
|
||
GNU Fortran (SUSE Linux) 4.8.1
|
||
(cmake and autotools)
|
||
|
||
Ubuntu 14.04 3.13.0-35-generic #62-Ubuntu SMP x86_64 GNU/Linux
|
||
gcc (Ubuntu/Linaro 4.9.1-0ubuntu1) 4.9.1
|
||
GNU Fortran (Ubuntu/Linaro 4.9.1-0ubuntu1) 4.9.1
|
||
(cmake and autotools)
|
||
|
||
hopper.nersc.gov PrgEnv-gnu/5.2.40
|
||
gcc (GCC) 4.9.2 20141030 (Cray Inc.)
|
||
GNU Fortran (GCC) 4.9.2 20141030 (Cray Inc.)
|
||
g++ (GCC) 4.9.2 20141030 (Cray Inc.)
|
||
|
||
|
||
Known Problems
|
||
==============
|
||
* On Windows platforms in debug configurations, the VFD flush1 tests will fail
|
||
with the split and multi VFD drivers. These tests will display a modal debug
|
||
dialog which must be answered or wait for the test timeout to expire.
|
||
(ADB - 2014/06/23 - HDFFV-8851)
|
||
|
||
* CLANG compiler with the options -fcatch-undefined-behavior and -ftrapv
|
||
catches some undefined behavior in the alignment algorithm of the macro DETECT_I
|
||
in H5detect.c (Issue 8147). Since the algorithm is trying to detect the alignment
|
||
of integers, ideally the flag -fcatch-undefined-behavior shouldn't to be used for
|
||
H5detect.c. In the future, we can separate flags for H5detect.c from the rest of
|
||
the library. (SLU - 2013/10/16)
|
||
|
||
* Make provided by Solaris fails in "make check". Solaris users should use
|
||
gmake to build and install the HDF5 software. (AKC - 2013/10/08 - HDFFV-8534)
|
||
|
||
* The C++ and FORTRAN bindings are not currently working on FreeBSD with the
|
||
native release 8.2 compilers (4.2.1), but are working with gcc 4.6 from the
|
||
ports (and probably gcc releases after that).
|
||
(QAK - 2012/10/19)
|
||
|
||
* The following h5dump test case fails in BG/P machines (and potentially other
|
||
machines that use a command script to launch executables):
|
||
|
||
h5dump --no-compact-subset -d "AHFINDERDIRECT::ah_centroid_t[0] it=0 tl=0"
|
||
tno-subset.h5
|
||
|
||
This is due to the embedded spaces in the dataset name being interpreted
|
||
by the command script launcher as meta-characters, thus passing three
|
||
arguments to h5dump's -d flag. The command passes if run by hand, just
|
||
not via the test script.
|
||
(AKC - 2012/05/03)
|
||
|
||
* The STDIO VFD does not work on some architectures, possibly due to 32/64
|
||
bit or large file issues. The basic STDIO VFD test is known to fail on
|
||
64-bit SunOS 5.10 on SPARC when built with -m64 and 32-bit OS X/Darwin
|
||
10.7.0. The STDIO VFD test has been disabled while we investigate and
|
||
a fix should appear in a future release.
|
||
(DER - 2011/10/14 - HDFFV-8235)
|
||
|
||
* h5diff can report inconsistent results when comparing datasets of enum type
|
||
that contain invalid values. This is due to how enum types are handled in
|
||
the library and will be addressed in a future release.
|
||
(DER - 2011/10/14 - HDFFV-7527)
|
||
|
||
* The links test can fail under the stdio VFD due to some issues with external
|
||
links. This will be investigated and fixed in a future release.
|
||
(DER - 2011/10/14 - HDFFV-7768)
|
||
|
||
* After the shared library support was fixed for some bugs, it was discovered
|
||
that "make prefix=XXX install" no longer works for shared libraries. It
|
||
still works correctly for static libraries. Therefore, if you want to
|
||
install the HDF5 shared libraries in a location such as /usr/local/hdf5,
|
||
you need to specify the location via the --prefix option during configure
|
||
time. E.g, ./configure --prefix=/usr/local/hdf5 ...
|
||
(AKC - 2011/05/07 - HDFFV-7583)
|
||
|
||
* The parallel test, t_shapesame, in testpar/, may run for a long time and may
|
||
be terminated by the alarm signal. If that happens, one can increase the
|
||
alarm seconds (default is 1200 seconds = 20 minutes) by setting the
|
||
environment variable, $HDF5_ALARM_SECONDS, to a larger value such as 3600
|
||
(60 minutes). Note that the t_shapesame test may fail in some systems
|
||
(see the "While working on the 1.8.6 release..." problem below). If
|
||
it does, it will waste more time if $HDF5_ALARM_SECONDS is set
|
||
to a larger value.
|
||
(AKC - 2011/05/07)
|
||
|
||
* Shared Fortran libraries are not quite working on AIX. While they are
|
||
generated when --enable-shared is specified, the Fortran and HL/Fortran
|
||
tests fail. HL and C++ shared libraries should now be working as intended,
|
||
however.
|
||
(MAM - 2011/04/20)
|
||
|
||
* While working on the 1.8.6 release of HDF5, a bug was discovered that can
|
||
occur when reading from a dataset in parallel shortly after it has been
|
||
written to collectively. The issue was exposed by a new test in the parallel
|
||
HDF5 test suite, but had existed before that. We believe the problem lies with
|
||
certain MPI implementations and/or file systems.
|
||
|
||
We have provided a pure MPI test program, as well as a standalone HDF5
|
||
program, that can be used to determine if this is an issue on your system.
|
||
They should be run across multiple nodes with a varying number of processes.
|
||
These programs can be found at:
|
||
http://www.hdfgroup.org/ftp/HDF5/examples/known_problems/
|
||
(NAF - 2011/01/19)
|
||
|
||
* All of the VFL drivers aren't backward compatible. In H5FDpublic.h, the
|
||
structure H5FD_class_t changed in 1.8. There is new parameter added to
|
||
get_eoa and set_eoa callback functions. A new callback function
|
||
get_type_map was added in. The public function H5FDrealloc was taken
|
||
out in 1.8. The problem only happens when users define their own driver
|
||
for 1.6 and try to plug in 1.8 library. Because there's only one user
|
||
complaining about it, we (Elena, Quincey, and I) decided to leave it as
|
||
it is (see bug report #1279). Quincey will make a plan for 1.10.
|
||
(SLU - 2010/02/02)
|
||
|
||
* The --enable-static-exec configure flag will only statically link libraries
|
||
if the static version of that library is present. If only the shared version
|
||
of a library exists (i.e., most system libraries on Solaris, AIX, and Mac,
|
||
for example, only have shared versions), the flag should still result in a
|
||
successful compilation, but note that the installed executables will not be
|
||
fully static. Thus, the only guarantee on these systems is that the
|
||
executable is statically linked with just the HDF5 library.
|
||
(MAM - 2009/11/04)
|
||
|
||
* A dataset created or rewritten with a v1.6.3 library or after cannot be read
|
||
with the v1.6.2 library or before when the Fletcher32 EDC filter is enabled.
|
||
There was a bug in the calculation of the Fletcher32 checksum in the
|
||
library before v1.6.3; the checksum value was not consistent between big-
|
||
endian and little-endian systems. This bug was fixed in Release 1.6.3.
|
||
However, after fixing the bug, the checksum value was no longer the same as
|
||
before on little-endian systems. Library releases after 1.6.4 can still read
|
||
datasets created or rewritten with an HDF5 library of v1.6.2 or before.
|
||
(SLU - 2005/06/30)
|
||
|
||
|
||
%%%%1.8.15%%%%
|
||
|
||
|
||
HDF5 version 1.8.15 released on 2015-05-04
|
||
================================================================================
|
||
|
||
INTRODUCTION
|
||
============
|
||
|
||
This document describes the differences between HDF5-1.8.14 and
|
||
HDF5-1.8.15, and contains information on the platforms tested and
|
||
known problems in HDF5-1.8.15.
|
||
|
||
Links to the HDF5 source code, documentation, and additional materials
|
||
can be found on the HDF5 web page at:
|
||
|
||
http://www.hdfgroup.org/products/hdf5/
|
||
|
||
The HDF5 release can be obtained from:
|
||
|
||
http://www.hdfgroup.org/HDF5/release/obtain5.html
|
||
|
||
User documentation for HDF5 can be accessed directly at this location:
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/
|
||
|
||
All new and modified APIs are listed in detail in the "HDF5 Software Changes
|
||
from Release to Release" document at this location:
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/ADGuide/Changes.html
|
||
|
||
If you have any questions or comments, please send them to the HDF Help Desk:
|
||
|
||
help@hdfgroup.org
|
||
|
||
|
||
CONTENTS
|
||
========
|
||
|
||
- New Features
|
||
- Support for New Platforms, Languages, and Compilers
|
||
- Bug Fixes since HDF5-1.8.14
|
||
- Supported Platforms
|
||
- Supported Configuration Features Summary
|
||
- More Tested Platforms
|
||
- Known Problems
|
||
|
||
|
||
New Features
|
||
============
|
||
|
||
Configuration
|
||
-------------
|
||
- CMake
|
||
|
||
Improvements made to the CMake build system.
|
||
|
||
The default options were changed to align with the Autotools configure
|
||
defaults. CMake configure files now support components when packaged
|
||
with CPack. Windows CPack supports WiX packaging, and will look for
|
||
WiX and NSIS in the standard locations.
|
||
|
||
The CMake minimum has been changed to 3.1.
|
||
|
||
(ADB - 2015/04/01 HDFFV-8074, 8968, 9006)
|
||
|
||
- cmakehdf5 for Cmake building.
|
||
Added configure options to support the building of Fortran or CXX API,
|
||
to enable/disable testings. Use "cmakehdf5 --help" for details.
|
||
(AKC - 2014/12/09 HDFFV-8932)
|
||
|
||
- Building Shared and Parallel Made Explicit
|
||
|
||
When --enable-parallel is specified, configure used to disable
|
||
shared by default.
|
||
|
||
Removed the restriction for building shared when parallel is
|
||
enabled. --disable-shared has to be used explicitly if user
|
||
wishes to disable shared libraries.
|
||
|
||
(MSC - 2015/02/19 HDFFV-9069)
|
||
|
||
- Inferring Parallel Compilers
|
||
|
||
configure was trying to infer if a compiler is a parallel
|
||
compiler with MPI support and enable parallel even if the user
|
||
did not explicitly enable parallel. This should not happen.
|
||
|
||
Disabled inferring parallel compilers to enable parallel HDF5
|
||
build. --enable-parallel has to be used explicitly to build
|
||
parallel HDF5 regardless of the compiler type being used.
|
||
|
||
(MSC - 2015/02/19 HDFFV-9068)
|
||
|
||
- Large File Support Configuration Option
|
||
|
||
Removed the option to enable or disable large file support. It will
|
||
always be enabled.
|
||
|
||
(MSC - 2015/02/19 HDFFV-9097)
|
||
|
||
- Removed Configuration Feature
|
||
|
||
When configure detected that the CodeWarrior compiler was being used it
|
||
would define a symbol that caused a test in test/tfile.c to be skipped
|
||
due to a broken CodeWarrior open() command.
|
||
|
||
Since this only masks the problem instead of fixing it and we don't
|
||
support CodeWarrior anyway, this functionality was removed.
|
||
|
||
(DER - 2015/02/21, HDFFV-9080)
|
||
|
||
- VMS Build/Test Files Have Been Removed
|
||
|
||
HDF5 no longer supports VMS, and the files were getting out of date.
|
||
Since we have no access to a VMS machine, there is no way for us to
|
||
maintain them.
|
||
|
||
A Subversion tag was created at:
|
||
|
||
https://svn.hdfgroup.uiuc.edu/tags/vms_last_support_1_8
|
||
|
||
immediately before removing the files.
|
||
|
||
(DER - 2015-02-26, HDFFV-9147)
|
||
|
||
- Removal of --with-default-vfd configure Option
|
||
|
||
In theory, this option was intended to allow setting a default
|
||
VFD that would be used by the library. In practice, the feature
|
||
only accepted the POSIX (SEC2) VFD (already the default) and
|
||
the stdio VFD (a demo VFD not intended for production use). The
|
||
inability to pass key VFD parameters at configure time limits the
|
||
full implementation of this feature, so it was retired.
|
||
|
||
(DER - 2015-02-26, HDFFV-9081)
|
||
|
||
- Direct VFD configure Behavior
|
||
|
||
The configure options for Linux now allow the Direct VFD to build
|
||
without passing additional compiler options/defines like _GNU_SOURCE.
|
||
Passing --enable-direct-vfd is now all that is needed to enable
|
||
the feature.
|
||
|
||
The Direct VFD is now disabled by default since it is intended for
|
||
specialized audiences. It was previously enabled by default, but the
|
||
configure script did not set correct POSIX levels, etc. making this
|
||
a moot point.
|
||
|
||
Note that the Direct VFD can only be configured on Linux when
|
||
the O_DIRECT flag to open()/create() and posix_memalign() function
|
||
are available. This is unchanged from previous behavior.
|
||
|
||
(DER - 2015-02-26, HDFFV-9057, 7567, 9088, 7566)
|
||
|
||
- _POSIX_C_SOURCE, _GNU_SOURCE, and _BSD_SOURCE No Longer Exported
|
||
to h5cc and Other Compiler Wrappers
|
||
|
||
The _POSIX_C_SOURCE, _GNU_SOURCE, and _BSD_SOURCE definitions are
|
||
not required for using API functions and may conflict with user
|
||
code requirements.
|
||
|
||
(DER - 2015-03-08, HDFFV-9152)
|
||
|
||
- Removed the --enable-filters Option from configure
|
||
|
||
This option allowed the user to disable selected internal filters,
|
||
presumably to make the library smaller. It has been removed since
|
||
it saved little space (the internal filters are small with respect
|
||
to the overall library size) and was not generally extendible to
|
||
the library at large due to the large number of #ifdefs that would
|
||
be required.
|
||
|
||
Note that this features applied to internal filters such as shuffle
|
||
and n-bit and not external filters like gzip or Szip. Those are still
|
||
enabled or disabled via their own configure options.
|
||
|
||
(DER - 2015-03-08, HDFFV-9086)
|
||
|
||
- Removed Obsolete Time Functionality from configure and the C Library
|
||
|
||
The library contained some residual functionality from obsolete
|
||
time zone handling code. This has been removed, and the configure
|
||
checks for the time functions have been cleaned up.
|
||
|
||
* Lumped all the time functionality together in configure.ac.
|
||
This was previously more spread out due to Solaris issues
|
||
with the ordering of certain checks.
|
||
|
||
* Removed processing that handles __tm_gmtoff members of struct
|
||
tm. (libc-4)
|
||
|
||
* Removed BSDgettimeofday(). (IRIX 5.3)
|
||
|
||
* Removed timezone struct handling in gettimeofday() (considered
|
||
harmful).
|
||
|
||
Note that the HDF5 Library stores timestamps in a platform-independent
|
||
manner, so old files can still be read. This only affects converting
|
||
system time to HDF5 timestamps.
|
||
|
||
The library currently uses the tm_gmtoff member of the tm struct
|
||
(preferred, if available) or the timezone global variable to
|
||
construct HDF5 timestamps.
|
||
|
||
(DER - 2015-03-09, HDFFV-9083 and 9085)
|
||
|
||
- Added -D_DEFAULT_SOURCE to CPPFLAGS on Linux Systems
|
||
|
||
This is the replacement for -D_BSD_SOURCE in versions of glibc since 2.19.
|
||
Since both are defined, it should work for all versions of glibc. Defining
|
||
both suppresses the warning about defining _BSD_SOURCE.
|
||
|
||
(NAF - 2015-04-02, HDFFV-9079)
|
||
|
||
Library
|
||
-------
|
||
- Added Memory Allocation Functions that Use the Library's Allocator
|
||
|
||
HDF5 filters may need to allocate or resize the buffer that is passed
|
||
to them from the library. If the filter has been compiled separately
|
||
from the library, it and the library may use different memory
|
||
allocation libraries for the (re)allocation and free calls. This can
|
||
cause heap corruption and crashes. This is particularly a problem on
|
||
Windows since each C run-time library is implemented as a separate
|
||
shared library, but can also show up on POSIX systems when debug or
|
||
high-performance allocation libraries are in use.
|
||
|
||
Two new functions (H5allocate_memory() and H5resize_memory()) were
|
||
added to the HDF5 C library. These functions have the same semantics as
|
||
malloc/calloc and realloc, respectively. Their primary purpose is to
|
||
allow filter authors to allocate or resize memory using the same
|
||
memory allocation library as the HDF5 library. Filter authors are
|
||
highly encouraged to use these new functions in place of malloc,
|
||
calloc, and realloc. They should also use the H5free_memory() call when
|
||
freeing memory.
|
||
|
||
Note that the filters provided with the library (zlib, szip, etc.) do
|
||
not experience the problems that these new functions are intended to
|
||
fix. This work only applies to third-party filters that are compiled
|
||
separately from the library.
|
||
|
||
(DER - 2015-04-01, HDFFV-9100)
|
||
|
||
- H5Pset_istore_k and H5Pset_sym_k
|
||
|
||
These two functions didn't check the value of the input parameter "ik".
|
||
When 2*ik exceeded 2 bytes of storage, data was lost in the file;
|
||
for example, some chunks would be overwritten.
|
||
|
||
Added validation of "ik" to not exceed the max v1 btree entries (2 bytes)
|
||
to these two routines.
|
||
|
||
(VC - 2015-03-24, HDFFV-9173)
|
||
|
||
- Added Functions to Control the Value of H5PL_no_plugin_g without
|
||
Using an Environment Variable
|
||
|
||
Sometimes it is necessary for an application to disable the use of
|
||
dynamically loaded plugin libraries without requiring the library to
|
||
be built with plugin support disabled or to set an environment
|
||
variable to disable plugin support globally.
|
||
|
||
Two new functions (H5PLset_loading_state() and H5PLget_loading_state())
|
||
were added to the HDF5 C Library. These functions require a parameter
|
||
that indicates which type of dynamically loaded plugin is enabled or
|
||
disabled.
|
||
|
||
(ADB - 2015-03-17, HDFFV-8520)
|
||
|
||
Parallel Library
|
||
----------------
|
||
- MPI_Finalize and HDF5 Library Shutdown
|
||
|
||
Calling HDF5 routines after MPI_Finalize has been closed should
|
||
not be done, since those routines might call MPI functions that
|
||
would not be possible to do after finalizing the MPI library.
|
||
|
||
Attached an attribute destroy callback to MPI_COMM_SELF that
|
||
shuts down the HDF5 library when MPI_COMM_SELF is destroyed,
|
||
in other words, on MPI_Finalize. This should fix several issues
|
||
that users see when they forget to close HDF5 objects before
|
||
calling MPI_Finalize().
|
||
|
||
(MSC - 2015/02/25, HDFFV-883)
|
||
|
||
Tools
|
||
-----
|
||
- None
|
||
|
||
High-Level APIs
|
||
---------------
|
||
- None
|
||
|
||
Fortran API
|
||
-----------
|
||
- Added Global Variables
|
||
|
||
These new global variables are equivalent to the C definitions
|
||
without the '_F':
|
||
|
||
H5G_UDLINK_F
|
||
H5G_SAME_LOC_F
|
||
H5O_TYPE_UNKNOWN_F
|
||
H5O_TYPE_GROUP_F
|
||
H5O_TYPE_DATASET_F
|
||
H5O_NAMED_DATATYPE_F
|
||
H5O_TYPE_NTYPES_F
|
||
|
||
(MSB - 2015/02/03, HDFFV-9040)
|
||
|
||
|
||
C++ API
|
||
-------
|
||
- New Wrappers for C Functions H5P[s/g]et_libver_bounds
|
||
|
||
Wrappers were added to class H5::FileAccPropList for the
|
||
C Functions H5Pget_libver_bounds and H5Pset_libver_bounds.
|
||
|
||
(BMR, 2015/04/06, Part of HDFFV-9167)
|
||
|
||
- New Wrappers to Get the Object Header's Version
|
||
|
||
The following wrappers are added to class H5::CommonFG
|
||
Returns the object header version of an object in a file or group,
|
||
given the object's name.
|
||
|
||
unsigned childObjVersion(const char* objname) const;
|
||
unsigned childObjVersion(const H5std_string& objname) const;
|
||
|
||
(BMR, 2015/04/06)
|
||
|
||
- New DataType Constructor
|
||
|
||
Added a DataType constructor that takes a PredType object, and this
|
||
constructor will invoke H5Tcopy to generate another datatype id
|
||
from a predefined datatype.
|
||
|
||
(BMR, 2015/04/06)
|
||
|
||
|
||
Support for New Platforms, Languages, and Compilers
|
||
===================================================
|
||
- Support for Linux 3.10.0-123.20.1.el7 added (LK - 2015/04/01)
|
||
- Support for Mac OS X Yosemite 10.10 added (AKC - 2015/03/04, HDFFV-9007)
|
||
- Support for AIX 6.1 added and AIX 5.3 is retired. (AKC - 2015/01/09)
|
||
|
||
Bug Fixes since HDF5-1.8.14
|
||
===========================
|
||
|
||
Configuration
|
||
-------------
|
||
- Make uninstall generated "test: argument expected".
|
||
The error is due to $EXAMPLETOPDIR is used without setting a value first.
|
||
|
||
Fixed by assign it with the proper value.
|
||
|
||
(AKC - 2015/04/29, HDFFV-9298)
|
||
|
||
- Windows Installer Incorrect Display of PATH Environment Variable
|
||
|
||
In the Windows installer, the dialog box where the user can elect to
|
||
add the product's bin path to the %PATH% environment variable displayed
|
||
an incorrect path. This path was missing the C:\Program Files part
|
||
and used the POSIX file separator '/' before the bin (<path>/bin,
|
||
instead of <path>\bin).
|
||
|
||
The dialog box text was changed to simply say that the product's bin
|
||
path would be added instead of explicitly displaying the path.
|
||
This is in line with most installers. The reason for not fixing the
|
||
displayed path instead is that it is difficult to pass the correct
|
||
path from CPack to the NSIS installer for display.
|
||
|
||
Note that this was never a code issue - it was just a display
|
||
problem. The installer always did the right thing when updating the
|
||
environment variable.
|
||
|
||
(DER - 2014/11/14, HDFFV-9016)
|
||
|
||
Library
|
||
-------
|
||
- Incorrect Usage of List in CMake COMPILE_DEFINITIONS set_property
|
||
|
||
The CMake command set_property with COMPILE_DEFINITIONS property
|
||
needs a quoted semi-colon separated list of values. CMake will
|
||
transform the list to a series of -D{value} for the compile.
|
||
|
||
(ADB - 2014/12/09, HDFV-9041)
|
||
|
||
- Fixed Compile Errors on Windows w/ Visual Studio and CMake When
|
||
UNICODE is Defined
|
||
|
||
The HDF5 Library could not be built on Windows with Visual Studio when
|
||
UNICODE was defined. This was due to the incorrect use of the TEXT()
|
||
macro and some Win32 API functions that take TCHAR parameters. The faulty
|
||
code was a part of the filter plugin functionality. This was a
|
||
compile-time error that only affected users who build HDF5 from source
|
||
and define UNICODE, usually when HDF5 is being built as a part of a
|
||
larger product. There were no run-time effects.
|
||
|
||
These errors caused no problems when UNICODE was not defined. HDF5 is
|
||
normally not built with UNICODE defined and the binaries were
|
||
unaffected.
|
||
|
||
The fix was to remove the TEXT() macro and explicitly use the
|
||
'A' form of the Win32 API calls, which expect char strings instead of
|
||
wchar_t strings.
|
||
|
||
Note that HDF5 currently does not support Unicode file paths on Windows.
|
||
|
||
(DER - 2015/02/22, HDFFV-8927)
|
||
|
||
- Addition of Error Tracing Functionality to Several C API Calls
|
||
|
||
A bug in a text processing script caused API calls that return a
|
||
pointer to not receive error tracing macros/functionality.
|
||
|
||
The bug has been corrected and error tracing functionality has been
|
||
added to the affected API calls. These functions will now correctly
|
||
print trace information when library errors are encountered.
|
||
|
||
(DER - 2015/02/26, HDFFV-9141)
|
||
|
||
- H5Rdereference Now Checks for HADDR_UNDEF or Uninitialized References
|
||
|
||
When passed HADDR_UNDEF or uninitialized references, the previous
|
||
behavior of H5Rdereference was to continue to process the reference
|
||
as a valid address.
|
||
|
||
H5Rdereference was changed to return immediately (with an error
|
||
message) if the references are HADDR_UNDEF or uninitialized.
|
||
|
||
(MSB - 2015/3/10, HDFFV-7959)
|
||
|
||
- Fixed Bugs in H5Sextent_copy
|
||
|
||
H5Sextent_copy would not free the previous extent, resulting in a memory
|
||
leak. Also, H5Sextent_copy would not update the number of elements
|
||
selected if the selection was "all", causing various problems. These
|
||
issues have been fixed.
|
||
|
||
(NAF - 2015/04/02)
|
||
|
||
|
||
Parallel Library
|
||
----------------
|
||
- Fixed a Potential Memory Error
|
||
|
||
Fixed a potential memory error when performing parallel I/O on a
|
||
dataset with a single chunk, and at least one process has nothing
|
||
to do.
|
||
|
||
(NAF - 2015/02/16)
|
||
|
||
- Parallel Test Problem Fixed
|
||
|
||
Fixed problem with parallel tests where they failed beyond a
|
||
certain number of ranks. All tests should work for any arbitrary
|
||
number of ranks.
|
||
|
||
(MSC - 2014/11/06, HDFFV-1027,8962,8963)
|
||
|
||
- MPE Support
|
||
|
||
Enabling MPE was causing HDF5 build to fail. Support for it was
|
||
dropped at some point in time.
|
||
|
||
Fixed problem with enabling MPE. Users should use the community
|
||
maintained MPE on github (http://git.mpich.org/mpe.git/).
|
||
|
||
(MSC - 2015/02/20, HDFFV-9135)
|
||
|
||
Performance
|
||
-------------
|
||
- None
|
||
|
||
Tools
|
||
-----
|
||
- h5repack crashed on enumerated 8-bit type.
|
||
|
||
Previous version 1.8.14 introduced an error that caused the reading
|
||
of enumerated 8-bit type nested in compound type to fail.
|
||
|
||
Fixed library code responsible for reading the particular type.
|
||
(AKC - 2015.03/31, HDFFV-8667)
|
||
|
||
- h52gif crashed non-8bit images.
|
||
|
||
h52gif crashed if instructed to convert images other than 8bit images.
|
||
|
||
h52gif could handle only 8bit images. Added code to detect non-8bit
|
||
images and flag them as failure. Update tool document page to reflect
|
||
the limit.
|
||
(AKC - 2015/03/31, HDFFV-8957)
|
||
|
||
- perform/benchpar.c retired.
|
||
|
||
benchpar.c has not been built for a long time and its original purpose
|
||
is not needed any more.
|
||
(AKC - 2014/12/19, HDFFV-8156)
|
||
|
||
- Source perform/ directory moved to tools/perform.
|
||
The perform directory is moved to tools/perform for easier maintenance.
|
||
(AKC - 2014/12/17, HDFFV-9046)
|
||
|
||
Fortran API
|
||
------------
|
||
- Fortran Fails with --enable-fortran2003 and Intel 15.x Compilers
|
||
|
||
Added BIND(C) to the offending APIs.
|
||
|
||
The Fortran Library (--enable-fortran2003) now works using Intel 15.x
|
||
without the need for any additional compilers flags.
|
||
|
||
(MSB - 2015/1/26, HDFFV-9049)
|
||
|
||
- h5tenum_insert_f Does Not Work with Default 8 Byte Integers
|
||
(xlf compiler)
|
||
|
||
In the Fortran 90 API, 'value' is no longer cast into the C int type.
|
||
Therefore, if h5tenum_insert_f is passed an 8 byte integer (via -i8)
|
||
then 'value' is written as the same type as the default Fortran
|
||
integer type (which can be 8 bytes).
|
||
|
||
A new Fortran 2003 API was added which is more in line with the C
|
||
API and users are strongly encouraged to use the Fortran 2003 API
|
||
instead of the Fortran 90 API.
|
||
|
||
SUBROUTINE h5tenum_insert_f(type_id, name, value, hdferr)
|
||
INTEGER(HID_T) , INTENT(IN) :: type_id
|
||
CHARACTER(LEN=*), INTENT(IN) :: name
|
||
TYPE(C_PTR) , INTENT(IN) :: value
|
||
INTEGER, INTENT(OUT) :: hdferr
|
||
|
||
(MSB - 2015/2/19, HDFFV-8908)
|
||
|
||
- Some Fortran APIs Never Returned the Error State
|
||
|
||
Some Fortran APIs never returned the error state: they
|
||
would always return a positive number. The APIs include
|
||
the following:
|
||
|
||
h5fget_file_image_f
|
||
h5lget_name_by_idx_f
|
||
h5oget_comment_by_name_f
|
||
|
||
They were corrected to return a negative number as described in
|
||
the Reference Manual if an error occurred.
|
||
|
||
(MSB - 2015/3/19, HDF5-239)
|
||
|
||
- Fixed h5pget_class_f
|
||
|
||
h5pget_class_f never correlated the class identifier to the property
|
||
list class name as indicated in the HDF5 Reference Manual; it instead
|
||
returned a property list class identifier as an INTEGER. The INTEGER
|
||
needed to be of type INTEGER(HID_T) to be correct.
|
||
|
||
The h5pget_class_f API was changed to return an INTEGER(HID_T)
|
||
property list class identifier instead of an INTEGER. This mimics the
|
||
intended behavior of the C API.
|
||
|
||
(MSB - 2015/3/16, HDFFV5-9162)
|
||
|
||
C++ API
|
||
------
|
||
- Combined Two H5File::getObjCount Overloaded Methods
|
||
|
||
The following two methods
|
||
|
||
ssize_t getObjCount(unsigned types) const;
|
||
ssize_t getObjCount() const;
|
||
|
||
were combined into one:
|
||
|
||
ssize_t getObjCount(unsigned types = H5F_OBJ_ALL) const;
|
||
|
||
(BMR - 2015/04/06)
|
||
|
||
- Many Warnings Were Removed
|
||
|
||
Many warnings such as conversion, unused variables, missing base
|
||
class initialization, and initializing base classes in wrong order
|
||
were removed.
|
||
|
||
(BMR, 2015/04/06)
|
||
|
||
- Functionality Deprecation
|
||
|
||
The following two constructors of classes AbstractDs, IdComponent,
|
||
H5Location, and H5Object are no longer appropriate after the data member
|
||
"id" had been moved from IdComponent to the sub-classes in previous
|
||
releases.
|
||
|
||
<Classname>(const hid_t h5_id);
|
||
<Classname>(const <Classname>& original);
|
||
|
||
The copy constructors were no-op and removed in 1.8.15. The other
|
||
constructors will be removed from 1.10 release, and then from 1.8.17
|
||
if their removal does not cause any problems.
|
||
|
||
(BMR, 2015-04-06)
|
||
|
||
|
||
High-Level APIs:
|
||
------
|
||
- Suppress Warnings from Flex/Bison-generated Code
|
||
|
||
Warning suppression #pragmas, etc. have been added to H5LTparse.c and
|
||
H5LTanalyze.c. We have no control over this code since it's created by
|
||
a generator.
|
||
|
||
(DER - 2015/03/08 - HDFFV-9149)
|
||
|
||
- Changed hdf5_hl.h to Include the HDF5 Main Library "hdf5.h"
|
||
|
||
User's no longer need to include both hdf5_hl.h and hdf5.h
|
||
|
||
(MSB - 2015/2/14, HDFFV-8685)
|
||
|
||
|
||
- H5PTcreate_fl Does Not Convert to Memory Datatype
|
||
|
||
H5PTcreate_fl now converts to the table's native memory datatype
|
||
to fix the problem of handling BE and LE packet tables.
|
||
|
||
(MSB - 2015/2/26 - HDFFV-9042)
|
||
|
||
- Fix for H5LT Attribute Functions
|
||
|
||
H5LT attribute functions fail to create attributes whose name
|
||
is a substring of an existing attribute.
|
||
|
||
H5LT attribute functions can now create attributes whose name
|
||
is a substring of an existing attribute.
|
||
|
||
(MSB - 2015/2/24, HDFFV-9132)
|
||
|
||
|
||
Fortran High-Level APIs:
|
||
------------------------
|
||
|
||
- Internal Library Fix for Missing Argument Declaration
|
||
|
||
In Interface block for h5tbmake_table_c, "max_char_size_field_names"
|
||
is listed as an input, but in the argument definitions it is
|
||
"INTEGER :: max_char_size". This caused no known problems with the
|
||
Fortran HL API.
|
||
|
||
Fixed missing argument definition.
|
||
|
||
(MSB - 2015/2/18, HDFFV-8559)
|
||
|
||
|
||
Testing
|
||
-------
|
||
- None
|
||
|
||
|
||
Supported Platforms
|
||
===================
|
||
The following platforms are supported and have been tested for this release.
|
||
They are built with the configure process unless specified otherwise.
|
||
|
||
AIX 6.1 xlc/xlc_r 10.1.0.5
|
||
(NASA G-ADA) xlC/xlC_r 10.1.0.5
|
||
xlf90/xlf90_r 12.1.0.6
|
||
|
||
Linux 2.6.18-308.13.1.el5PAE GNU C (gcc), Fortran (gfortran), C++ (g++)
|
||
#1 SMP i686 i686 i386 compilers for 32-bit applications;
|
||
(jam) Version 4.1.2 20080704 (Red Hat 4.1.2-55)
|
||
Version 4.8.4, 4.9.2
|
||
PGI C, Fortran, C++ Compilers for 32-bit
|
||
applications;
|
||
Version 14.10-0
|
||
Intel(R) C, C++, Fortran Compiler for 32-bit
|
||
applications;
|
||
Version 15.0.1.133 (Build 20141023)
|
||
|
||
Linux 2.6.18-371.6.1.el5 GNU C (gcc), Fortran (gfortran), C++ (g++)
|
||
#1 SMP x86_64 GNU/Linux compilers for 64-bit applications;
|
||
(koala) Version 4.1.2 20080704 (Red Hat 4.1.2-55)
|
||
Version 4.8.4, 4.9.2
|
||
Intel(R) C, C++, Fortran Compilers for
|
||
applications running on Intel(R) 64;
|
||
Version 15.0.1.133 Build 20141023
|
||
|
||
Linux 2.6.32-431.11.2.el6 GNU C (gcc), Fortran (gfortran), C++ (g++)
|
||
#1 SMP x86_64 GNU/Linux compilers:
|
||
(platypus) Version 4.4.7 20120313
|
||
Version 4.8.2, Version 4.9.2
|
||
PGI C, Fortran, C++ for 64-bit target on
|
||
x86-64;
|
||
Version 14.10-0
|
||
Intel(R) C (icc), C++ (icpc), Fortran (icc)
|
||
compilers:
|
||
Version 15.0.1.133 Build 20141023
|
||
|
||
Linux 3.10.0-123.20.1.el7 GNU C (gcc), Fortran (gfortran), C++ (g++)
|
||
#1 SMP x86_64 GNU/Linux compilers:
|
||
(moohan) Version 4.8.2 20140120 (Red Hat 4.8.2-16)
|
||
Intel(R) C Intel(R) 64 Compiler XE for
|
||
applications running on Intel(R) 64,
|
||
Version 15.0.1.133 Build 20141023
|
||
|
||
Linux 2.6.32-431.29.2.el6.ppc64 gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-4)
|
||
#1 SMP ppc64 GNU/Linux g++ (GCC) 4.4.7 20120313 (Red Hat 4.4.7-4)
|
||
(ostrich) GNU Fortran (GCC) 4.4.7 20120313 (Red Hat 4.4.7-4)
|
||
IBM XL C/C++ V13.1
|
||
IBM XL Fortran V15.1
|
||
|
||
SunOS 5.11 32- and 64-bit Sun C 5.12 SunOS_sparc
|
||
(emu) Sun Fortran 95 8.6 SunOS_sparc
|
||
Sun C++ 5.12 SunOS_sparc
|
||
|
||
Windows 7 Visual Studio 2008 (cmake)
|
||
Visual Studio 2010 w/ Intel Fortran 14 (cmake)
|
||
Visual Studio 2012 w/ Intel Fortran 15 (cmake)
|
||
Visual Studio 2013 w/ Intel Fortran 15 (cmake)
|
||
Cygwin(CYGWIN_NT-6.1 1.7.34(0.285/5/3) gcc(4.9.2) compiler and gfortran)
|
||
(cmake and autotools)
|
||
|
||
Windows 7 x64 Visual Studio 2008 (cmake)
|
||
Visual Studio 2010 w/ Intel Fortran 14 (cmake)
|
||
Visual Studio 2012 w/ Intel Fortran 15 (cmake)
|
||
Visual Studio 2013 w/ Intel Fortran 15 (cmake)
|
||
|
||
Windows 8.1 Visual Studio 2012 w/ Intel Fortran 15 (cmake)
|
||
Visual Studio 2013 w/ Intel Fortran 15 (cmake)
|
||
|
||
Windows 8.1 x64 Visual Studio 2012 w/ Intel Fortran 15 (cmake)
|
||
Visual Studio 2013 w/ Intel Fortran 15 (cmake)
|
||
|
||
Mac OS X Mt. Lion 10.8.5 Apple clang/clang++ version 5.1 from Xcode 5.1
|
||
64-bit gfortran GNU Fortran (GCC) 4.8.2
|
||
(swallow/kite) Intel icc/icpc/ifort version 14.0.2
|
||
|
||
Mac OS X Mavericks 10.9.5 Apple clang/clang++ version 6.0 from Xcode 6.1.1
|
||
64-bit gfortran GNU Fortran (GCC) 4.8.2
|
||
(wren/quail) Intel icc/icpc/ifort version 14.0.2
|
||
|
||
Mac OS X Yosemite 10.10.2 Apple clang/clang++ version 6.0 from Xcode 6.1.1
|
||
64-bit gfortran GNU Fortran (GCC) 4.9.2
|
||
(osx1010dev/osx1010test) Intel icc/icpc/ifort version 15.0.1
|
||
|
||
|
||
Tested Configuration Features Summary
|
||
=====================================
|
||
|
||
In the tables below
|
||
y = tested
|
||
n = not tested in this release
|
||
C = Cluster
|
||
W = Workstation
|
||
x = not working in this release
|
||
dna = does not apply
|
||
( ) = footnote appears below second table
|
||
<blank> = testing incomplete on this feature or platform
|
||
|
||
Platform C F90/ F90 C++ zlib SZIP
|
||
parallel F2003 parallel
|
||
SunOS 5.11 32-bit n y/y n y y y
|
||
SunOS 5.11 64-bit n y/y n y y y
|
||
Windows 7 y y/y n y y y
|
||
Windows 7 x64 y y/y n y y y
|
||
Windows 7 Cygwin n y/y n y y n
|
||
Windows 8.1 n y/y n y y y
|
||
Windows 8.1 x64 n y/y n y y y
|
||
Mac OS X Mountain Lion 10.8.5 64-bit n y/y n y y y
|
||
Mac OS X Mavericks 10.9.5 64-bit n y/y n y y y
|
||
Mac OS X Yosemeti 10.10.2 64-bit n y/y n y y y
|
||
AIX 6.1 32- and 64-bit n y/n n y y y
|
||
CentOS 5.9 Linux 2.6.18-308 i686 GNU y y/y y y y y
|
||
CentOS 5.9 Linux 2.6.18-308 i686 Intel n y/y n y y y
|
||
CentOS 5.9 Linux 2.6.18-308 i686 PGI n y/y n y y y
|
||
CentOS 5.9 Linux 2.6.18 x86_64 GNU n y/y n y y y
|
||
CentOS 5.9 Linux 2.6.18 x86_64 Intel n y/y n y y y
|
||
CentOS 6.4 Linux 2.6.32 x86_64 GNU y y/y y y y y
|
||
CentOS 6.4 Linux 2.6.32 x86_64 Intel n y/y n y y y
|
||
CentOS 6.4 Linux 2.6.32 x86_64 PGI n y/y n y y y
|
||
CentOS 7.0 Linux 3.10.0 x86_64 GNU y y/y y y y y
|
||
CentOS 7.0 Linux 3.10.0 x86_64 Intel n y/y n y y y
|
||
Linux 2.6.32-431.11.2.el6.ppc64 n y/n n y y y
|
||
|
||
Platform Shared Shared Shared Thread-
|
||
C libs F90 libs C++ libs safe
|
||
SunOS 5.11 32-bit y y y y
|
||
SunOS 5.11 64-bit y y y y
|
||
Windows 7 y y y y
|
||
Windows 7 x64 y y y y
|
||
Windows 7 Cygwin n n n y
|
||
Windows 8.1 y y y y
|
||
Windows 8.1 x64 y y y y
|
||
Mac OS X Mountain Lion 10.8.5 64-bit y n y y
|
||
Mac OS X Mavericks 10.9.5 64-bit y n y y
|
||
Mac OS X Yosemeti 10.10.2 64-bit y n y y
|
||
AIX 6.1 32- and 64-bit y n n y
|
||
CentOS 5.9 Linux 2.6.18-308 i686 GNU y y y y
|
||
CentOS 5.9 Linux 2.6.18-308 i686 Intel y y y n
|
||
CentOS 5.9 Linux 2.6.18-308 i686 PGI y y y n
|
||
CentOS 5.9 Linux 2.6.18 x86_64 GNU y y y y
|
||
CentOS 5.9 Linux 2.6.18 x86_64 Intel y y y n
|
||
CentOS 6.4 Linux 2.6.32 x86_64 GNU y y y n
|
||
CentOS 6.4 Linux 2.6.32 x86_64 Intel y y y n
|
||
CentOS 6.4 Linux 2.6.32 x86_64 PGI y y y n
|
||
CentOS 7.0 Linux 3.10.0 x86_64 GNU y y y n
|
||
CentOS 7.0 Linux 3.10.0 x86_64 Intel y y y n
|
||
Linux 2.6.32-431.11.2.el6.ppc64 y y y n
|
||
|
||
Compiler versions for each platform are listed in the preceding
|
||
"Supported Platforms" table.
|
||
|
||
|
||
More Tested Platforms
|
||
=====================
|
||
The following platforms are not supported but have been tested for this release.
|
||
|
||
Linux 2.6.18-308.13.1.el5PAE MPICH mpich 3.1.3 compiled with
|
||
#1 SMP i686 i686 i386 gcc 4.9.2 and gfortran 4.9.2
|
||
(jam) g95 (GCC 4.0.3 (g95 0.94!)
|
||
|
||
Linux 2.6.18-431.11.2.el6 MPICH mpich 3.1.3 compiled with
|
||
#1 SMP x86_64 GNU/Linux gcc 4.9.2 and gfortran 4.9.2
|
||
(platypus) g95 (GCC 4.0.3 (g95 0.94!)
|
||
|
||
FreeBSD 8.2-STABLE i386 gcc 4.5.4 [FreeBSD] 20110526
|
||
(loyalty) gcc 4.6.1 20110527
|
||
g++ 4.6.1 20110527
|
||
gfortran 4.6.1 20110527
|
||
|
||
FreeBSD 8.2-STABLE amd64 gcc 4.5.4 [FreeBSD] 20110526
|
||
(freedom) gcc 4.6.1 20110527
|
||
g++ 4.6.1 20110527
|
||
gfortran 4.6.1 20110527
|
||
|
||
Debian7.5.0 3.2.0-4-amd64 #1 SMP Debian 3.2.51-1 x86_64 GNU/Linux
|
||
gcc (Debian 4.7.2-5) 4.7.2
|
||
GNU Fortran (Debian 4.7.2-5) 4.7.2
|
||
(cmake and autotools)
|
||
|
||
Fedora20 3.15.3-200.fc20.x86_64 #1 SMP x86_64 x86_64 x86_64 GNU/Linux
|
||
gcc (GCC) 4.8.3 20140624 (Red Hat 4.8.3-1)
|
||
GNU Fortran (GCC) 4.8.3 20140624 (Red Hat 4.8.3-1)
|
||
(cmake and autotools)
|
||
|
||
SUSE 13.1 3.11.10-17-desktop #1 SMP PREEMPT x86_64 x86_64 x86_64 GNU/Linux
|
||
gcc (SUSE Linux) 4.8.1
|
||
GNU Fortran (SUSE Linux) 4.8.1
|
||
(cmake and autotools)
|
||
|
||
Ubuntu 14.04 3.13.0-35-generic #62-Ubuntu SMP x86_64 GNU/Linux
|
||
gcc (Ubuntu/Linaro 4.9.1-0ubuntu1) 4.9.1
|
||
GNU Fortran (Ubuntu/Linaro 4.9.1-0ubuntu1) 4.9.1
|
||
(cmake and autotools)
|
||
|
||
hopper.nersc.gov PrgEnv-gnu/5.2.40
|
||
gcc (GCC) 4.9.2 20141030 (Cray Inc.)
|
||
GNU Fortran (GCC) 4.9.2 20141030 (Cray Inc.)
|
||
g++ (GCC) 4.9.2 20141030 (Cray Inc.)
|
||
|
||
|
||
Known Problems
|
||
==============
|
||
* On Windows platforms in debug configurations, the VFD flush1 tests will fail
|
||
with the split and multi VFD drivers. These tests will display a modal debug
|
||
dialog which must be answered or wait for the test timeout to expire.
|
||
(ADB - 2014/06/23 - HDFFV-8851)
|
||
|
||
* CLANG compiler with the options -fcatch-undefined-behavior and -ftrapv
|
||
catches some undefined behavior in the alignment algorithm of the macro DETECT_I
|
||
in H5detect.c (Issue 8147). Since the algorithm is trying to detect the alignment
|
||
of integers, ideally the flag -fcatch-undefined-behavior shouldn't to be used for
|
||
H5detect.c. In the future, we can separate flags for H5detect.c from the rest of
|
||
the library. (SLU - 2013/10/16)
|
||
|
||
* Make provided by Solaris fails in "make check". Solaris users should use
|
||
gmake to build and install the HDF5 software. (AKC - 2013/10/08 - HDFFV-8534)
|
||
|
||
* The C++ and FORTRAN bindings are not currently working on FreeBSD with the
|
||
native release 8.2 compilers (4.2.1), but are working with gcc 4.6 from the
|
||
ports (and probably gcc releases after that).
|
||
(QAK - 2012/10/19)
|
||
|
||
* The following h5dump test case fails in BG/P machines (and potentially other
|
||
machines that use a command script to launch executables):
|
||
|
||
h5dump --no-compact-subset -d "AHFINDERDIRECT::ah_centroid_t[0] it=0 tl=0"
|
||
tno-subset.h5
|
||
|
||
This is due to the embedded spaces in the dataset name being interpreted
|
||
by the command script launcher as meta-characters, thus passing three
|
||
arguments to h5dump's -d flag. The command passes if run by hand, just
|
||
not via the test script.
|
||
(AKC - 2012/05/03)
|
||
|
||
* The STDIO VFD does not work on some architectures, possibly due to 32/64
|
||
bit or large file issues. The basic STDIO VFD test is known to fail on
|
||
64-bit SunOS 5.10 on SPARC when built with -m64 and 32-bit OS X/Darwin
|
||
10.7.0. The STDIO VFD test has been disabled while we investigate and
|
||
a fix should appear in a future release.
|
||
(DER - 2011/10/14 - HDFFV-8235)
|
||
|
||
* h5diff can report inconsistent results when comparing datasets of enum type
|
||
that contain invalid values. This is due to how enum types are handled in
|
||
the library and will be addressed in a future release.
|
||
(DER - 2011/10/14 - HDFFV-7527)
|
||
|
||
* The links test can fail under the stdio VFD due to some issues with external
|
||
links. This will be investigated and fixed in a future release.
|
||
(DER - 2011/10/14 - HDFFV-7768)
|
||
|
||
* After the shared library support was fixed for some bugs, it was discovered
|
||
that "make prefix=XXX install" no longer works for shared libraries. It
|
||
still works correctly for static libraries. Therefore, if you want to
|
||
install the HDF5 shared libraries in a location such as /usr/local/hdf5,
|
||
you need to specify the location via the --prefix option during configure
|
||
time. E.g, ./configure --prefix=/usr/local/hdf5 ...
|
||
(AKC - 2011/05/07 - HDFFV-7583)
|
||
|
||
* The parallel test, t_shapesame, in testpar/, may run for a long time and may
|
||
be terminated by the alarm signal. If that happens, one can increase the
|
||
alarm seconds (default is 1200 seconds = 20 minutes) by setting the
|
||
environment variable, $HDF5_ALARM_SECONDS, to a larger value such as 3600
|
||
(60 minutes). Note that the t_shapesame test may fail in some systems
|
||
(see the "While working on the 1.8.6 release..." problem below). If
|
||
it does, it will waste more time if $HDF5_ALARM_SECONDS is set
|
||
to a larger value.
|
||
(AKC - 2011/05/07)
|
||
|
||
* Shared Fortran libraries are not quite working on AIX. While they are
|
||
generated when --enable-shared is specified, the fortran and hl/fortran
|
||
tests fail. the issue. HL and C++ shared libraries should now be
|
||
working as intended, however.
|
||
(MAM - 2011/04/20)
|
||
|
||
* While working on the 1.8.6 release of HDF5, a bug was discovered that can
|
||
occur when reading from a dataset in parallel shortly after it has been
|
||
written to collectively. The issue was exposed by a new test in the parallel
|
||
HDF5 test suite, but had existed before that. We believe the problem lies with
|
||
certain MPI implementations and/or file systems.
|
||
|
||
We have provided a pure MPI test program, as well as a standalone HDF5
|
||
program, that can be used to determine if this is an issue on your system.
|
||
They should be run across multiple nodes with a varying number of processes.
|
||
These programs can be found at:
|
||
http://www.hdfgroup.org/ftp/HDF5/examples/known_problems/
|
||
(NAF - 2011/01/19)
|
||
|
||
* All the VFL drivers aren't backward compatible. In H5FDpublic.h, the
|
||
structure H5FD_class_t changed in 1.8. There is new parameter added to
|
||
get_eoa and set_eoa callback functions. A new callback function
|
||
get_type_map was added in. The public function H5FDrealloc was taken
|
||
out in 1.8. The problem only happens when users define their own driver
|
||
for 1.6 and try to plug in 1.8 library. Because there's only one user
|
||
complaining about it, we (Elena, Quincey, and I) decided to leave it as
|
||
it is (see bug report #1279). Quincey will make a plan for 1.10.
|
||
(SLU - 2010/02/02)
|
||
|
||
* The --enable-static-exec configure flag will only statically link libraries
|
||
if the static version of that library is present. If only the shared version
|
||
of a library exists (i.e., most system libraries on Solaris, AIX, and Mac,
|
||
for example, only have shared versions), the flag should still result in a
|
||
successful compilation, but note that the installed executables will not be
|
||
fully static. Thus, the only guarantee on these systems is that the
|
||
executable is statically linked with just the HDF5 library.
|
||
(MAM - 2009/11/04)
|
||
|
||
* A dataset created or rewritten with a v1.6.3 library or after cannot be read
|
||
with the v1.6.2 library or before when the Fletcher32 EDC filter is enabled.
|
||
There was a bug in the calculation of the Fletcher32 checksum in the
|
||
library before v1.6.3; the checksum value was not consistent between big-
|
||
endian and little-endian systems. This bug was fixed in Release 1.6.3.
|
||
However, after fixing the bug, the checksum value was no longer the same as
|
||
before on little-endian system. Library releases after 1.6.4 can still read
|
||
datasets created or rewritten with an HDF5 library of v1.6.2 or before.
|
||
(SLU - 2005/06/30)
|
||
|
||
|
||
%%%%1.8.14%%%%
|
||
|
||
|
||
HDF5 version 1.8.14 released on 2014-11-12
|
||
================================================================================
|
||
|
||
INTRODUCTION
|
||
============
|
||
|
||
This document describes the differences between HDF5-1.8.13 and
|
||
HDF5-1.8.14, and contains information on the platforms tested and
|
||
known problems in HDF5-1.8.14.
|
||
|
||
All new and modified APIs are listed in the "HDF5 Software Changes
|
||
from Release to Release" document along with details about previous
|
||
releases at:
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/ADGuide/Changes.html
|
||
|
||
Links to the HDF5 1.8.14 source code, documentation, and additional materials
|
||
can be found on the HDF5 web page at:
|
||
|
||
http://www.hdfgroup.org/products/hdf5/
|
||
|
||
The HDF5 1.8.14 release can be obtained from:
|
||
|
||
http://www.hdfgroup.org/HDF5/release/obtain5.html
|
||
|
||
User documentation for 1.8.14 can be accessed directly at this location:
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/
|
||
|
||
If you have any questions or comments, please send them to the HDF Help Desk:
|
||
|
||
help@hdfgroup.org
|
||
|
||
|
||
CONTENTS
|
||
========
|
||
|
||
- New Features
|
||
- Support for New Platforms, Languages, and Compilers
|
||
- Bug Fixes since HDF5-1.8.13
|
||
- Supported Platforms
|
||
- Supported Configuration Features Summary
|
||
- More Tested Platforms
|
||
- Known Problems
|
||
|
||
|
||
New Features
|
||
============
|
||
|
||
Configuration
|
||
-------------
|
||
- bin/cmakehdf5 configures, builds and installs C, C++, Fortran and High
|
||
level API's. (It used to build the C API only).
|
||
(AKC 2014/10/17 HDFFV-8932).
|
||
|
||
Library
|
||
-------
|
||
- None
|
||
|
||
Parallel Library
|
||
----------------
|
||
- Chunk Fill Writes Changed to Collective
|
||
|
||
Slow performance in chunk fill writes. Chunk fills
|
||
in the past were written independently by rank 0 one block
|
||
at a time.
|
||
|
||
Optimized the chunk fill write algorithm so that all
|
||
chunk fill values will be written collectively in a single MPI-IO
|
||
call. This should show a great performance improvement when
|
||
creating chunked datasets in parallel when the chunk dimensions
|
||
are fairly small.
|
||
|
||
(MSC - 2014/08/22, HDFFV-8878)
|
||
|
||
Tools
|
||
-----
|
||
- None
|
||
|
||
High-level APIs
|
||
---------------
|
||
- None
|
||
|
||
Fortran API
|
||
-----------
|
||
- None
|
||
|
||
C++ API
|
||
-------
|
||
- Initialization of Object IDs
|
||
|
||
The data member "id" in classes that represent HDF5 objects were
|
||
initialized to 0, which caused problem for some users.
|
||
|
||
Replaced 0 with H5I_INVALID_HID to initialize these "id"s. For the
|
||
PropList class, H5P_DEFAULT is used instead of H5I_INVALID_HID.
|
||
|
||
(BMR - 2014/09/30, HDFFV-4259)
|
||
|
||
|
||
|
||
Support for New Platforms, Languages, and Compilers
|
||
===================================================
|
||
- None
|
||
|
||
Bug Fixes since HDF5-1.8.13
|
||
===========================
|
||
|
||
Configuration
|
||
-------------
|
||
- CMake and SVN URLs
|
||
|
||
The SVN URLs will be different when the HDF Group domain name changes.
|
||
|
||
Removed the SVN URL references in the cacheinit.cmake and release_docs files.
|
||
|
||
(ADB - 2014/10/27, HDFFV-8953)
|
||
|
||
- CMake Packaging
|
||
|
||
A Fortran module was not generated if the compiler was not F2003
|
||
compliant.
|
||
|
||
Removed the module name from the package list of Fortran modules because
|
||
that module was never generated. This was only an issue for Fortran
|
||
compliers that are not F2003 compatible.
|
||
|
||
(ADB - 2014/10/16, HDFFV-8932)
|
||
|
||
- Shared Library Interface Version Number (soname)
|
||
|
||
In order to increase the maintainability of HDF5, an architectural
|
||
change was made which required the renaming of several public symbols in
|
||
H5Ppublic.h.
|
||
|
||
The shared libary interface version number ("soname") has been increased
|
||
on account of these changes. For a full list of the changed symbols, see
|
||
the interface compatibility report, which is available as a link off of
|
||
the 'HDF5 Software Changes from Release to Release' document:
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/ADGuide/Changes.html
|
||
|
||
(AKC - 2014/10/03, HDFFV-8937)
|
||
|
||
- Configure Settings for Mac OSX Need Defaults for PROD_XXX, DEBUG_XXX,
|
||
and PROFILE_XXX
|
||
|
||
The configure setting files for Mac OSX (config/apple) did not
|
||
have the default settings of PROD_XXX, DEBUG_XXX, PROFILE_XXX.
|
||
|
||
Added the default settings. Mac platforms now builds library with
|
||
"-O3" optimization when the default clang compiler is used.
|
||
|
||
(AKC - 2014/10/01, HDFFV-8933)
|
||
|
||
- CMake ConfigureChecks
|
||
|
||
Two include files were missing from two C tests.
|
||
|
||
Propagated the configure test changes to H5_LDOUBLE_TO_INTEGER_WORKS_TEST
|
||
and H5_ULLONG_TO_LDOUBLE_PRECISION_TEST to ConfigureChecks.cmake (added
|
||
stdlib.h and string.h in the HDFTests.c file).
|
||
|
||
(ADB - 2014/09/02 HDFFV-8845)
|
||
|
||
- CMake Parallel Test Missing
|
||
|
||
The source file was removed in the previous release but the parallel
|
||
test t_posix_compliant was not.
|
||
|
||
Removed the t_posix_compliant parallel test from the library.
|
||
|
||
(ADB - 2014/8/14 HDFFV-8880)
|
||
|
||
- Autotools Reconfigure. Bison. Flex.
|
||
|
||
The Bison and Flex files were out of date.
|
||
|
||
Bison was upgraded to 2.7, and Flex was upgraded to 2.5.37. The
|
||
bin/reconfigure script now will execute Bison and Flex and update
|
||
the hl/src files.
|
||
|
||
(ADB - 2014/06/16 HDFFV-8709)
|
||
|
||
- Autotools Reconfigure. m4.
|
||
|
||
The m4 macro processor was out of date.
|
||
|
||
Reconfigured Autotools with m4 upgraded to 1.4.17.
|
||
|
||
(ADB - 2014/06/12 HDFFV-8743)
|
||
|
||
- Autotools: Modified configure to add an entry at the beginning of AM_LDFLAGS
|
||
for the hdf5 install directory. Without this entry the relink commands
|
||
invoked by "make install" to create libraries dependent on libhdf5.so added
|
||
a dependency on the first libhdf5.so found in any directory in AM_LDFLAGS
|
||
regardless of its version. (LRK - 2014/10/17 HDFFV-8944)
|
||
|
||
- Changed Autotools Build Behavior. Fortran High-level Library.
|
||
|
||
The Fortran high-level (HL) library did not compile if the default
|
||
size of a REAL is DOUBLE PRECISION; the build would fail during
|
||
compilation.
|
||
|
||
Configure now checks to see if REAL is DOUBLE PRECISION, Fortran is
|
||
enabled, and HL library is enabled. If this is true, then configure
|
||
will stop with an error message.
|
||
|
||
(MSB - 2014/8/11, HDFFV-8883/HDFFV-889)
|
||
|
||
|
||
|
||
Library
|
||
-------
|
||
- Fixed Identifier Management Code
|
||
|
||
Opening an object returns an identifier; closing the object should
|
||
free up the identifier. A problem was found where the identifiers
|
||
were not being freed up correctly.
|
||
|
||
Fixed the problem so that identifiers that have been used can be
|
||
used again after their object has been closed.
|
||
|
||
(QAK - 2014/10/16, HDFFV-8930)
|
||
|
||
- Removal of DllMain() from Static Windows Builds
|
||
|
||
A DllMain() function was added in HDF5 1.8.13 in order to handle
|
||
win32 thread cleanup. The preprocessor #ifdefs around the DllMain
|
||
function allowed it to be compiled when the static library is built,
|
||
which is incorrect behavior that can cause linkage problems in
|
||
clients.
|
||
|
||
The fix was to change the preprocessor #ifdefs to exclude compiling
|
||
DllMain() in static builds. Our DllMain function is now only
|
||
compiled when the shared, thread-safe library is built on Windows.
|
||
|
||
(DER - 2014/06/13, HDFFV-8837)
|
||
|
||
- Enforce Constraint on page_size Parameter in H5Pset_core_write_tracking()
|
||
|
||
The reference manual states that the page_size parameter cannot be
|
||
zero.
|
||
|
||
This change checks the page_size parameter to see it is zero and
|
||
returns an error code if it is.
|
||
|
||
(DER - 2014/08/11, HDFFV-8891)
|
||
|
||
- H5Ldelete_by_idx() fails on non-existent group name.
|
||
(MSC - 2014/07/31, HDFFV-8888)
|
||
|
||
- H5Ldelete_by_idx() Seg Fault on Non-existent Group Name
|
||
|
||
If a non-existent group name was used by H5Ldelete_by_idx(), a
|
||
segmentation fault would result.
|
||
|
||
Bug was fixed.
|
||
|
||
(MSC - 2014/07/31, HDFFV-8888)
|
||
|
||
- Bug in Test When Building Parallel HDF5 on PVFS2
|
||
|
||
There was a bug in a test when building Parallel HDF5 on PVFS2.
|
||
|
||
The build now uses MPI_File_get_size() instead of stat().
|
||
|
||
(MSC - 2014/07/14, HDFFV-8856)
|
||
|
||
- MPI-IO Driver Tried to Allocate Space for Zero-length Dataset
|
||
|
||
MPI-IO driver tried to allocate space for zero-length dataset
|
||
and asserts.
|
||
|
||
Fixed driver and added a regression test.
|
||
|
||
(MSC - 2014/07/03, HDFFV-8761)
|
||
|
||
|
||
Parallel Library
|
||
----------------
|
||
- None
|
||
|
||
Performance
|
||
-------------
|
||
- None
|
||
|
||
Tools
|
||
-----
|
||
- None
|
||
|
||
Fortran API
|
||
-------
|
||
- SIZEOF Replaced by C_SIZEOF and STORAGE_SIZE.
|
||
|
||
The intrinsic function SIZEOF is non-standard and should be replaced with a
|
||
standard intrinsic function.
|
||
|
||
If the F2008 intrinsic C_SIZEOF and STORAGE_SIZE are available, then they will
|
||
be used instead of the non-standard SIZEOF intrinsic, even when the SIZEOF
|
||
function is available.
|
||
|
||
(MSB - 2014/6/16, HDFFV-8653)
|
||
|
||
- Non-functional API: h5pget_fill_value_f
|
||
|
||
The Fortran wrapper h5pget_fill_value_f was calling the wrong C API.
|
||
|
||
The correct C API, H5Pget_fill_value, is now called by the Fortran
|
||
wrapper.
|
||
|
||
(MSB - 2014/9/25, HDFFV-8879)
|
||
|
||
- Interoperability with C HDF5: H5Literate and h5literate_f
|
||
|
||
h5literate_f assumes the return value for the callback function to
|
||
be of type int (or int_f in C). However, in the C wrapper the return
|
||
value of H5Literate is type herr_t, and this could cause
|
||
interoperability issues.
|
||
|
||
The callback function should be declared INTEGER(C_INT) for
|
||
portability. The tests were updated accordingly.
|
||
|
||
(MSB - 2014/9/26, HDFFV-8909)
|
||
|
||
- Interoperability with C HDF5: Constant INTEGER Parameters with the
|
||
H5FD Interface
|
||
|
||
Wrong type cast of constant Fortran INTEGER parameters was used.
|
||
|
||
The following parameter constant types were changed from INTEGER to
|
||
INTEGER(HID_T) to match the C types: H5FD_CORE, H5FD_FAMILY, H5FD_LOG,
|
||
H5FD_MPIO, H5FD_MULTI, H5FD_SEC2, and H5FD_STDIO.
|
||
|
||
Other internal 'int' types where changed to 'hid_t'; these are
|
||
transparent to the user.
|
||
|
||
(MSB - 2014/7/18, HDFFV-8748)
|
||
|
||
C++ API
|
||
------
|
||
- Memory Leaks
|
||
|
||
There were several potential memory leaks in the library due to
|
||
dynamically allocated strings not being freed when failure occurs.
|
||
|
||
Applied user's patches to remove these potential memory leaks.
|
||
|
||
(BMR - 2014/09/30, HDFFV-8928)
|
||
|
||
- Disallow H5F_ACC_CREAT
|
||
|
||
H5F_ACC_CREAT was included in the C++ API but the C library does not
|
||
allow it at this time.
|
||
|
||
Removed this flag from the functions in H5File class.
|
||
|
||
(BMR - 2014/09/29, HDFFV-8852)
|
||
|
||
- Missing Flags in Documentation: H5F_ACC_RDONLY and H5F_ACC_RDWR
|
||
|
||
The H5F_ACC_RDONLY and H5F_ACC_RDWR flags were missing from the
|
||
documentation of the H5File constructors.
|
||
|
||
These two flags are now included in the documentation for opening
|
||
files.
|
||
|
||
(BMR - 2014/09/29, HDFFV-8852)
|
||
|
||
High-level APIs:
|
||
------
|
||
- Seg Faults in H5TBread_field_name and H5TBread_field_name_f
|
||
|
||
When H5TBread_field_name or H5TBread_field_name_f were used to read a
|
||
field and if the name of the field was wrong, a segmentation fault
|
||
would result.
|
||
|
||
Both C and Fortran APIs were fixed so they no longer seg fault if
|
||
the name of the field is wrong, and both APIs return a negative
|
||
value if the name of the field is wrong.
|
||
|
||
(MSB - 2014/09/29, HDFFV-8912)
|
||
|
||
- Possible Buffer Overflow in High-level (HL) APIs
|
||
|
||
Multiple HL APIs (H5DSis_scale is one example) had issues:
|
||
(1) The datatype from the file was re-used as the memory datatype,
|
||
and
|
||
(2) No effort was made to ensure that strings were actually
|
||
null-terminated.
|
||
|
||
All of the HL routines now check for NULL pointers, for null-terminated
|
||
strings, and to see if string buffers are short enough not to overflow
|
||
the buffer. The minimum length of the buffers is now used in strncmp
|
||
to avoid overflow.
|
||
|
||
(MSB - 2014/9/29, HDFFV-8670)
|
||
|
||
- Behavior Change of H5LTdtype_to_text
|
||
|
||
If a user buffer was passed in to H5LTdtype_to_text along with the
|
||
length, then the function would not truncate at the end of the
|
||
buffer, but would exceed the end of the user buffer.
|
||
|
||
H5LTdtype_to_text was changed to truncate the string if the user
|
||
buffer is too small.
|
||
|
||
(MSB - 2014/9/29, HDFFV-8855)
|
||
|
||
Fortran High-level APIs:
|
||
------
|
||
- See entry for HDFFV-8912 above.
|
||
|
||
Testing
|
||
-------
|
||
- A subtest in parallel h5diff (ph5diff) testing was bypassed for the
|
||
local Linux 32 machine due to unknown issue in the previous version of
|
||
Mpich. The failure no long exists in the current Mpich. Therefore the
|
||
bypass is removed. (AKC - 2014/11/03 HDFFV-8954)
|
||
|
||
- Fixed incorrect exit code values (was -1) in testframe which is commonly
|
||
used by several test programs. (AKC - 2014/07/22 HDFFV-8881)
|
||
|
||
- Fixed Incorrect Exit Code Values in Testframe
|
||
The testframe which is commonly used by several test programs
|
||
had some incorrect exit code values. Fixed the incorrect exit code
|
||
values. (AKC - 2014/07/22, HDFFV-8881)
|
||
|
||
Supported Platforms
|
||
===================
|
||
The following platforms are supported and have been tested for this release.
|
||
They are built with the configure process unless specified otherwise.
|
||
|
||
AIX 5.3 xlc 10.1.0.5
|
||
(NASA G-ADA) xlC 10.1.0.5
|
||
xlf90 12.1.0.6
|
||
|
||
Linux 2.6.18-308.13.1.el5PAE GNU C (gcc), Fortran (gfortran), C++ (g++)
|
||
#1 SMP i686 i686 i386 compilers for 32-bit applications;
|
||
(jam) Version 4.1.2 20080704 (Red Hat 4.1.2-54)
|
||
Version 4.8.2
|
||
PGI C, Fortran, C++ Compilers for 32-bit
|
||
applications;
|
||
Version 13.7-0
|
||
Intel(R) C, C++, Fortran Compiler for 32-bit
|
||
applications;
|
||
Version 14.0.2 (Build 20140120)
|
||
|
||
Linux 2.6.18-371.6.1.el5 GNU C (gcc), Fortran (gfortran), C++ (g++)
|
||
#1 SMP x86_64 GNU/Linux compilers for 64-bit applications;
|
||
(koala) Version 4.1.2 20080704 (Red Hat 4.1.2-54)
|
||
Version 4.8.2
|
||
Intel(R) C, C++, Fortran Compilers for
|
||
applications running on Intel(R) 64;
|
||
Version 14.0.2 (Build 20140120)
|
||
|
||
Linux 2.6.32-431.11.2.el6 GNU C (gcc), Fortran (gfortran), C++ (g++)
|
||
#1 SMP x86_64 GNU/Linux compilers:
|
||
(platypus) Version 4.4.7 20120313
|
||
Version 4.8.2
|
||
PGI C, Fortran, C++ for 64-bit target on
|
||
x86-64;
|
||
Version 13.7-0
|
||
Intel(R) C (icc), C++ (icpc), Fortran (icc)
|
||
compilers:
|
||
Version 14.0.2 (Build 20140120)
|
||
|
||
Linux 2.6.32-431.29.2.el6.ppc64 gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-4)
|
||
#1 SMP ppc64 GNU/Linux g++ (GCC) 4.4.7 20120313 (Red Hat 4.4.7-4)
|
||
(ostrich) GNU Fortran (GCC) 4.4.7 20120313 (Red Hat 4.4.7-4)
|
||
IBM XL C/C++ V13.1
|
||
IBM XL Fortran V15.1
|
||
|
||
SunOS 5.11 32- and 64-bit Sun C 5.12 SunOS_sparc
|
||
(emu) Sun Fortran 95 8.6 SunOS_sparc
|
||
Sun C++ 5.12 SunOS_sparc
|
||
|
||
Windows 7 Visual Studio 2008 (cmake)
|
||
Visual Studio 2010 w/ Intel Fortran 14 (cmake)
|
||
Visual Studio 2012 w/ Intel Fortran 14 (cmake)
|
||
Visual Studio 2013 w/ Intel Fortran 14 (cmake)
|
||
Cygwin(CYGWIN_NT-6.1 1.7.32(0.274/5/3) gcc(4.8.3) compiler and gfortran)
|
||
(cmake and autotools)
|
||
|
||
Windows 7 x64 Visual Studio 2008 (cmake)
|
||
Visual Studio 2010 w/ Intel Fortran 14 (cmake)
|
||
Visual Studio 2012 w/ Intel Fortran 14 (cmake)
|
||
Visual Studio 2013 w/ Intel Fortran 14 (cmake)
|
||
|
||
Windows 8.1 Visual Studio 2012 w/ Intel Fortran 14 (cmake)
|
||
Visual Studio 2013 w/ Intel Fortran 14 (cmake)
|
||
|
||
Windows 8.1 x64 Visual Studio 2012 w/ Intel Fortran 14 (cmake)
|
||
Visual Studio 2013 w/ Intel Fortran 14 (cmake)
|
||
|
||
Mac OS X Lion 10.7.5 Apple clang/clang++ version 3.0 from Xcode 4.6.1
|
||
64-bit gfortran GNU Fortran (GCC) 4.8.2
|
||
(duck) Intel icc/icpc/ifort version 13.0.3
|
||
|
||
Mac OS X Mt. Lion 10.8.5 Apple clang/clang++ version 5.1 from Xcode 5.1
|
||
64-bit gfortran GNU Fortran (GCC) 4.8.2
|
||
(swallow/kite) Intel icc/icpc/ifort version 14.0.2
|
||
|
||
Mac OS X Mavericks 10.9.5 Apple clang/clang++ version 6.0 from Xcode 6.0.1
|
||
64-bit gfortran GNU Fortran (GCC) 4.8.2
|
||
(wren) Intel icc/icpc/ifort version 14.0.2
|
||
|
||
|
||
Tested Configuration Features Summary
|
||
=====================================
|
||
|
||
In the tables below
|
||
y = tested
|
||
n = not tested in this release
|
||
C = Cluster
|
||
W = Workstation
|
||
x = not working in this release
|
||
dna = does not apply
|
||
( ) = footnote appears below second table
|
||
<blank> = testing incomplete on this feature or platform
|
||
|
||
Platform C F90/ F90 C++ zlib SZIP
|
||
parallel F2003 parallel
|
||
Solaris2.11 32-bit n y/y n y y y
|
||
Solaris2.11 64-bit n y/y n y y y
|
||
Windows 7 y y/y n y y y
|
||
Windows 7 x64 y y/y n y y y
|
||
Windows 7 Cygwin n y/y n y y n
|
||
Windows 8.1 n y/y n y y y
|
||
Windows 8.1 x64 n y/y n y y y
|
||
Mac OS X Lion 10.7.5 64-bit n y/y n y y y
|
||
Mac OS X Mountain Lion 10.8.5 64-bit n y/y n y y y
|
||
Mac OS X Mavericks 10.9.5 64-bit n y/y n y y ?
|
||
AIX 5.3 32- and 64-bit n y/n n y y y
|
||
CentOS 5.9 Linux 2.6.18-308 i686 GNU y y/y y y y y
|
||
CentOS 5.9 Linux 2.6.18-308 i686 Intel n y/y n y y y
|
||
CentOS 5.9 Linux 2.6.18-308 i686 PGI n y/y n y y y
|
||
CentOS 5.9 Linux 2.6.18 x86_64 GNU n y/y n y y y
|
||
CentOS 5.9 Linux 2.6.18 x86_64 Intel n y/y n y y y
|
||
CentOS 6.4 Linux 2.6.32 x86_64 GNU y y/y y y y y
|
||
CentOS 6.4 Linux 2.6.32 x86_64 Intel n y/y n y y y
|
||
CentOS 6.4 Linux 2.6.32 x86_64 PGI n y/y n y y y
|
||
Linux 2.6.32-431.11.2.el6.ppc64 n y/n n y y y
|
||
|
||
Platform Shared Shared Shared Thread-
|
||
C libs F90 libs C++ libs safe
|
||
Solaris2.11 32-bit y y y y
|
||
Solaris2.11 64-bit y y y y
|
||
Windows 7 y y y y
|
||
Windows 7 x64 y y y y
|
||
Windows 7 Cygwin n n n y
|
||
Windows 8.1 y y y y
|
||
Windows 8.1 x64 y y y y
|
||
Mac OS X Lion 10.7.5 64-bit y n y y
|
||
Mac OS X Mountain Lion 10.8.5 64-bit y n y y
|
||
Mac OS X Mavericks 10.9.5 64-bit y n y y
|
||
AIX 5.3 32- and 64-bit y n n y
|
||
CentOS 5.9 Linux 2.6.18-308 i686 GNU y y y y
|
||
CentOS 5.9 Linux 2.6.18-308 i686 Intel y y y n
|
||
CentOS 5.9 Linux 2.6.18-308 i686 PGI y y y n
|
||
CentOS 5.9 Linux 2.6.18 x86_64 GNU y y y y
|
||
CentOS 5.9 Linux 2.6.18 x86_64 Intel y y y n
|
||
CentOS 6.4 Linux 2.6.32 x86_64 GNU y y y n
|
||
CentOS 6.4 Linux 2.6.32 x86_64 Intel y y y n
|
||
CentOS 6.4 Linux 2.6.32 x86_64 PGI y y y n
|
||
Linux 2.6.32-431.11.2.el6.ppc64 y y y n
|
||
|
||
Compiler versions for each platform are listed in the preceding
|
||
"Supported Platforms" table.
|
||
|
||
|
||
More Tested Platforms
|
||
=====================
|
||
The following platforms are not supported but have been tested for this release.
|
||
|
||
Linux 2.6.18-308.13.1.el5PAE MPICH mpich 3.1.2 compiled with
|
||
#1 SMP i686 i686 i386 gcc 4.9.1 and gfortran 4.9.1
|
||
(jam) g95 (GCC 4.0.3 (g95 0.94!)
|
||
|
||
Linux 2.6.18-431.11.2.el6 MPICH mpich 3.1.2 compiled with
|
||
#1 SMP x86_64 GNU/Linux gcc 4.9.1 and gfortran 4.9.1
|
||
(platypus) g95 (GCC 4.0.3 (g95 0.94!)
|
||
|
||
FreeBSD 8.2-STABLE i386 gcc 4.5.4 [FreeBSD] 20110526
|
||
(loyalty) gcc 4.6.1 20110527
|
||
g++ 4.6.1 20110527
|
||
gfortran 4.6.1 20110527
|
||
|
||
FreeBSD 8.2-STABLE amd64 gcc 4.5.4 [FreeBSD] 20110526
|
||
(freedom) gcc 4.6.1 20110527
|
||
g++ 4.6.1 20110527
|
||
gfortran 4.6.1 20110527
|
||
|
||
Debian7.5.0 3.2.0-4-amd64 #1 SMP Debian 3.2.51-1 x86_64 GNU/Linux
|
||
gcc (Debian 4.7.2-5) 4.7.2
|
||
GNU Fortran (Debian 4.7.2-5) 4.7.2
|
||
(cmake and autotools)
|
||
|
||
Fedora20 3.15.3-200.fc20.x86_64 #1 SMP x86_64 x86_64 x86_64 GNU/Linux
|
||
gcc (GCC) 4.8.3 20140624 (Red Hat 4.8.3-1)
|
||
GNU Fortran (GCC) 4.8.3 20140624 (Red Hat 4.8.3-1)
|
||
(cmake and autotools)
|
||
|
||
SUSE 13.1 3.11.10-17-desktop #1 SMP PREEMPT x86_64 x86_64 x86_64 GNU/Linux
|
||
gcc (SUSE Linux) 4.8.1
|
||
GNU Fortran (SUSE Linux) 4.8.1
|
||
(cmake and autotools)
|
||
|
||
Ubuntu 14.04 3.13.0-35-generic #62-Ubuntu SMP x86_64 GNU/Linux
|
||
gcc (Ubuntu/Linaro 4.9.1-0ubuntu1) 4.9.1
|
||
GNU Fortran (Ubuntu/Linaro 4.9.1-0ubuntu1) 4.9.1
|
||
(cmake and autotools)
|
||
|
||
Cray Linux Environment (CLE) PrgEnv-pgi/4.2.34
|
||
hopper.nersc.gov pgcc 13.6-0 64-bit target on x86-64 Linux -tp istanbul
|
||
pgf90 13.6-0 64-bit target on x86-64 Linux -tp istanbul
|
||
pgCC 13.6-0 64-bit target on x86-64 Linux -tp istanbul
|
||
|
||
|
||
Known Problems
|
||
==============
|
||
* On cygwin platforms the feature to load dynamic filter libraries only looks
|
||
for libraries with the a so extension. Support for cygwin cygxxx.dll libraries
|
||
is planned for the next release.
|
||
(ADB - 2014/11/04 - HDFFV-8736)
|
||
|
||
* On windows platforms in debug configurations, the VFD flush1 tests will fail
|
||
with the split and multi VFD drivers. These tests will display a modal debug
|
||
dialog which must be answered or wait for the test timeout to expire.
|
||
The flush1 and flush2 tests will be skipped under debug for this release.
|
||
(ADB - 2014/06/23 - HDFFV-8851)
|
||
|
||
* CLANG compiler with the options -fcatch-undefined-behavior and -ftrapv
|
||
catches some undefined behavior in the alignment algorithm of the macro DETECT_I
|
||
in H5detect.c (Issue 8147). Since the algorithm is trying to detect the alignment
|
||
of integers, ideally the flag -fcatch-undefined-behavior shouldn't to be used for
|
||
H5detect.c. In the future, we can separate flags for H5detect.c from the rest of
|
||
the library. (SLU - 2013/10/16)
|
||
|
||
* Make provided by Solaris fails in "make check". Solaris users should use
|
||
gmake to build and install the HDF5 software. (AKC - 2013/10/08 - HDFFV-8534)
|
||
|
||
* The h5dump and h5diff utilities occasionally produce different output
|
||
between Linux and Windows systems. This is caused by lower-level library
|
||
routines that fail to write fill values to the user's buffer when reading
|
||
unallocated chunks from datasets that have a fill value set to
|
||
H5D_FILL_VALUE_DEFAULT. Due to platform differences the return of
|
||
spurious data values has only been encountered on Windows 32-bit systems.
|
||
(Issue HDFFV-8247; JP - 2013/03/27)
|
||
|
||
* The C++ and FORTRAN bindings are not currently working on FreeBSD with the
|
||
native release 8.2 compilers (4.2.1), but are working with gcc 4.6 from the
|
||
ports (and probably gcc releases after that).
|
||
(QAK - 2012/10/19)
|
||
|
||
* The STDIO VFD does not work on some architectures, possibly due to 32/64
|
||
bit or large file issues. The basic STDIO VFD test is known to fail on
|
||
64-bit SunOS 5.10 on SPARC when built with -m64 and 32-bit OS X/Darwin
|
||
10.7.0. The STDIO VFD test has been disabled while we investigate and
|
||
a fix should appear in a future release.
|
||
(DER - 2011/10/14 - HDFFV-8235)
|
||
|
||
* h5diff can report inconsistent results when comparing datasets of enum type
|
||
that contain invalid values. This is due to how enum types are handled in
|
||
the library and will be addressed in a future release.
|
||
(DER - 2011/10/14 - HDFFV-7527)
|
||
|
||
* The links test can fail under the stdio VFD due to some issues with external
|
||
links. This will be investigated and fixed in a future release.
|
||
(DER - 2011/10/14 - HDFFV-7768)
|
||
|
||
* After the shared library support was fixed for some bugs, it was discovered
|
||
that "make prefix=XXX install" no longer works for shared libraries. It
|
||
still works correctly for static libraries. Therefore, if you want to
|
||
install the HDF5 shared libraries in a location such as /usr/local/hdf5,
|
||
you need to specify the location via the --prefix option during configure
|
||
time. E.g, ./configure --prefix=/usr/local/hdf5 ...
|
||
(AKC - 2011/05/07 - HDFFV-7583)
|
||
|
||
* The parallel test, t_shapesame, in testpar/, may run for a long time and may
|
||
be terminated by the alarm signal. If that happens, one can increase the
|
||
alarm seconds (default is 1200 seconds = 20 minutes) by setting the
|
||
environment variable, $HDF5_ALARM_SECONDS, to a larger value such as 3600
|
||
(60 minutes). Note that the t_shapesame test may fail in some systems
|
||
(see the "While working on the 1.8.6 release..." problem below). If
|
||
it does, it will waste more time if $HDF5_ALARM_SECONDS is set
|
||
to a larger value.
|
||
(AKC - 2011/05/07)
|
||
|
||
* Shared Fortran libraries are not quite working on AIX. While they are
|
||
generated when --enable-shared is specified, the fortran and hl/fortran
|
||
tests fail. We are looking into the issue. HL and C++ shared libraries
|
||
should now be working as intended, however.
|
||
(MAM - 2011/04/20)
|
||
|
||
* The --with-mpe configure option does not work with Mpich2.
|
||
(AKC - 2011/03/10)
|
||
|
||
* While working on the 1.8.6 release of HDF5, a bug was discovered that can
|
||
occur when reading from a dataset in parallel shortly after it has been
|
||
written to collectively. The issue was exposed by a new test in the parallel
|
||
HDF5 test suite, but had existed before that. We believe the problem lies with
|
||
certain MPI implementations and/or file systems.
|
||
|
||
We have provided a pure MPI test program, as well as a standalone HDF5
|
||
program, that can be used to determine if this is an issue on your system.
|
||
They should be run across multiple nodes with a varying number of processes.
|
||
These programs can be found at:
|
||
http://www.hdfgroup.org/ftp/HDF5/examples/known_problems/
|
||
(NAF - 2011/01/19)
|
||
|
||
* All the VFL drivers aren't backward compatible. In H5FDpublic.h, the
|
||
structure H5FD_class_t changed in 1.8. There is new parameter added to
|
||
get_eoa and set_eoa callback functions. A new callback function
|
||
get_type_map was added in. The public function H5FDrealloc was taken
|
||
out in 1.8. The problem only happens when users define their own driver
|
||
for 1.6 and try to plug in 1.8 library. Because there's only one user
|
||
complaining about it, we (Elena, Quincey, and I) decided to leave it as
|
||
it is (see bug report #1279). Quincey will make a plan for 1.10.
|
||
(SLU - 2010/02/02)
|
||
|
||
* The --enable-static-exec configure flag will only statically link libraries
|
||
if the static version of that library is present. If only the shared version
|
||
of a library exists (i.e., most system libraries on Solaris, AIX, and Mac,
|
||
for example, only have shared versions), the flag should still result in a
|
||
successful compilation, but note that the installed executables will not be
|
||
fully static. Thus, the only guarantee on these systems is that the
|
||
executable is statically linked with just the HDF5 library.
|
||
(MAM - 2009/11/04)
|
||
|
||
* Parallel tests failed with 16 processes with data inconsistency at testphdf5
|
||
/ dataset_readAll. Parallel tests also failed with 32 and 64 processes with
|
||
collective abort of all ranks at t_posix_compliant / allwrite_allread_blocks
|
||
with MPI IO.
|
||
(CMC - 2009/04/28)
|
||
|
||
* A dataset created or rewritten with a v1.6.3 library or after cannot be read
|
||
with the v1.6.2 library or before when the Fletcher32 EDC filter is enabled.
|
||
There was a bug in the calculation of the Fletcher32 checksum in the
|
||
library before v1.6.3; the checksum value was not consistent between big-
|
||
endian and little-endian systems. This bug was fixed in Release 1.6.3.
|
||
However, after fixing the bug, the checksum value was no longer the same as
|
||
before on little-endian system. Library releases after 1.6.4 can still read
|
||
datasets created or rewritten with an HDF5 library of v1.6.2 or before.
|
||
(SLU - 2005/06/30)
|
||
|
||
|
||
%%%%1.8.13%%%%
|
||
|
||
|
||
HDF5 version 1.8.13 released on 2014-05-05
|
||
================================================================================
|
||
|
||
INTRODUCTION
|
||
============
|
||
|
||
This document describes the differences between HDF5-1.8.12 and
|
||
HDF5-1.8.13, and contains information on the platforms tested and
|
||
known problems in HDF5-1.8.13.
|
||
For more details, see the files HISTORY-1_0-1_8_0_rc3.txt
|
||
and HISTORY-1_8.txt in the release_docs/ directory of the HDF5 source.
|
||
|
||
Links to the HDF5 1.8.13 source code, documentation, and additional materials
|
||
can be found on the HDF5 web page at:
|
||
|
||
http://www.hdfgroup.org/products/hdf5/
|
||
|
||
The HDF5 1.8.13 release can be obtained from:
|
||
|
||
http://www.hdfgroup.org/HDF5/release/obtain5.html
|
||
|
||
User documentation for 1.8.13 can be accessed directly at this location:
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/
|
||
|
||
New features in the HDF5-1.8.x release series, including brief general
|
||
descriptions of some new and modified APIs, are described in the "What's New
|
||
in 1.8.0?" document:
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/ADGuide/WhatsNew180.html
|
||
|
||
All new and modified APIs are listed in detail in the "HDF5 Software Changes
|
||
from Release to Release" document, in the section "Release 1.8.13 (current
|
||
release) versus Release 1.8.12":
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/ADGuide/Changes.html
|
||
|
||
If you have any questions or comments, please send them to the HDF Help Desk:
|
||
|
||
help@hdfgroup.org
|
||
|
||
|
||
CONTENTS
|
||
========
|
||
|
||
- New Features
|
||
- Support for New Platforms, Languages, and Compilers
|
||
- Bug Fixes since HDF5-1.8.12
|
||
- Supported Platforms
|
||
- Supported Configuration Features Summary
|
||
- More Tested Platforms
|
||
- Known Problems
|
||
|
||
|
||
New Features
|
||
============
|
||
|
||
Configuration
|
||
-------------
|
||
- Autotools: Automake updated to 1.14.1 (ADB - 2014/04/08)
|
||
|
||
- CMake: Moved minimum CMake version to 2.8.11 which enables better library
|
||
include processing. (ADB - 2014/03/26)
|
||
|
||
- When configuring a thread-safe HDF5 Library it is no longer necessary
|
||
to specify --enable-threadsafe with --with-pthreads if the Pthreads
|
||
library is in a standard location. (DER - 2014/04/11 HDFFV-8693)
|
||
|
||
Library
|
||
-------
|
||
- Added an H5free_memory API call. This should be used to free memory
|
||
that has been allocated by HDF5 API calls. H5Tget_member_name and
|
||
H5Pget_class_name are two examples. The main motivation for this call
|
||
is Windows, where it is common for application code and the HDF5 Library
|
||
to be using different C run-time libraries (CRT). Using the new call
|
||
ensures that the same CRT handles both the allocation and free. This
|
||
new function can also be useful in any case where the library uses a
|
||
different memory manager than the application, such as when a debug
|
||
memory manager is in use or when the HDF5 Library is wrapped for use
|
||
in a managed language like Python or Java. Fixes HDFFV-7710, 8519,
|
||
and 8851. (DER - 2014/04/11)
|
||
|
||
- The Core VFD (aka Memory VFD) can now be configured to track dirty
|
||
regions in the file and only write out the changed regions on
|
||
flush/close. Additionally, a "page aggregation" size can be set that
|
||
will aggregate small writes into larger writes. For example, setting
|
||
a 1 MiB page aggregation size will logically partition the the
|
||
in-memory file into 1 MiB pages that will be written out in their
|
||
entirety if even a single byte is dirtied. The feature is controlled
|
||
via the new H5Pset/get_core_write_tracking() API call. A new
|
||
"core_paged" target has been added to the check-vfd target in
|
||
test/Makefile.am that exercises the feature over all HDF5 VFD-aware
|
||
tests. (DER - 2014/04/12)
|
||
|
||
Parallel Library
|
||
----------------
|
||
- Removed MPI-POSIX VFD, as it wasn't helping anyone and was just
|
||
generating support questions. Application developers performing
|
||
parallel I/O should always use the MPI-IO VFD.
|
||
(QAK - 2014/03/28 HDFFV-8659)
|
||
|
||
- Improved parallel I/O support to allow collective I/O on point
|
||
selections. (QAK - 2014/03/15)
|
||
|
||
Tools
|
||
-----
|
||
- None
|
||
|
||
High-Level APIs
|
||
---------------
|
||
- None
|
||
|
||
Fortran API
|
||
-----------
|
||
- Wrappers h5pset_file_image_f and h5pget_file_image_f were added to the
|
||
library. (MSB - 2014/1/2014)
|
||
|
||
C++ API
|
||
-------
|
||
- The following new features are added:
|
||
+ Wrappers to class H5Object to get an object's name (HDFFV-8548).
|
||
ssize_t getObjName(char *obj_name, size_t buf_size = 0)
|
||
ssize_t getObjName(H5std_string& obj_name, size_t len = 0)
|
||
H5std_string getObjName()
|
||
+ Wrappers to class H5CommonFG to get a child object's type from a
|
||
group or file (HDFFV-8367).
|
||
H5O_type_t childObjType(const H5std_string& objname)
|
||
H5O_type_t childObjType(const char* objname)
|
||
H5O_type_t childObjType(hsize_t index,
|
||
H5_index_t index_type=H5_INDEX_NAME,
|
||
H5_iter_order_t order=H5_ITER_INC, const char* objname=".")
|
||
+ Wrappers to class DSetMemXferPropList for setting/getting a transform
|
||
property list (HDFFV-7907).
|
||
DSetMemXferPropList(const char* expression);
|
||
void setDataTransform(const char* expression)
|
||
void setDataTransform(const H5std_string& expression)
|
||
ssize_t getDataTransform(char* exp, size_t buf_size=0)
|
||
H5std_string getDataTransform()
|
||
+ Wrapper to CompType for setting size to compound datatype (HDFFV-8642).
|
||
void setSize(size_t size)
|
||
+ Overloaded functions to provide prototypes that declare constant
|
||
arguments const (HDFFV-3384). These include:
|
||
DataSet::fillMemBuf
|
||
DataSet::getVlenBufSize
|
||
DataSpace::extentCopy
|
||
DataType::commit
|
||
FileAccPropList::setSplit
|
||
H5File::getVFDHandle
|
||
+ Additional overload to class H5Location to get a comment as a char*
|
||
ssize_t getComment(const char* name, size_t buf_size, char* comment)
|
||
+ Additional overloads to class Attribute to get an attribute's name for
|
||
convenience:
|
||
ssize_t getName(char* attr_name, size_t buf_size=0)
|
||
ssize_t getName(H5std_string& attr_name, size_t buf_size=0)
|
||
(BMR, 2014/04/15)
|
||
+ A static wrapper to Exception for printing the error stack without an
|
||
instance of Exception
|
||
static void printErrorStack(FILE* stream = stderr,
|
||
hid_t err_stack = H5E_DEFAULT);
|
||
(BMR, 2014/04/25)
|
||
|
||
|
||
Support for New Platforms, Languages, and Compilers
|
||
===================================================
|
||
Mac OS X 10.6 Snow Leopard is not supported by Apple any more. In view of
|
||
the added support of Mac OS X 10.9, Mac OS X 10.6 is retired from HDF5
|
||
supported platforms. (AKC - 2014/03/14 HDFFV-8704)
|
||
|
||
Mac OS X 10.9 Mavericks is supported. (AKC - 2014/03/04 HDFFV-8694)
|
||
|
||
|
||
Bug Fixes since HDF5-1.8.12
|
||
===========================
|
||
|
||
Configuration
|
||
-------------
|
||
- CMake: When CMake commands are executed individually on the command line
|
||
and the external filters are being built, the CMAKE_BUILD_TYPE define
|
||
must be set to the same value as the configuration
|
||
(-DCMAKE_BUILD_TYPE:STRING=Release if using -C Release). This is needed
|
||
by the the szip and zlib filter build commands. (ADB - HDFFV-8695)
|
||
|
||
- CMake: Removed use of the XLATE_UTILITY program.
|
||
(ADB - 2014/03/28 HDFFV-8640)
|
||
|
||
- CMake: Added missing quotes in setting the CMAKE_EXE_LINKER_FLAGS for the
|
||
MPI option. (ADB - 2014/02/27 HDFFV-8674)
|
||
|
||
- CMake: Configuration of the HDF5 C++ or Fortran libraries with the
|
||
thread-safety feature.
|
||
|
||
C++ and/or Fortran + thread-safe is enforced as a non-supported
|
||
configuration. This matches the autotools. (DER - 2014/04/11)
|
||
|
||
- CMake: Configuration of static HDF5 C library with the thread-safety
|
||
feature.
|
||
|
||
Static + thread-safe + Win32 threads is not a supported configuration
|
||
due to the inability to automatically clean up thread-local storage.
|
||
This is expected to be fixed in a future release. In the meantime, a
|
||
work-around that uses internal functionality may allow the combination
|
||
to be used without resource leaks. Contact the help desk for more
|
||
information. (DER - 2014/04/11)
|
||
|
||
- Autotools: Several changes were done to configure and installcheck.
|
||
|
||
An export of LD_LIBRARY_PATH=<szip library location> was
|
||
removed from configure; make installcheck was revised to run
|
||
scripts installed in share/hdf5_examples to use the installed h5cc, etc.
|
||
to compile and run example source files also installed there.
|
||
|
||
Make installcheck will now fail when a shared szip or other external lib
|
||
file cannot be found in the same manner that executables compiled and
|
||
linked with h5cc will fail to run when those lib files cannot be found
|
||
after install. Make installcheck should pass after setting
|
||
LD_LIBRARY_PATH to the szip location. (LRK - 2014/04/16)
|
||
|
||
Library
|
||
-------
|
||
- A Gnu Make directive (.NOTPARALLEL) is added to fortran/test/Makefile.
|
||
|
||
AIX native make does not support this directive and would fail if
|
||
parallel make (e.g. make -j4) is used to build the library. AIX users
|
||
either do not use parallel make or install Gnu Make to build the library.
|
||
(AKC 2014/04/08 HDFFV-8738)
|
||
|
||
- H5R.c: H5Rget_name gave an assertion failure if the "name" parameter
|
||
was NULL.
|
||
|
||
Fixed H5Rget_name to return the size of the buffer needed to read a
|
||
name of the referenced object in this case. The size doesn't include
|
||
the NULL terminator. H5Rget_name returns negative on failure.
|
||
(MSB - 2014/01/22 HDFFV-8620)
|
||
|
||
- H5Z.c: H5Zfilter_avail didn't check if a filter was available as a
|
||
dynamically loaded filter. The error manifested itself in the h5repack
|
||
tool when removing user-defined dynamically loaded filter.
|
||
|
||
Added a code to find the filter among the dynamically loaded filters
|
||
after the function fails to find it among the registered filters.
|
||
(ADB - 2014/03/03 HDFFV-8629)
|
||
|
||
- Memory leak: a memory leak was observed in conjunction to the
|
||
H5TS_errstk_key_g thread-local variable allocated in the H5E_get_stack
|
||
function in H5E.c.
|
||
|
||
The shared HDF5 thread-safe library now no longer leaks thread-local
|
||
storage resources on Windows with Win32 threads. Currently, there is
|
||
no solution for this problem when HDF5 is statically built. We
|
||
disabled the build of the static HDF5 thread-safe library with
|
||
Win32 threads. (DER - 2014/04/11 HDFFV-8518)
|
||
|
||
- H5Dio.c: Improved handling of NULL pointers to H5Dread/H5Dwrite
|
||
calls. Credit to Jason Newton (nevion@gmail.com) for the original patch.
|
||
|
||
H5Dwrite/read failed when a NULL pointer was passed for a data buffer
|
||
and 0 elements were selected. Fixed. (QAK - 2014/04/16 HDFFV-8705)
|
||
|
||
- Deprecated API (1_6 API): Improved handling of closing the library and
|
||
re-accessing it with a deprecated routine.
|
||
|
||
When a program used a deprecated API (for example, H5Gcreate1),
|
||
closed the library, and reopened it again to access a group, dataset,
|
||
datatype, dataspace, attribute, or property list, HDF5 failed to
|
||
provide an identifier for the object. Fixed.
|
||
(NAF, QAK - 2014/04/16 HDFFV-8232)
|
||
|
||
Parallel Library
|
||
----------------
|
||
- Fixed a missing H5F_Provisional module in HDF5mpio.f90
|
||
(MSB - 2014/2/7 HDFFV-8651)
|
||
|
||
Performance
|
||
-------------
|
||
- None
|
||
|
||
Tools
|
||
-----
|
||
- The h5diff tool would report that a datafile compared with an exact
|
||
copy of the same datafile had differences. This was due to the issue
|
||
below of reading un-written chunks. This problem is also fixed.
|
||
(AKC - 2014/05/01 HDFFV-8637)
|
||
|
||
- The h5dump and h5diff utilities occasionally produced different output
|
||
between Linux and Windows systems. This has been fixed.
|
||
|
||
This happened to datasets that used chunked storage, with default fill
|
||
values, and some of the chunks had not been written.
|
||
When the dataset was read, the library failed to write the default fill
|
||
values to parts of the use buffer that were associated with the unwritten
|
||
chunks. (JP - 2014/05/01 HDFFV-8247)
|
||
|
||
- The compress option is retired from bin/release.
|
||
(AKC - 2014/04/25 HDFFV-8755)
|
||
|
||
- bin/release has a new option "zip" that produces a release zip file for
|
||
the Windows platform. (AKC - 2014/04/24 HDFFV-8433)
|
||
|
||
- h5diff: Several failures relating to handling of strings attributes
|
||
are fixed.
|
||
|
||
The tool crashed or gave an error message when one of the strings had
|
||
fixed size type and another variable-length size type. h5diff now flags such
|
||
strings as "not comparable". We plan to enhance the tool to handle
|
||
strings of the different types in the future releases.
|
||
(AKC - 2014/04/18 HDFFV-8625, 8639, 8745)
|
||
|
||
- h5repack: h5repack would not remove user-defined filters.
|
||
Fixed by modifying h5repack to check if the filter is registered or
|
||
can be dynamically loaded. (ADB - 2014/03/03 HDFFV-8629)
|
||
|
||
F90 API
|
||
-------
|
||
- H5D_CHUNK_CACHE_NSLOTS_DFLT_F and H5D_CHUNK_CACHE_NBYTES_DFLT_F were
|
||
changed from the default KIND for INTEGER to INTEGER of KIND size_t.
|
||
(MSB - 2014/3/31 HDFFV-8689)
|
||
|
||
C++ API
|
||
------
|
||
- Added throw() to all exception destructors. Credit to Jason Newton
|
||
(nevion@gmail.com) for the patch. (BMR - 2014/4/15 HDFFV-8623)
|
||
- Changed the default value for H5Location::getComment from 256 to 0
|
||
to conform to C function and because it makes more sense.
|
||
(BMR - 2014/4/15)
|
||
|
||
High-Level APIs:
|
||
------
|
||
- None
|
||
|
||
Fortran High-Level APIs:
|
||
------
|
||
- None
|
||
|
||
Testing
|
||
-------
|
||
- testhdf5 now exits with EXIT_SUCCESS(0) if no errors, else
|
||
EXIT_FAILURE(1). (AKC - 2014/01/27 HDFFV-8572)
|
||
|
||
- The big test now pays attention to the HDF5_DRIVER environment variable.
|
||
Previously, it would run all tests with the family, stdio, and sec2
|
||
virtual file drivers (VFDs) for each VFD in the check-vfd make target,
|
||
regardless of the variable setting. It now checks the variable and
|
||
either runs the appropriate VFD-specific tests or skips as needed.
|
||
This saves much testing time. Fixes HDFFV-8554. (DER - 2014/04/11)
|
||
|
||
Supported Platforms
|
||
===================
|
||
The following platforms are supported and have been tested for this release.
|
||
They are built with the configure process unless specified otherwise.
|
||
|
||
AIX 5.3 xlc 10.1.0.5
|
||
(NASA G-ADA) xlC 10.1.0.5
|
||
xlf90 12.1.0.6
|
||
gmake v3.82
|
||
|
||
Linux 2.6.18-308.13.1.el5PAE GNU C (gcc), Fortran (gfortran), C++ (g++)
|
||
#1 SMP i686 i686 i386 compilers for 32-bit applications;
|
||
(jam) Version 4.1.2 20080704 (Red Hat 4.1.2-54)
|
||
Version 4.8.2
|
||
PGI C, Fortran, C++ Compilers for 32-bit
|
||
applications;
|
||
Version 13.7-0
|
||
Intel(R) C, C++, Fortran Compiler for 32-bit
|
||
applications;
|
||
Version 14.0.2 (Build 20140120)
|
||
|
||
Linux 2.6.18-371.6.1.el5 GNU C (gcc), Fortran (gfortran), C++ (g++)
|
||
#1 SMP x86_64 GNU/Linux compilers for 64-bit applications;
|
||
(koala) Version 4.1.2 20080704 (Red Hat 4.1.2-54)
|
||
Version 4.8.2
|
||
PGI C, Fortran, C++ for 64-bit target on
|
||
x86-64;
|
||
Version 13.7-0
|
||
Intel(R) C, C++, Fortran Compilers for
|
||
applications running on Intel(R) 64;
|
||
Version 14.0.2 (Build 20140120)
|
||
|
||
Linux 2.6.32-431.11.2.el6 GNU C (gcc), Fortran (gfortran), C++ (g++)
|
||
#1 SMP x86_64 GNU/Linux compilers:
|
||
(platypus) Version 4.4.7 20120313
|
||
Version 4.8.2
|
||
PGI C, Fortran, C++ for 64-bit target on
|
||
x86-64;
|
||
Version 13.7-0
|
||
Intel(R) C (icc), C++ (icpc), Fortran (icc)
|
||
compilers:
|
||
Version 14.0.2 (Build 20140120)
|
||
|
||
Linux 2.6.32-431.11.2.el6.ppc64 gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-3)
|
||
#1 SMP ppc64 GNU/Linux g++ (GCC) 4.4.7 20120313 (Red Hat 4.4.7-3)
|
||
(ostrich) GNU Fortran (GCC) 4.4.7 20120313 (Red Hat 4.4.7-3)
|
||
IBM XL C/C++ V11.1
|
||
IBM XL Fortran V13.1
|
||
|
||
SunOS 5.11 32- and 64-bit Sun C 5.12 SunOS_sparc
|
||
(emu) Sun Fortran 95 8.6 SunOS_sparc
|
||
Sun C++ 5.12 SunOS_sparc
|
||
|
||
Windows 7 Visual Studio 2008 w/ Intel Fortran 14 (cmake)
|
||
Visual Studio 2010 w/ Intel Fortran 14 (cmake)
|
||
Visual Studio 2012 w/ Intel Fortran 14 (cmake)
|
||
Cygwin(CYGWIN_NT-6.1 1.7.28(0.271/5/3) gcc(4.8.2) compiler and gfortran)
|
||
(cmake and autotools)
|
||
|
||
Windows 7 x64 Visual Studio 2008 w/ Intel Fortran 14 (cmake)
|
||
Visual Studio 2010 w/ Intel Fortran 14 (cmake)
|
||
Visual Studio 2012 w/ Intel Fortran 14 (cmake)
|
||
|
||
Windows 8.1 Visual Studio 2012 w/ Intel Fortran 14 (cmake)
|
||
|
||
Windows 8.1 x64 Visual Studio 2012 w/ Intel Fortran 14 (cmake)
|
||
|
||
Mac OS X Lion 10.7.3 Apple clang/clang++ version 3.0 from Xcode 4.6.1
|
||
64-bit gfortran GNU Fortran (GCC) 4.6.2
|
||
(duck) Intel icc/icpc/ifort version 13.0.3
|
||
|
||
Mac OS X Mt. Lion 10.8.5 Apple clang/clang++ version 5.0 from Xcode 5.0.2
|
||
64-bit gfortran GNU Fortran (GCC) 4.8.2
|
||
(swallow/kite) Intel icc/icpc/ifort version 14.0.2
|
||
|
||
Mac OS X Mavericks 10.9.2 Apple clang/clang++ version 5.1 from Xcode 5.1
|
||
64-bit gfortran GNU Fortran (GCC) 4.8.2
|
||
(wren/quail) Intel icc/icpc/ifort version 14.0.2
|
||
|
||
|
||
Tested Configuration Features Summary
|
||
=====================================
|
||
|
||
In the tables below
|
||
y = tested
|
||
n = not tested in this release
|
||
C = Cluster
|
||
W = Workstation
|
||
x = not working in this release
|
||
dna = does not apply
|
||
( ) = footnote appears below second table
|
||
<blank> = testing incomplete on this feature or platform
|
||
|
||
Platform C F90/ F90 C++ zlib SZIP
|
||
parallel F2003 parallel
|
||
Solaris2.11 32-bit n y/y n y y y
|
||
Solaris2.11 64-bit n y/y n y y y
|
||
Windows 7 y y/y n y y y
|
||
Windows 7 x64 y y/y n y y y
|
||
Windows 7 Cygwin n y/y n y y y
|
||
Windows 8.1 n y/y n y y y
|
||
Windows 8.1 x64 n y/y n y y y
|
||
Mac OS X Lion 10.7.3 64-bit n y/y n y y y
|
||
Mac OS X Mountain Lion 10.8.1 64-bit n y/y n y y y
|
||
Mac OS X Mavericks 10.9.1 64-bit n y/y n y y y
|
||
AIX 5.3 32- and 64-bit n y/n n y y y
|
||
CentOS 5.9 Linux 2.6.18-308 i686 GNU y y/y y y y y
|
||
CentOS 5.9 Linux 2.6.18-308 i686 Intel n y/y n y y y
|
||
CentOS 5.9 Linux 2.6.18-308 i686 PGI n y/y n y y y
|
||
CentOS 5.9 Linux 2.6.18 x86_64 GNU n y/y n y y y
|
||
CentOS 5.9 Linux 2.6.18 x86_64 Intel n y/y n y y y
|
||
CentOS 6.4 Linux 2.6.32 x86_64 GNU y y/y y y y y
|
||
CentOS 6.4 Linux 2.6.32 x86_64 Intel n y/y n y y y
|
||
CentOS 6.4 Linux 2.6.32 x86_64 PGI n y/y n y y y
|
||
Linux 2.6.32-431.11.2.el6.ppc64 n y/n n y y y
|
||
OpenVMS IA64 V8.4 n y/n n y y n
|
||
|
||
Platform Shared Shared Shared Thread-
|
||
C libs F90 libs C++ libs safe
|
||
Solaris2.11 32-bit y y y y
|
||
Solaris2.11 64-bit y y y y
|
||
Windows 7 y y y y
|
||
Windows 7 x64 y y y y
|
||
Windows 7 Cygwin n n n y
|
||
Windows 8.1 y y y y
|
||
Windows 8.1 x64 y y y y
|
||
Mac OS X Lion 10.7.3 64-bit y n y y
|
||
Mac OS X Mountain Lion 10.8.1 64-bit y n y y
|
||
Mac OS X Mavericks 10.9.1 64-bit y n y y
|
||
AIX 5.3 32- and 64-bit y n n y
|
||
CentOS 5.9 Linux 2.6.18-308 i686 GNU y y y y
|
||
CentOS 5.9 Linux 2.6.18-308 i686 Intel y y y n
|
||
CentOS 5.9 Linux 2.6.18-308 i686 PGI y y y n
|
||
CentOS 5.9 Linux 2.6.18 x86_64 GNU y y y y
|
||
CentOS 5.9 Linux 2.6.18 x86_64 Intel y y y n
|
||
CentOS 6.4 Linux 2.6.32 x86_64 GNU y y y n
|
||
CentOS 6.4 Linux 2.6.32 x86_64 Intel y y y n
|
||
CentOS 6.4 Linux 2.6.32 x86_64 PGI y y y n
|
||
Linux 2.6.32-431.11.2.el6.ppc64 y y y n
|
||
OpenVMS IA64 V8.4 n n n n
|
||
|
||
Compiler versions for each platform are listed in the preceding
|
||
"Supported Platforms" table.
|
||
|
||
|
||
More Tested Platforms
|
||
=====================
|
||
The following platforms are not supported but have been tested for this release.
|
||
|
||
Linux 2.6.18-308.13.1.el5PAE MPICH mpich 3.1 compiled with
|
||
#1 SMP i686 i686 i386 gcc 4.8.2 and gfortran 4.8.2
|
||
(jam) g95 (GCC 4.0.3 (g95 0.94!)
|
||
|
||
Linux 2.6.18-431.11.2.el6 MPICH mpich 3.1 compiled with
|
||
#1 SMP x86_64 GNU/Linux gcc 4.8.2 and gfortran 4.8.2
|
||
(platypus) g95 (GCC 4.0.3 (g95 0.94!)
|
||
|
||
FreeBSD 8.2-STABLE i386 gcc 4.5.4 [FreeBSD] 20110526
|
||
(loyalty) gcc 4.6.1 20110527
|
||
g++ 4.6.1 20110527
|
||
gfortran 4.6.1 20110527
|
||
|
||
FreeBSD 8.2-STABLE amd64 gcc 4.5.4 [FreeBSD] 20110526
|
||
(freedom) gcc 4.6.1 20110527
|
||
g++ 4.6.1 20110527
|
||
gfortran 4.6.1 20110527
|
||
|
||
Debian7.1.0 3.2.0-4-amd64 #1 SMP Debian 3.2.51-1 x86_64 GNU/Linux
|
||
gcc (Debian 4.7.2-5) 4.7.2
|
||
GNU Fortran (Debian 4.7.2-5) 4.7.2
|
||
(cmake and autotools)
|
||
|
||
Fedora20 3.11.10-301.fc20.x86_64 #1 SMP x86_64 x86_64 x86_64 GNU/Linux
|
||
gcc (GCC) 4.8.2 20131212 (Red Hat 4.8.2-7)
|
||
GNU Fortran (GCC) 4.8.2 20130603 (Red Hat 4.8.2-7)
|
||
(cmake and autotools)
|
||
|
||
SUSE 13.1 3.11.6-4-desktop #1 SMP PREEMPT x86_64 x86_64 x86_64 GNU/Linux
|
||
gcc (SUSE Linux) 4.8.1
|
||
GNU Fortran (SUSE Linux) 4.8.1
|
||
(cmake and autotools)
|
||
|
||
Ubuntu 13.10 3.11.0-13-generic #20-Ubuntu SMP x86_64 GNU/Linux
|
||
gcc (Ubuntu/Linaro 4.8.1-10ubuntu8) 4.8.1
|
||
GNU Fortran (Ubuntu/Linaro 4.8.1-10ubuntu8) 4.8.1
|
||
(cmake and autotools)
|
||
|
||
Cray Linux Environment (CLE) PrgEnv-pgi/4.0.46
|
||
hopper.nersc.gov pgcc 12.5-0 64-bit target on x86-64 Linux -tp shanghai
|
||
pgf90 12.5-0 64-bit target on x86-64 Linux -tp shanghai
|
||
pgCC 12.5-0 64-bit target on x86-64 Linux -tp shanghai
|
||
|
||
|
||
Known Problems
|
||
==============
|
||
* When reading or writing a dataset (H5Dread/H5Dwrite) with a large selection
|
||
size (e.g., 2GB ~= 500 million of 4 bytes integers or floating point
|
||
numbers), some I/O systems may not be able to process it correctly.
|
||
We advise users to find out system limits before using large selections. If
|
||
I/O size limits exist, application should use HDF5 partial I/O capabilities
|
||
(e.g., H5Sselect_hyperslab(...)) to divide large requests into smaller sizes.
|
||
In this case we also advise users not to use chunk storage sizes larger that
|
||
2GB since the HDF5 library performs I/O on the entire chunk. We will work
|
||
on the HDF5 library to divide large data requests to smaller I/O requests.
|
||
(AKC 2014/05/02 HDFFV-8479)
|
||
|
||
* Due to an Intel compiler bug introduced in version 14.0.1, the HDF5 FORTRAN
|
||
wrappers do not work with configure option --enable-fortran2003.
|
||
However, the option --enable-fortran works with Intel 14.0.1. The compiler
|
||
bug was fixed in Intel version 14.0.2 and resolved the issue.
|
||
(MSB - 2014/4/15)
|
||
|
||
* Due to a PGI compiler bug introduced in versions before 13.3 and versions
|
||
after 14.2, the FORTRAN test 'Testing get file image' will fail.
|
||
(MSB - 2014/4/15)
|
||
|
||
* On CYGWIN, when building the library dynamically, testing will fail on
|
||
dynamically loaded filters. The test process will build dynamic filter
|
||
libraries with the *.dll.a extension, and the HDF5 Library will be looking
|
||
for *.so libraries. Entered as issue HDFFV-8736. (ADB - 2014/04/14)
|
||
|
||
* A Gnu Make directive (.NOTPARALLEL) is added to fortran/test/Makefile.
|
||
AIX native make does not support this directive and would fail if
|
||
parallel make (e.g. make -j4) is used to build the library. AIX users
|
||
either do not use parallel make or install Gnu Make to build the library.
|
||
(AKC 2014/04/08 HDFFV-8738)
|
||
|
||
* CLANG compiler with the options -fcatch-undefined-behavior and -ftrapv
|
||
catches some undefined behavior in the alignment algorithm of the macro
|
||
DETECT_I in H5detect.c. Since the algorithm is trying to detect the alignment
|
||
of integers, ideally the flag -fcatch-undefined-behavior should not to be
|
||
used for H5detect.c. In the future, we can separate flags for H5detect.c
|
||
from the rest of the library. (SLU - 2013/10/16 HDFFV-8147)
|
||
|
||
* Make provided by Solaris fails in "make check". Solaris users should use
|
||
gmake to build and install the HDF5 software. (AKC - 2013/10/08 - HDFFV-8534)
|
||
|
||
* On OpenVMS, two soft conversion functions (H5T__conv_i_f and H5T__conv_f_i)
|
||
have bugs. They convert data between floating-point numbers and integers.
|
||
But the library's default is hard conversion. The user should avoid
|
||
explicitly enabling soft conversion between floating-point numbers and
|
||
integers. (Issue VMS-8; SLU - 2013/09/19)
|
||
|
||
* On OpenVMS, ZLIB 1.2.8 library doesn't work properly. ZLIB 1.2.5 works
|
||
fine. So please use ZLIB 1.2.5 to build HDF5 library. (Issue VMS-5;
|
||
SLU 2013/09/19)
|
||
|
||
* When building using the Cray compilers on Cray machines, HDF5
|
||
configure mistakenly thinks the compiler is an intel compiler and
|
||
sets the -std=c99 flag which breaks configure on Cray. To build HDF5
|
||
properly on a Cray machine, please consult with the instructions in
|
||
INSTALL_parallel for building on Hopper.
|
||
(MSC - 2013/04/26 - HDFFV-8429)
|
||
|
||
* The 5.9 C++ compiler on Sun failed to compile a C++ test ttypes.cpp. It
|
||
complains with this message:
|
||
"/home/hdf5/src/H5Vprivate.h", line 130: Error: __func__ is not defined.
|
||
|
||
The reason is that __func__ is a predefined identifier in C99 standard. The
|
||
HDF5 C library uses it in H5private.h. The test ttypes.cpp includes
|
||
H5private.h (H5Tpkg.h<-H5Fprivate.h<-H5Vprivate.h<-H5private.h). Sun's 5.9
|
||
C++ compiler doesn't support __func__, thus fails to compile the C++ test.
|
||
But Sun's 5.11 C++ compiler does. To check whether your Sun C++ compiler
|
||
knows this identifier, try to compile the following simple C++ program:
|
||
#include<stdio.h>
|
||
|
||
int main(void)
|
||
{
|
||
printf("%s\n", __func__);
|
||
return 0;
|
||
}
|
||
(SLU - 2012/11/5)
|
||
|
||
* The C++ and FORTRAN bindings are not currently working on FreeBSD with the
|
||
native release 8.2 compilers (4.2.1), but are working with gcc 4.6 from the
|
||
ports (and probably gcc releases after that).
|
||
(QAK - 2012/10/19)
|
||
|
||
* The following h5dump test case fails in BG/P machines (and potentially other
|
||
machines that use a command script to launch executables):
|
||
|
||
h5dump --no-compact-subset -d "AHFINDERDIRECT::ah_centroid_t[0] it=0 tl=0"
|
||
tno-subset.h5
|
||
|
||
This is due to the embedded spaces in the dataset name being interpreted
|
||
by the command script launcher as meta-characters, thus passing three
|
||
arguments to h5dump's -d flag. The command passes if run by hand, just
|
||
not via the test script.
|
||
(AKC - 2012/05/03)
|
||
|
||
* On hopper, the build failed when RUNSERIAL and RUNPARALLEL are set
|
||
to aprun -np X, because the H5lib_settings.c file was not generated
|
||
properly. Not setting those environment variables works, because
|
||
configure was able to automatically detect that it's a Cray system
|
||
and used the proper launch commands when necessary.
|
||
(MSC - 2012/04/18)
|
||
|
||
* The data conversion test dt_arith.c fails in "long double" to integer
|
||
conversion on Ubuntu 11.10 (3.0.0.13 kernel) with GCC 4.6.1 if the library
|
||
is built with optimization -O3 or -O2. The older GCC (4.5) or newer kernal
|
||
(3.2.2 on Fedora) doesn't have the problem. Users should lower the
|
||
optimization level (-O1 or -O0) by defining CFLAGS in the command line of
|
||
"configure" like:
|
||
|
||
CFLAGS=-O1 ./configure
|
||
|
||
This will overwrite the library's default optimization level.
|
||
(SLU - 2012/02/07 - HDFFV-7829)
|
||
This issue is no longer present on Ubuntu 12.10 (3.5.0 kernel) with
|
||
gcc 4.7.2.
|
||
|
||
* The STDIO VFD does not work on some architectures, possibly due to 32/64
|
||
bit or large file issues. The basic STDIO VFD test is known to fail on
|
||
64-bit SunOS 5.10 on SPARC when built with -m64 and 32-bit OS X/Darwin
|
||
10.7.0. The STDIO VFD test has been disabled while we investigate and
|
||
a fix should appear in a future release.
|
||
(DER - 2011/10/14 - HDFFV-8235)
|
||
|
||
* h5diff can report inconsistent results when comparing datasets of enum type
|
||
that contain invalid values. This is due to how enum types are handled in
|
||
the library and will be addressed in a future release.
|
||
(DER - 2011/10/14 - HDFFV-7527)
|
||
|
||
* The links test can fail under the stdio VFD due to some issues with external
|
||
links. This will be investigated and fixed in a future release.
|
||
(DER - 2011/10/14 - HDFFV-7768)
|
||
|
||
* After the shared library support was fixed for some bugs, it was discovered
|
||
that "make prefix=XXX install" no longer works for shared libraries. It
|
||
still works correctly for static libraries. Therefore, if you want to
|
||
install the HDF5 shared libraries in a location such as /usr/local/hdf5,
|
||
you need to specify the location via the --prefix option during configure
|
||
time. E.g, ./configure --prefix=/usr/local/hdf5 ...
|
||
(AKC - 2011/05/07 - HDFFV-7583)
|
||
|
||
* The parallel test, t_shapesame, in testpar/, may run for a long time and may
|
||
be terminated by the alarm signal. If that happens, one can increase the
|
||
alarm seconds (default is 1200 seconds = 20 minutes) by setting the
|
||
environment variable, $HDF5_ALARM_SECONDS, to a larger value such as 3600
|
||
(60 minutes). Note that the t_shapesame test may fail in some systems
|
||
(see the "While working on the 1.8.6 release..." problem below). If
|
||
it does, it will waste more time if $HDF5_ALARM_SECONDS is set
|
||
to a larger value.
|
||
(AKC - 2011/05/07)
|
||
|
||
* The C++ and FORTRAN bindings are not currently working on FreeBSD.
|
||
(QAK - 2011/04/26)
|
||
|
||
* Shared Fortran libraries are not quite working on AIX. While they are
|
||
generated when --enable-shared is specified, the fortran and hl/fortran
|
||
tests fail. We are looking into the issue. HL and C++ shared libraries
|
||
should now be working as intended, however.
|
||
(MAM - 2011/04/20)
|
||
|
||
* The --with-mpe configure option does not work with Mpich2.
|
||
(AKC - 2011/03/10)
|
||
|
||
* While working on the 1.8.6 release of HDF5, a bug was discovered that can
|
||
occur when reading from a dataset in parallel shortly after it has been
|
||
written to collectively. The issue was exposed by a new test in the parallel
|
||
HDF5 test suite, but had existed before that. We believe the problem lies with
|
||
certain MPI implementations and/or file systems.
|
||
|
||
We have provided a pure MPI test program, as well as a standalone HDF5
|
||
program, that can be used to determine if this is an issue on your system.
|
||
They should be run across multiple nodes with a varying number of processes.
|
||
These programs can be found at:
|
||
http://www.hdfgroup.org/ftp/HDF5/examples/known_problems/
|
||
(NAF - 2011/01/19)
|
||
|
||
* All the VFL drivers aren't backward compatible. In H5FDpublic.h, the
|
||
structure H5FD_class_t changed in 1.8. There is new parameter added to
|
||
get_eoa and set_eoa callback functions. A new callback function
|
||
get_type_map was added in. The public function H5FDrealloc was taken
|
||
out in 1.8. The problem only happens when users define their own driver
|
||
for 1.6 and try to plug in 1.8 library. Because there's only one user
|
||
complaining about it, we (Elena, Quincey, and I) decided to leave it as
|
||
it is (see bug report #1279). Quincey will make a plan for 1.10.
|
||
(SLU - 2010/02/02)
|
||
|
||
* The --enable-static-exec configure flag will only statically link libraries
|
||
if the static version of that library is present. If only the shared version
|
||
of a library exists (i.e., most system libraries on Solaris, AIX, and Mac,
|
||
for example, only have shared versions), the flag should still result in a
|
||
successful compilation, but note that the installed executables will not be
|
||
fully static. Thus, the only guarantee on these systems is that the
|
||
executable is statically linked with just the HDF5 library.
|
||
(MAM - 2009/11/04)
|
||
|
||
* Parallel tests failed with 16 processes with data inconsistency at testphdf5
|
||
/ dataset_readAll. Parallel tests also failed with 32 and 64 processes with
|
||
collective abort of all ranks at t_posix_compliant / allwrite_allread_blocks
|
||
with MPI IO.
|
||
(CMC - 2009/04/28)
|
||
|
||
* On an Intel 64 Linux cluster (RH 4, Linux 2.6.9) with Intel 10.0 compilers,
|
||
use -mp -O1 compilation flags to build the libraries. A higher level of
|
||
optimization causes failures in several HDF5 library tests.
|
||
|
||
* A dataset created or rewritten with a v1.6.3 library or after cannot be read
|
||
with the v1.6.2 library or before when the Fletcher32 EDC filter is enabled.
|
||
There was a bug in the calculation of the Fletcher32 checksum in the
|
||
library before v1.6.3; the checksum value was not consistent between big-
|
||
endian and little-endian systems. This bug was fixed in Release 1.6.3.
|
||
However, after fixing the bug, the checksum value was no longer the same as
|
||
before on little-endian system. Library releases after 1.6.4 can still read
|
||
datasets created or rewritten with an HDF5 library of v1.6.2 or before.
|
||
(SLU - 2005/06/30)
|
||
|
||
|
||
%%%%1.8.12%%%%
|
||
|
||
|
||
HDF5 version 1.8.12 released on 2013-11-04
|
||
================================================================================
|
||
|
||
INTRODUCTION
|
||
============
|
||
|
||
This document describes the differences between HDF5-1.8.11 and
|
||
HDF5-1.8.12, and contains information on the platforms tested and
|
||
known problems in HDF5-1.8.12.
|
||
For more details, see the files HISTORY-1_0-1_8_0_rc3.txt
|
||
and HISTORY-1_8.txt in the release_docs/ directory of the HDF5 source.
|
||
|
||
Links to the HDF5 1.8.12 source code, documentation, and additional materials
|
||
can be found on the HDF5 web page at:
|
||
|
||
http://www.hdfgroup.org/products/hdf5/
|
||
|
||
The HDF5 1.8.12 release can be obtained from:
|
||
|
||
http://www.hdfgroup.org/HDF5/release/obtain5.html
|
||
|
||
User documentation for 1.8.12 can be accessed directly at this location:
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/
|
||
|
||
New features in the HDF5-1.8.x release series, including brief general
|
||
descriptions of some new and modified APIs, are described in the "What's New
|
||
in 1.8.0?" document:
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/ADGuide/WhatsNew180.html
|
||
|
||
All new and modified APIs are listed in detail in the "HDF5 Software Changes
|
||
from Release to Release" document, in the section "Release 1.8.12 (current
|
||
release) versus Release 1.8.11":
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/ADGuide/Changes.html
|
||
|
||
If you have any questions or comments, please send them to the HDF Help Desk:
|
||
|
||
help@hdfgroup.org
|
||
|
||
|
||
CONTENTS
|
||
========
|
||
|
||
- New Features
|
||
- Support for New Platforms, Languages, and Compilers
|
||
- Bug Fixes since HDF5-1.8.11
|
||
- Supported Platforms
|
||
- Supported Configuration Features Summary
|
||
- More Tested Platforms
|
||
- Known Problems
|
||
|
||
|
||
New Features
|
||
============
|
||
|
||
Configuration
|
||
-------------
|
||
- Added a configuration option to change the default plugin path.
|
||
The configure option is --with-default-plugindir=location.
|
||
The cmake option is -DH5_DEFAULT_PLUGINDIR:PATH=location.
|
||
HDFFV-8513. (ADB 2013/09/04)
|
||
- Renamed FFLAGS to FCFLAGS in configure. (ADB 2013/08/13)
|
||
- CMake can now package a compressed examples file, the default for
|
||
Windows binaries from HDF Group. (ADB - 2013/07/22)
|
||
|
||
Library
|
||
-------
|
||
- None
|
||
|
||
Parallel Library
|
||
----------------
|
||
- None
|
||
|
||
Tools
|
||
-----
|
||
- h5repack: Added the ability to use plugin filters to read and write
|
||
files. The option uses the filter number. HDFFV-8345
|
||
(ADB - 2013/09/04).
|
||
- h5dump: Added the option -N --any_path, which searches the file for
|
||
paths that match the search path. HDFFV-7989 (ADB - 2013/08/12).
|
||
- h5dump: Added the optional arg 0 to -A, which excludes attributes
|
||
from display. HDFFV-8134 (ADB - 2013/08/01).
|
||
|
||
High-Level APIs
|
||
---------------
|
||
- None
|
||
|
||
Fortran API
|
||
-----------
|
||
- None
|
||
|
||
C++ API
|
||
-------
|
||
- Added tutorial examples to C++/examples. They can be installed by
|
||
"make install-examples" and, in the installed directory, they can be
|
||
executed by running the script file run-c++-ex.sh. (BMR - 2013/09/28)
|
||
- A new class, H5::H5Location, is added to represent the location concept
|
||
in the C library. It is a base class to H5::H5File and H5::H5Ojbect,
|
||
whose member functions are moved into H5::H5Location. H5::H5File can
|
||
now inherent those functions. As a result, an H5::H5File object can have
|
||
an attribute. (BMR - 2013/09/27)
|
||
- Added wrappers for H5Rget_obj_type2 to retrieve the type of the object
|
||
that an object reference points to. (BMR - 2013/09/27)
|
||
H5O_type_t H5Location::getRefObjType(void *ref, H5R_type_t ref_type)
|
||
- Added wrappers for H5Aexist to check whether an attribute exists given
|
||
a name. (BMR - 2013/09/27)
|
||
bool H5::H5Location::attrExists(const char* name)
|
||
bool H5::H5Location::attrExists(const H5std_string& name)
|
||
- Added a number of overloaded functions for convenience. (BMR - 2013/09/27)
|
||
|
||
|
||
Support for New Platforms, Languages, and Compilers
|
||
===================================================
|
||
- None
|
||
|
||
Bug Fixes since HDF5-1.8.11
|
||
===========================
|
||
|
||
Configuration
|
||
-------------
|
||
- Modified H5detect.c to scan floating point types for padding bits before
|
||
analyzing the type further. This should fix problems with gcc 4.8.
|
||
(NAF - 2013/09/19 - HDFFV-8523/HDFFV-8500)
|
||
- HDF5 rpaths are no longer encoded in the library files when configured
|
||
with --disable-sharedlib-rpath. (LRK-2013-09-23 - HDFFV-8276)
|
||
|
||
Library
|
||
-------
|
||
- Added const qualifier to source buffer parameters in H5Dgather and
|
||
H5D_scatter_func_t (H5Dscatter callback). (NAF - 2013/7/09)
|
||
|
||
- CMake now creates *.so.{lt_version} files with the same version as
|
||
configure. (ADB - 2013/06/05 HDFFV-8437)
|
||
|
||
Parallel Library
|
||
----------------
|
||
- None
|
||
|
||
Performance
|
||
-------------
|
||
- None
|
||
|
||
Tools
|
||
-----
|
||
- h5dump: Added the option -N --any_path, which searches the file for
|
||
paths that match the search path. HDFFV-7989 (ADB - 2013/08/12).
|
||
- h5dump: Added the optional arg 0 to -A, which excludes attributes
|
||
from display. HDFFV-8134 (ADB - 2013/08/01).
|
||
- h5dump correctly exports subsetted data to a file, using the --output
|
||
option. (ADB - 2013/06/07 HDFFV-8447)
|
||
- h5cc and other compile scripts now default to linking shared libraries
|
||
when HDF5 is configured with the --disable-static option.
|
||
(LRK - 2013-09-23 - HDFFV-8141)
|
||
|
||
F90 API
|
||
-------
|
||
- None
|
||
|
||
C++ API
|
||
------
|
||
- None
|
||
|
||
High-Level APIs:
|
||
------
|
||
- None
|
||
|
||
Fortran High-Level APIs:
|
||
------
|
||
- None
|
||
|
||
Testing
|
||
-------
|
||
- test/big sometimes failed with the message of "file selection+offset not
|
||
within extent". This has been fixed. (AKC - 2013/09/28 HDFFV-8271).
|
||
- tools/h5diff/testh5diff.sh is run in every "make check", even after it
|
||
has passed in the previous run. It should not run again if there are no
|
||
code changes. Fixed. (AKC - 2013/07/19 HDFFV-8392)
|
||
|
||
Supported Platforms
|
||
===================
|
||
The following platforms are supported and have been tested for this release.
|
||
They are built with the configure process unless specified otherwise.
|
||
|
||
AIX 5.3 xlc 10.1.0.5
|
||
(NASA G-ADA) xlC 10.1.0.5
|
||
xlf90 12.1.0.6
|
||
|
||
Linux 2.6.18-308.13.1.el5PAE GNU C (gcc), Fortran (gfortran), C++ (g++)
|
||
#1 SMP i686 i686 i386 compilers for 32-bit applications;
|
||
(jam) Version 4.1.2 20080704 (Red Hat 4.1.2-54)
|
||
Version 4.8.1
|
||
PGI C, Fortran, C++ Compilers for 32-bit
|
||
applications;
|
||
Version 13.7-0
|
||
Intel(R) C, C++, Fortran Compiler for 32-bit
|
||
applications;
|
||
Version 13.1.3 (Build 20130607)
|
||
|
||
Linux 2.6.18-308.16.1.el5 GNU C (gcc), Fortran (gfortran), C++ (g++)
|
||
#1 SMP x86_64 GNU/Linux compilers for 64-bit applications;
|
||
(koala) Version 4.1.2 20080704 (Red Hat 4.1.2-54)
|
||
Version 4.8.1
|
||
PGI C, Fortran, C++ for 64-bit target on
|
||
x86-64;
|
||
Version 13.7-0
|
||
Intel(R) C, C++, Fortran Compilers for
|
||
applications running on Intel(R) 64;
|
||
Version 13.1.3 (Build 20130607)
|
||
|
||
Linux 2.6.32-358.18.1.el6 GNU C (gcc), Fortran (gfortran), C++ (g++)
|
||
#1 SMP x86_64 GNU/Linux compilers:
|
||
(platypus) Version 4.4.7 20120313
|
||
Version 4.8.1
|
||
PGI C, Fortran, C++ for 64-bit target on
|
||
x86-64;
|
||
Version 13.7-0
|
||
Intel(R) C (icc), C++ (icpc), Fortran (icc)
|
||
compilers:
|
||
Version 13.1.3 (Build 20130607)
|
||
|
||
Linux 2.6.32-358.18.1.el6.ppc64 gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-3)
|
||
#1 SMP ppc64 GNU/Linux g++ (GCC) 4.4.7 20120313 (Red Hat 4.4.7-3)
|
||
(ostrich) GNU Fortran (GCC) 4.4.7 20120313 (Red Hat 4.4.7-3)
|
||
IBM XL C/C++ V11.1
|
||
IBM XL Fortran V13.1
|
||
|
||
SunOS 5.11 32- and 64-bit Sun C 5.12 SunOS_sparc
|
||
(emu) Sun Fortran 95 8.6 SunOS_sparc
|
||
Sun C++ 5.12 SunOS_sparc
|
||
|
||
Windows 7 Visual Studio 2008 w/ Intel Fortran 11 (cmake)
|
||
Visual Studio 2010 w/ Intel Fortran 12 (cmake)
|
||
Visual Studio 2012 w/ Intel Fortran 13 (cmake)
|
||
Cygwin(CYGWIN_NT-6.1 1.7.15(0.260/5/3) gcc(4.5.3) compiler and gfortran)
|
||
(cmake and autotools)
|
||
|
||
Windows 7 x64 Visual Studio 2008 w/ Intel Fortran 11 (cmake)
|
||
Visual Studio 2010 w/ Intel Fortran 12 (cmake)
|
||
Visual Studio 2012 w/ Intel Fortran 13 (cmake)
|
||
|
||
Windows 8.1 Visual Studio 2012 w/ Intel Fortran 13 (cmake)
|
||
|
||
Windows 8.1 x64 Visual Studio 2012 w/ Intel Fortran 13 (cmake)
|
||
|
||
Mac OS X Snow Leopard 10.6.8 gcc i686-apple-darwin11-llvm-gcc-4.2 (GCC) 4.2.1 from Xcode 3.2.6
|
||
Darwin Kernel Version 10.8.0 g++ i686-apple-darwin11-llvm-g++-4.2 (GCC) 4.2.1 from Xcode 3.2.6
|
||
64-bit gfortran GNU Fortran (GCC) 4.6.2
|
||
(fred) Intel C (icc), Fortran (ifort), C++ (icpc)
|
||
12.1 Build 20120928
|
||
|
||
Mac OS X Lion 10.7.3 Apple clang/clang++ version 3.0 from Xcode 4.6.1
|
||
64-bit gfortran GNU Fortran (GCC) 4.6.2
|
||
(duck) Intel icc/icpc/ifort version 13.0.3
|
||
|
||
Mac OS X Mountain Lion 10.8.1 Apple clang/clang++ version 4.2 from Xcode 4.6.1
|
||
64-bit gfortran GNU Fortran (GCC) 4.6.2
|
||
(wren) Intel icc/icpc/ifort version 13.0.3
|
||
|
||
OpenVMS IA64 V8.4 HP C V7.3-018
|
||
HP Fortran V8.2-104939-50H96
|
||
HP C++ V7.4-004
|
||
|
||
Tested Configuration Features Summary
|
||
=====================================
|
||
|
||
In the tables below
|
||
y = tested
|
||
n = not tested in this release
|
||
C = Cluster
|
||
W = Workstation
|
||
x = not working in this release
|
||
dna = does not apply
|
||
( ) = footnote appears below second table
|
||
<blank> = testing incomplete on this feature or platform
|
||
|
||
Platform C F90/ F90 C++ zlib SZIP
|
||
parallel F2003 parallel
|
||
Solaris2.11 32-bit n y/y n y y y
|
||
Solaris2.11 64-bit n y/y n y y y
|
||
Windows 7 y y/y n y y y
|
||
Windows 7 x64 y y/y n y y y
|
||
Windows 7 Cygwin n y/n n y y y
|
||
Windows 8.1 n y/y n y y y
|
||
Windows 8.1 x64 n y/y n y y y
|
||
Mac OS X Snow Leopard 10.6.8 64-bit n y/y n y y y
|
||
Mac OS X Lion 10.7.3 64-bit n y/y n y y y
|
||
Mac OS X Mountain Lion 10.8.1 64-bit n y/y n y y y
|
||
AIX 5.3 32- and 64-bit n y/n n y y y
|
||
CentOS 5.9 Linux 2.6.18-308 i686 GNU y y/y y y y y
|
||
CentOS 5.9 Linux 2.6.18-308 i686 Intel n y/y n y y y
|
||
CentOS 5.9 Linux 2.6.18-308 i686 PGI n y/y n y y y
|
||
CentOS 5.9 Linux 2.6.18 x86_64 GNU y y/y y y y y
|
||
CentOS 5.9 Linux 2.6.18 x86_64 Intel n y/y n y y y
|
||
CentOS 5.9 Linux 2.6.18 x86_64 PGI n y/y n y y y
|
||
CentOS 6.4 Linux 2.6.32 x86_64 GNU n y/y n y y y
|
||
CentOS 6.4 Linux 2.6.32 x86_64 Intel n y/y n y y y
|
||
Linux 2.6.32-358.2.1.el6.ppc64 n y/n n y y y
|
||
OpenVMS IA64 V8.4 n y/n n y y n
|
||
|
||
Platform Shared Shared Shared Thread-
|
||
C libs F90 libs C++ libs safe
|
||
Solaris2.11 32-bit y y y y
|
||
Solaris2.11 64-bit y y y y
|
||
Windows 7 y y y y
|
||
Windows 7 x64 y y y y
|
||
Windows 7 Cygwin n n n y
|
||
Windows 8.1 y y y y
|
||
Windows 8.1 x64 y y y y
|
||
Mac OS X Snow Leopard 10.6.8 64-bit y n y n
|
||
Mac OS X Lion 10.7.3 64-bit y n y y
|
||
Mac OS X Mountain Lion 10.8.1 64-bit y n y y
|
||
AIX 5.3 32- and 64-bit y n n y
|
||
CentOS 5.9 Linux 2.6.18-308 i686 GNU y y y y
|
||
CentOS 5.9 Linux 2.6.18-308 i686 Intel y y y n
|
||
CentOS 5.9 Linux 2.6.18-308 i686 PGI y y y n
|
||
CentOS 5.9 Linux 2.6.18 x86_64 GNU y y y y
|
||
CentOS 5.9 Linux 2.6.18 x86_64 Intel y y y n
|
||
CentOS 5.9 Linux 2.6.18 x86_64 PGI y y y n
|
||
CentOS 6.4 Linux 2.6.32 x86_64 GNU y y y n
|
||
CentOS 6.4 Linux 2.6.32 x86_64 Intel y y y n
|
||
Linux 2.6.32-358.2.1.el6.ppc64 y y y n
|
||
OpenVMS IA64 V8.4 n n n n
|
||
|
||
Compiler versions for each platform are listed in the preceding
|
||
"Supported Platforms" table.
|
||
|
||
|
||
More Tested Platforms
|
||
=====================
|
||
The following platforms are not supported but have been tested for this release.
|
||
|
||
Linux 2.6.18-308.13.1.el5PAE MPICH mpich2-1.4.1p1 compiled with
|
||
#1 SMP i686 i686 i386 gcc 4.1.2 and gfortran 4.1.2
|
||
(jam) g95 (GCC 4.0.3 (g95 0.94!)
|
||
|
||
Linux 2.6.18-308.16.1.el5 MPICH mpich2-1.4.1p1 compiled with
|
||
#1 SMP x86_64 GNU/Linux gcc 4.1.2 and gfortran 4.1.2
|
||
(koala) g95 (GCC 4.0.3 (g95 0.94!)
|
||
|
||
FreeBSD 8.2-STABLE i386 gcc 4.5.4 [FreeBSD] 20110526
|
||
(loyalty) gcc 4.6.1 20110527
|
||
g++ 4.6.1 20110527
|
||
gfortran 4.6.1 20110527
|
||
|
||
FreeBSD 8.2-STABLE amd64 gcc 4.5.4 [FreeBSD] 20110526
|
||
(freedom) gcc 4.6.1 20110527
|
||
g++ 4.6.1 20110527
|
||
gfortran 4.6.1 20110527
|
||
|
||
Debian7.1.0 3.2.0-4-amd64 #1 SMP Debian 3.2.46-1 x86_64 GNU/Linux
|
||
gcc (Debian 4.7.2-5) 4.7.2
|
||
GNU Fortran (Debian 4.7.2-5) 4.7.2
|
||
(cmake and autotools)
|
||
|
||
Fedora19 3.11.1-200.fc19.x86_64 #1 SMP x86_64 x86_64 x86_64 GNU/Linux
|
||
gcc (GCC) 4.8.1 20130603 (Red Hat 4.8.1-1)
|
||
GNU Fortran (GCC) 4.8.1 20130603 (Red Hat 4.8.1-1)
|
||
(cmake and autotools)
|
||
|
||
SUSE 12.3 3.7.10-1.16-desktop #1 SMP PREEMPT x86_64 x86_64 x86_64 GNU/Linux
|
||
gcc (SUSE Linux) 4.7.2
|
||
GNU Fortran (SUSE Linux) 4.7.2
|
||
(cmake and autotools)
|
||
|
||
Ubuntu 13.04 3.8.0-30-generic #44-Ubuntu SMP x86_64 GNU/Linux
|
||
gcc (Ubuntu/Linaro 4.7.3-1ubuntu1) 4.7.3
|
||
GNU Fortran (Ubuntu/Linaro 4.7.3-1ubuntu1) 4.7.3
|
||
(cmake and autotools)
|
||
|
||
Cray Linux Environment (CLE) PrgEnv-pgi/4.0.46
|
||
hopper.nersc.gov pgcc 12.5-0 64-bit target on x86-64 Linux -tp shanghai
|
||
pgf90 12.5-0 64-bit target on x86-64 Linux -tp shanghai
|
||
pgCC 12.5-0 64-bit target on x86-64 Linux -tp shanghai
|
||
|
||
|
||
Known Problems
|
||
==============
|
||
* Several HDF5 command-line tools and tests leave behind generated files
|
||
that are not cleaned up with "make clean" or "make distclean" when software
|
||
is built in place. The issue will be addressed in the 1.8.13 release. We
|
||
recommend to use build directory to compile and test HDF5 as described
|
||
in the INSTALL file, section 4.2.
|
||
|
||
* Source directory names with spaces in them will cause failures in configure
|
||
or make on Mac (HDFFV-8152), Linux, and probably all other platforms. If a
|
||
configure command with a space is run from a build directory, it will exit
|
||
with an error message: "checking whether build environment is sane...
|
||
configure: error: unsafe srcdir value: '/scr/lrknox/hdf5 v1.8.12'". If
|
||
configure is run inside or below the directory with the space in the name,
|
||
libtool will get the directory path from the system, put the part of the
|
||
path before the space in the libdir variable in .../src/libhdf5.la, and
|
||
then fail to find the nonexistent directory. This is a known libtool issue
|
||
and the suggested workaround is to rename the directory without spaces.
|
||
(LRK - 2013/10/22)
|
||
|
||
* CLANG compiler with the options -fcatch-undefined-behavior and -ftrapv
|
||
catches some undefined behavior in the alignment algorithm of the macro
|
||
DETECT_I in H5detect.c (HDFFV-8147). This issue will be addressed in the
|
||
next release. (SLU - 2013/10/16)
|
||
|
||
* Running make check for the tools can fail in the tools tests if make was not
|
||
run prior. The tests for the tools use other tools in the tests, therefore
|
||
all the tools should be built before testing the tools. (ADB - 2013/10/09)
|
||
|
||
* Make provided by Solaris fails in "make check". Solaris users should use
|
||
gmake to build and install HDF5 software. (AKC - 2013/10/08 - HDFFV-8534)
|
||
|
||
* On OpenVMS, two soft conversion functions (H5T__conv_i_f and H5T__conv_f_i)
|
||
have bugs. They convert data between floating-point numbers and integers.
|
||
But the library's default is hard conversion. The user should avoid
|
||
explicitly enabling soft conversion between floating-point numbers and
|
||
integers. (Issue VMS-8; SLU - 2013/09/19)
|
||
|
||
* On OpenVMS, ZLIB 1.2.8 library doesn't work properly. ZLIB 1.2.5 works
|
||
fine. So please use ZLIB 1.2.5 to build HDF5 library. (Issue VMS-5;
|
||
SLU 2013/09/19)
|
||
|
||
* When building using the Cray compilers on Cray machines, HDF5
|
||
configure mistakenly thinks the compiler is an intel compiler and
|
||
sets the -std=c99 flag which breaks configure on Cray. To build HDF5
|
||
properly on a Cray machine, please consult with the instructions in
|
||
INSTALL_parallel for building on Hopper.
|
||
(MSC - 2013/04/26 - HDFFV-8429)
|
||
|
||
* The h5dump and h5diff utilities occasionally produce different output
|
||
between Linux and Windows systems. This is caused by lower-level library
|
||
routines that fail to write fill values to the user's buffer when reading
|
||
unallocated chunks from datasets that have a fill value set to
|
||
H5D_FILL_VALUE_DEFAULT. Due to platform differences the return of
|
||
spurious data values has only been encountered on Windows 32-bit systems.
|
||
(Issue HDFFV-8247; JP - 2013/03/27)
|
||
|
||
* The 5.9 C++ compiler on Sun failed to compile a C++ test ttypes.cpp. It
|
||
complains with this message:
|
||
"/home/hdf5/src/H5Vprivate.h", line 130: Error: __func__ is not defined.
|
||
|
||
The reason is that __func__ is a predefined identifier in C99 standard. The
|
||
HDF5 C library uses it in H5private.h. The test ttypes.cpp includes
|
||
H5private.h (H5Tpkg.h<-H5Fprivate.h<-H5Vprivate.h<-H5private.h). Sun's 5.9
|
||
C++ compiler doesn't support __func__, thus fails to compile the C++ test.
|
||
But Sun's 5.11 C++ compiler does. To check whether your Sun C++ compiler
|
||
knows this identifier, try to compile the following simple C++ program:
|
||
#include<stdio.h>
|
||
|
||
int main(void)
|
||
{
|
||
printf("%s\n", __func__);
|
||
return 0;
|
||
}
|
||
(SLU - 2012/11/5)
|
||
|
||
* The C++ and FORTRAN bindings are not currently working on FreeBSD with the
|
||
native release 8.2 compilers (4.2.1), but are working with gcc 4.6 from the
|
||
ports (and probably gcc releases after that).
|
||
(QAK - 2012/10/19)
|
||
|
||
* The following h5dump test case fails in BG/P machines (and potentially other
|
||
machines that use a command script to launch executables):
|
||
|
||
h5dump --no-compact-subset -d "AHFINDERDIRECT::ah_centroid_t[0] it=0 tl=0"
|
||
tno-subset.h5
|
||
|
||
This is due to the embedded spaces in the dataset name being interpreted
|
||
by the command script launcher as meta-characters, thus passing three
|
||
arguments to h5dump's -d flag. The command passes if run by hand, just
|
||
not via the test script.
|
||
(AKC - 2012/05/03)
|
||
|
||
* On hopper, the build failed when RUNSERIAL and RUNPARALLEL are set
|
||
to aprun -np X, because the H5lib_settings.c file was not generated
|
||
properly. Not setting those environment variables works, because
|
||
configure was able to automatically detect that it is a Cray system
|
||
and used the proper launch commands when necessary.
|
||
(MSC - 2012/04/18)
|
||
|
||
* The data conversion test dt_arith.c fails in "long double" to integer
|
||
conversion on Ubuntu 11.10 (3.0.0.13 kernel) with GCC 4.6.1 if the library
|
||
is built with optimization -O3 or -O2. The older GCC (4.5) or newer kernel
|
||
(3.2.2 on Fedora) do not have the problem. Users should lower the
|
||
optimization level (-O1 or -O0) by defining CFLAGS in the command line of
|
||
"configure" like:
|
||
|
||
CFLAGS=-O1 ./configure
|
||
|
||
This will overwrite the library's default optimization level.
|
||
(SLU - 2012/02/07 - HDFFV-7829)
|
||
This issue is no longer present on Ubuntu 12.10 (3.5.0 kernel) with
|
||
gcc 4.7.2.
|
||
|
||
* The STDIO VFD does not work on some architectures, possibly due to 32/64
|
||
bit or large file issues. The basic STDIO VFD test is known to fail on
|
||
64-bit SunOS 5.10 on SPARC when built with -m64 and 32-bit OS X/Darwin
|
||
10.7.0. The STDIO VFD test has been disabled while we investigate and
|
||
a fix should appear in a future release.
|
||
(DER - 2011/10/14 - HDFFV-8235)
|
||
|
||
* h5diff can report inconsistent results when comparing datasets of enum type
|
||
that contain invalid values. This is due to how enum types are handled in
|
||
the library and will be addressed in a future release.
|
||
(DER - 2011/10/14 - HDFFV-7527)
|
||
|
||
* The links test can fail under the stdio VFD due to some issues with external
|
||
links. This will be investigated and fixed in a future release.
|
||
(DER - 2011/10/14 - HDFFV-7768)
|
||
|
||
* After the shared library support was fixed for some bugs, it was discovered
|
||
that "make prefix=XXX install" no longer works for shared libraries. It
|
||
still works correctly for static libraries. Therefore, if you want to
|
||
install the HDF5 shared libraries in a location such as /usr/local/hdf5,
|
||
you need to specify the location via the --prefix option during configure
|
||
time. E.g, ./configure --prefix=/usr/local/hdf5 ...
|
||
(AKC - 2011/05/07 - HDFFV-7583)
|
||
|
||
* The parallel test, t_shapesame, in testpar/, may run for a long time and may
|
||
be terminated by the alarm signal. If that happens, one can increase the
|
||
alarm seconds (default is 1200 seconds = 20 minutes) by setting the
|
||
environment variable, $HDF5_ALARM_SECONDS, to a larger value such as 3600
|
||
(60 minutes). Note that the t_shapesame test may fail in some systems
|
||
(see the "While working on the 1.8.6 release..." problem below). If
|
||
it does, it will waste more time if $HDF5_ALARM_SECONDS is set
|
||
to a larger value.
|
||
(AKC - 2011/05/07)
|
||
|
||
* The C++ and FORTRAN bindings are not currently working on FreeBSD.
|
||
(QAK - 2011/04/26)
|
||
|
||
* Shared Fortran libraries are not quite working on AIX. While they are
|
||
generated when --enable-shared is specified, the fortran and hl/fortran
|
||
tests fail. We are looking into the issue. HL and C++ shared libraries
|
||
should now be working as intended, however.
|
||
(MAM - 2011/04/20)
|
||
|
||
* The --with-mpe configure option does not work with Mpich2.
|
||
(AKC - 2011/03/10)
|
||
|
||
* While working on the 1.8.6 release of HDF5, a bug was discovered that can
|
||
occur when reading from a dataset in parallel shortly after it has been
|
||
written to collectively. The issue was exposed by a new test in the parallel
|
||
HDF5 test suite, but had existed before that. We believe the problem lies with
|
||
certain MPI implementations and/or file systems.
|
||
|
||
We have provided a pure MPI test program, as well as a standalone HDF5
|
||
program, that can be used to determine if this is an issue on your system.
|
||
They should be run across multiple nodes with a varying number of processes.
|
||
These programs can be found at:
|
||
http://www.hdfgroup.org/ftp/HDF5/examples/known_problems/
|
||
(NAF - 2011/01/19)
|
||
|
||
* All the VFL drivers aren't backward compatible. In H5FDpublic.h, the
|
||
structure H5FD_class_t changed in 1.8. There is new parameter added to
|
||
get_eoa and set_eoa callback functions. A new callback function
|
||
get_type_map was added in. The public function H5FDrealloc was taken
|
||
out in 1.8. The problem only happens when users define their own driver
|
||
for 1.6 and try to plug in 1.8 library. Because there's only one user
|
||
complaining about it, we (Elena, Quincey, and I) decided to leave it as
|
||
it is (see bug report #1279). Quincey will make a plan for 1.10.
|
||
(SLU - 2010/02/02)
|
||
|
||
* The --enable-static-exec configure flag will only statically link libraries
|
||
if the static version of that library is present. If only the shared version
|
||
of a library exists (i.e., most system libraries on Solaris, AIX, and Mac,
|
||
for example, only have shared versions), the flag should still result in a
|
||
successful compilation, but note that the installed executables will not be
|
||
fully static. Thus, the only guarantee on these systems is that the
|
||
executable is statically linked with just the HDF5 library.
|
||
(MAM - 2009/11/04)
|
||
|
||
* Parallel tests failed with 16 processes with data inconsistency at testphdf5
|
||
/ dataset_readAll. Parallel tests also failed with 32 and 64 processes with
|
||
collective abort of all ranks at t_posix_compliant / allwrite_allread_blocks
|
||
with MPI IO.
|
||
(CMC - 2009/04/28)
|
||
|
||
* On an Intel 64 Linux cluster (RH 4, Linux 2.6.9) with Intel 10.0 compilers,
|
||
use -mp -O1 compilation flags to build the libraries. A higher level of
|
||
optimization causes failures in several HDF5 library tests.
|
||
|
||
* A dataset created or rewritten with a v1.6.3 library or after cannot be read
|
||
with the v1.6.2 library or before when the Fletcher32 EDC filter is enabled.
|
||
There was a bug in the calculation of the Fletcher32 checksum in the
|
||
library before v1.6.3; the checksum value was not consistent between big-
|
||
endian and little-endian systems. This bug was fixed in Release 1.6.3.
|
||
However, after fixing the bug, the checksum value was no longer the same as
|
||
before on little-endian system. Library releases after 1.6.4 can still read
|
||
datasets created or rewritten with an HDF5 library of v1.6.2 or before.
|
||
(SLU - 2005/06/30)
|
||
|
||
|
||
%%%%1.8.11%%%%
|
||
|
||
|
||
HDF5 version 1.8.11 released on 2013-05-08
|
||
================================================================================
|
||
|
||
INTRODUCTION
|
||
============
|
||
|
||
This document describes the differences between HDF5-1.8.10 and
|
||
HDF5-1.8.11-*, and contains information on the platforms tested and
|
||
known problems in HDF5-1.8.11-*.
|
||
For more details, see the files HISTORY-1_0-1_8_0_rc3.txt
|
||
and HISTORY-1_8.txt in the release_docs/ directory of the HDF5 source.
|
||
|
||
Links to the HDF5 1.8.11 source code, documentation, and additional materials
|
||
can be found on the HDF5 web page at:
|
||
|
||
http://www.hdfgroup.org/products/hdf5/
|
||
|
||
The HDF5 1.8.11 release can be obtained from:
|
||
|
||
http://www.hdfgroup.org/HDF5/release/obtain5.html
|
||
|
||
User documentation for 1.8.11 can be accessed directly at this location:
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/
|
||
|
||
New features in the HDF5-1.8.x release series, including brief general
|
||
descriptions of some new and modified APIs, are described in the "What's New
|
||
in 1.8.0?" document:
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/ADGuide/WhatsNew180.html
|
||
|
||
All new and modified APIs are listed in detail in the "HDF5 Software Changes
|
||
from Release to Release" document, in the section "Release 1.8.11 (current
|
||
release) versus Release 1.8.10":
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/ADGuide/Changes.html
|
||
|
||
If you have any questions or comments, please send them to the HDF Help Desk:
|
||
|
||
help@hdfgroup.org
|
||
|
||
|
||
CONTENTS
|
||
========
|
||
|
||
- New Features
|
||
- Support for New Platforms, Languages, and Compilers
|
||
- Bug Fixes since HDF5-1.8.10
|
||
- Supported Platforms
|
||
- Supported Configuration Features Summary
|
||
- More Tested Platforms
|
||
- Known Problems
|
||
|
||
|
||
New Features
|
||
============
|
||
|
||
Configuration
|
||
-------------
|
||
- Libtool version number is changed to 8.0.0 because there are API
|
||
changes. See below for details. (AKC - 2013/05/07 HDFFV-8435)
|
||
- Mac OS X 10.7 (Lion) and 10.8 (Mountain Lion) uses clang/clang++ as the
|
||
default C and C++ compilers. (AKC - 2013/04/19 HDFFV-8245)
|
||
- CMake minimum is now 2.8.10. (ADB 2013/1/14)
|
||
- A new tool, cmakehdf5, which is a build command script similar to
|
||
buildhdf5 is added and is available in the bin directory.
|
||
(AKC - 2013/01/16 HDFFV-8336)
|
||
|
||
Library
|
||
-------
|
||
- The library can load filter libraries dynamically during runtime. Users
|
||
can set the search path through environment variable HDF5_PLUGIN_PATH
|
||
and call H5Pset_filter to enable a dynamic filter. (SLU - 2013/04/08)
|
||
- Added new API functions H5Dscatter and H5Dgather to scatter data to and
|
||
and gather data from a selection within a memory buffer.
|
||
(NAF - 2013/02/05)
|
||
- The library now supports the data conversion from enumeration to numeric
|
||
(integer and floating-point number) datatypes. See Issue HDFFV-8221.
|
||
(SLU - 2012/10/23)
|
||
|
||
Parallel Library
|
||
----------------
|
||
- None
|
||
|
||
Tools
|
||
-----
|
||
- h5dump: added new option -O or -ddl to output the ddl text to a file. This
|
||
is a complement to the -o or --output option, which redirects the data to
|
||
a file. HDFFV-8229 (ADB - 2013/2/25)
|
||
|
||
High-Level APIs
|
||
---------------
|
||
- A new API function, H5DOwrite_chunk. This function writes a data chunk
|
||
directly into a file, bypassing hyperslab selection, data conversion,
|
||
and the filter pipeline. The user must be careful with the function and
|
||
clearly understand the I/O process of the library. (SLU - 2013/2/11)
|
||
|
||
Fortran API
|
||
-----------
|
||
- New API functions added (MSB - 2013/3/23):
|
||
|
||
h5odecr_refcount_f, h5oexists_by_name_f, h5oget_comment_f,
|
||
h5oget_comment_by_name_f, h5oincr_refcount_f, h5oopen_by_idx_f,
|
||
h5oset_comment_f, h5oset_comment_by_name_f, h5oset_comment_by_name_f
|
||
|
||
F2003: h5oget_info_f, h5oget_info_by_idx_f, h5ovisit_by_name_f
|
||
|
||
|
||
C++ API
|
||
-------
|
||
- None
|
||
|
||
|
||
Support for New Platforms, Languages, and Compilers
|
||
===================================================
|
||
- SunOS 5.11 (emu) 32-bit and 64-bit with Sun C/C++ 5.12 compiler and
|
||
Sun Fortran 95 8.6 compiler.
|
||
- Visual Studio 2012 w/ Intel Fortran 13 on Windows 7
|
||
- g95 released new version recently and is tested in this release.
|
||
|
||
Bug Fixes since HDF5-1.8.10
|
||
==========================
|
||
|
||
Configuration
|
||
-------------
|
||
- Fixed Thread-safe configure failure for the AIX platform.
|
||
(AKC - 2013/04/19 HDFFV-8390)
|
||
- Configure will check the result of header searches before searching for
|
||
the library.
|
||
Fixes HDFFV-8257 (ADB 2013/03/04)
|
||
- HDF does not support building SHARED Fortran libraries on OSX. Added
|
||
CMake code to check for this condition.
|
||
Fixes HDFFV-8227 (ADB 2013/03/04)
|
||
- CMake builds on Windows will no longer use legacy naming for libraries.
|
||
The "dll" tag will no longer be added to the name of *.lib and *.dll.
|
||
The option HDF_LEGACY_NAMING is now OFF by default.
|
||
Fixes HDFFV-8292 (ADB 2013/01/30)
|
||
|
||
Library
|
||
-------
|
||
- The library now behaves correctly when performing large I/O operations
|
||
on Mac OS-X. Previously, single I/O operations > 2 GB would fail
|
||
since the Darwin read/write calls cannot handle the number of bytes
|
||
that their parameter types imply.
|
||
Fixes HDFFV-7975 and HDFFV-8240 (DER 2013/01/07)
|
||
- Fixed a bug in the core VFD that causes failures when opening files
|
||
> 2 GB.
|
||
Fixes HDFFV-8124 and HDFFV-8158 (DER 2013/01/07)
|
||
- Fixed a bug where unintialized memory was read during variable-length
|
||
type conversion. This caused segfaults in netCDF. Fixes HDFFV-8159.
|
||
(DER 2013/03/30)
|
||
- Removed the H5Pset/get_dxpl_multi functions from the library. The
|
||
intended functionality for them was never fully implemented, and they
|
||
have always been fundamentally broken. NOTE: This does not affect
|
||
setting the multi VFD or any expected VFD functionality. Multi VFD
|
||
usage remains unchanged.
|
||
Fixes HDFFV-8296. (DER 2013/03/30)
|
||
|
||
Parallel Library
|
||
----------------
|
||
- None
|
||
|
||
Performance
|
||
-------------
|
||
- None
|
||
|
||
Tools
|
||
-----
|
||
- h5redeploy is changed to do this by default:
|
||
Installation directories:
|
||
prefix architecture-independent files.
|
||
exec_prefix architecture-dependent files, default is <prefix>.
|
||
libdir libraries, default is <exec_prefix>/lib.
|
||
includedir header files, default is <prefix/include>.
|
||
This allows users to just change the first line of prefix=<...> and the
|
||
effect will change libdir and includedir too. (AKC 2013/04/05 HDFFV-8358)
|
||
- h5repack: Fixed failure to convert the layout of a small chunked
|
||
dataset (size < 1K) to contiguous layout. HDFFV-8214 (JKM 2013/03/26)
|
||
- h5dump: Fixed displaying compression ratio for unknown or user-defined
|
||
filters. HDFFV-8344 (XCAO 2013/03/19)
|
||
- h5dump: Changed UNKNOWN_FILTER to USER_DEFINED_FILTER for user defined
|
||
filter. HDFFV-8346 (XCAO 2013/03/19)
|
||
- h5diff: Fixed to return the correct exit code 1 when the program
|
||
detects a unique extra attribute. Prior to this fix, h5diff returned
|
||
exit code 0 indicating the two files are identical.
|
||
HDFFV-7643 (JKM 2013/02/15)
|
||
- h5dump: Fixed writing nulls to a binary file when exporting a dataset
|
||
with compound string datatype. HDFFV-8169 (ADB 2013/1/31)
|
||
- The following h5stat test case failed in BG/P machines (and potentially
|
||
other machines that display extra output if an MPI task returns with a
|
||
non-zero code.)
|
||
Testing h5stat notexist.h5
|
||
The test script was fixed to ignore the extra output. HDFFV-8233
|
||
(AKC - 2012/11/30)
|
||
- h5diff: Improved speed when comparing HDF5 files with lots of
|
||
attributes. Much slower performance was identified with release versions
|
||
from 1.8.7 to 1.8.10 compared to 1.8.6. (JKM 2012/10/19)
|
||
|
||
F90 API
|
||
-------
|
||
- The integer type of the 'offset' argument in h5pset_external_f and
|
||
h5pget_external_f was changed to INTEGER(KIND=OFF_T) to support 8-byte
|
||
integers, matching the C type definition of off_t. (MSB - 2013/3/23)
|
||
- h5fc updated to recognize .f95, .f03 and .f08 file extensions.
|
||
|
||
C++ API
|
||
------
|
||
- The C++ wrappers DSetMemXferPropList::setMulti/getMulti were removed
|
||
because the C functions H5Pset/get_dxpl_multi functions are removed
|
||
from the library. Fixes HDFFV-8296 by DER. (BMR 2013/03/30)
|
||
- An exception thrown by an internal function was not propagating to the
|
||
test program during stack unwinding, so it couldn't be caught by the
|
||
test, and the program terminated "without an active exception." It
|
||
seemed that the problem happened when c_str() was used to generate
|
||
an equivalent const char* from a std::string and the resulting string
|
||
was passed to the internal function. As a work-around, we added a
|
||
try/catch around the the call to the internal function and when the
|
||
exception is caught there, it is re-thrown. Fixes HDFFV-8067.
|
||
(BMR 2013/03/30)
|
||
|
||
High-Level APIs:
|
||
------
|
||
- Fixed a problem with H5DSget_scale_name including the NULL terminator
|
||
in the size calculation returned by the function. The API was changed
|
||
to NOT include the NULL terminator in the size of name returned
|
||
(MSB- 2013/2/10)
|
||
|
||
Fortran High-Level APIs:
|
||
------
|
||
- None
|
||
|
||
Testing
|
||
-------
|
||
- In some Mac systems, testlibinfo.sh failed with this error:
|
||
Check file ../src/.libs/libhdf5.7.dylib
|
||
strings: object: ../src/.libs/libhdf5.7.dylib malformed object \
|
||
(unknown load command 15)
|
||
The strings command of Mac systems inspects library files, and older
|
||
versions of strings may not know newer library formats, resulting
|
||
in errors. Fixed by sending the library file as stdin to the strings
|
||
command to avoid this problem. (AKC - 2013/03/08 HDFFV-8305)
|
||
- Fixed a typo in the ERROR macro in test/testhdf5.h. It segmentation
|
||
faulted when used before. (AKC - 2013/02/12 HDFFV-8267)
|
||
|
||
Supported Platforms
|
||
===================
|
||
The following platforms are supported and have been tested for this release.
|
||
They are built with the configure process unless specified otherwise.
|
||
|
||
AIX 5.3 xlc 10.1.0.5
|
||
(NASA G-ADA) xlC 10.1.0.5
|
||
xlf90 12.1.0.6
|
||
|
||
Linux 2.6.18-308.13.1.el5PAE GNU C (gcc), Fortran (gfortran), C++ (g++)
|
||
#1 SMP i686 i686 i386 compilers for 32-bit applications;
|
||
(jam) Version 4.1.2 20080704 (Red Hat 4.1.2-54)
|
||
Version 4.6.3
|
||
PGI C, Fortran, C++ Compilers for 32-bit
|
||
applications;
|
||
Version 11.9-0
|
||
Version 12.5-0
|
||
Intel(R) C, C++, Fortran Compiler for 32-bit
|
||
applications;
|
||
Version 12.1 (Build 20110811)
|
||
Version 12.1 (Build 20120212)
|
||
|
||
Linux 2.6.18-308.16.1.el5 GNU C (gcc), Fortran (gfortran), C++ (g++)
|
||
#1 SMP x86_64 GNU/Linux compilers for 64-bit applications;
|
||
(koala) Version 4.1.2 20080704 (Red Hat 4.1.2-52)
|
||
Version 4.6.3
|
||
PGI C, Fortran, C++ for 64-bit target on
|
||
x86-64;
|
||
Version 11.9-0
|
||
Version 12.5-0
|
||
Intel(R) C, C++, Fortran Compilers for
|
||
applications running on Intel(R) 64;
|
||
Version 12.1 (Build 20110811)
|
||
Version 12.1 (Build 20120212)
|
||
|
||
Linux 2.6.32-358.2.1.el6 GNU C (gcc), Fortran (gfortran), C++ (g++)
|
||
#1 SMP x86_64 GNU/Linux compilers:
|
||
(platypus) Version 4.4.7 20120313
|
||
Intel(R) C (icc), C++ (icpc), Fortran (icc)
|
||
compilers:
|
||
Version 12.1 20120212
|
||
|
||
Linux 2.6.32-358.2.1.el6.ppc64 gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-3)
|
||
#1 SMP ppc64 GNU/Linux g++ (GCC) 4.4.7 20120313 (Red Hat 4.4.7-3)
|
||
(ostrich) GNU Fortran (GCC) 4.4.7 20120313 (Red Hat 4.4.7-3)
|
||
IBM XL C/C++ V11.1
|
||
IBM XL Fortran V13.1
|
||
|
||
SunOS 5.11 32- and 64-bit Sun C 5.12 SunOS_sparc
|
||
(emu) Sun Fortran 95 8.6 SunOS_sparc
|
||
Sun C++ 5.12 SunOS_sparc
|
||
|
||
Windows 7 Visual Studio 2008 w/ Intel Fortran 11 (cmake)
|
||
Visual Studio 2010 w/ Intel Fortran 12 (cmake)
|
||
Visual Studio 2012 w/ Intel Fortran 13 (cmake)
|
||
Cygwin(CYGWIN_NT-6.1 1.7.15(0.260/5/3) gcc(4.5.3) compiler and gfortran)
|
||
(cmake and autotools)
|
||
|
||
Windows 7 x64 Visual Studio 2008 w/ Intel Fortran 11 (cmake)
|
||
Visual Studio 2010 w/ Intel Fortran 12 (cmake)
|
||
Visual Studio 2012 w/ Intel Fortran 13 (cmake)
|
||
Cygwin(CYGWIN_NT-6.1 1.7.15(0.260/5/3) gcc(4.5.3) compiler and gfortran)
|
||
(cmake and autotools)
|
||
|
||
Mac OS X Snow Leopard 10.6.8 gcc i686-apple-darwin11-llvm-gcc-4.2 (GCC) 4.2.1 from Xcode 3.2.6
|
||
Darwin Kernel Version 10.8.0 g++ i686-apple-darwin11-llvm-g++-4.2 (GCC) 4.2.1 from Xcode 3.2.6
|
||
64-bit gfortran GNU Fortran (GCC) 4.6.2
|
||
(fred) Intel C (icc), Fortran (ifort), C++ (icpc)
|
||
12.1 Build 20120928
|
||
|
||
Mac OS X Lion 10.7.3 Apple clang/clang++ version 3.0 from Xcode 4.6.1
|
||
64-bit gfortran GNU Fortran (GCC) 4.6.2
|
||
(duck) Intel icc/icpc/ifort version 13.0
|
||
|
||
Mac OS X Mountain Lion 10.8.1 Apple clang/clang++ version 4.2 from Xcode 4.6.1
|
||
64-bit gfortran GNU Fortran (GCC) 4.6.2
|
||
(wren) Intel icc/icpc/ifort version 13.0.1.119
|
||
|
||
|
||
Tested Configuration Features Summary
|
||
=====================================
|
||
|
||
In the tables below
|
||
y = tested
|
||
n = not tested in this release
|
||
C = Cluster
|
||
W = Workstation
|
||
x = not working in this release
|
||
dna = does not apply
|
||
( ) = footnote appears below second table
|
||
<blank> = testing incomplete on this feature or platform
|
||
|
||
Platform C F90/ F90 C++ zlib SZIP
|
||
parallel F2003 parallel
|
||
Solaris2.11 32-bit n y/y n y y y
|
||
Solaris2.11 64-bit n y/n n y y y
|
||
Windows 7 y y/y n y y y
|
||
Windows 7 x64 y y/y n y y y
|
||
Windows 7 Cygwin n y/n n y y y
|
||
Windows 7 x64 Cygwin n y/n n y y y
|
||
Mac OS X Snow Leopard 10.6.8 64-bit n y/y n y y y
|
||
Mac OS X Lion 10.7.3 64-bit n y/y n y y y
|
||
Mac OS X Mountain Lion 10.8.1 64-bit n y/y n y y y
|
||
AIX 5.3 32- and 64-bit n y/n n y y y
|
||
CentOS 5.9 Linux 2.6.18-308 i686 GNU y y/y y y y y
|
||
CentOS 5.9 Linux 2.6.18-308 i686 Intel n y/y n y y y
|
||
CentOS 5.9 Linux 2.6.18-308 i686 PGI n y/y n y y y
|
||
CentOS 5.9 Linux 2.6.18 x86_64 GNU y y/y y y y y
|
||
CentOS 5.9 Linux 2.6.18 x86_64 Intel n y/y n y y y
|
||
CentOS 5.9 Linux 2.6.18 x86_64 PGI n y/y n y y y
|
||
CentOS 6.4 Linux 2.6.32 x86_64 GNU n y/n n y y y
|
||
CentOS 6.4 Linux 2.6.32 x86_64 Intel n y/y n y y y
|
||
Linux 2.6.32-358.2.1.el6.ppc64 n y/n n y y y
|
||
|
||
|
||
Platform Shared Shared Shared Thread-
|
||
C libs F90 libs C++ libs safe
|
||
Solaris2.11 32-bit y y y y
|
||
Solaris2.11 64-bit y y y y
|
||
Windows 7 y y y y
|
||
Windows 7 x64 y y y y
|
||
Windows 7 Cygwin n n n y
|
||
Windows 7 x64 Cygwin n n n y
|
||
Mac OS X Snow Leopard 10.6.8 64-bit y n y n
|
||
Mac OS X Lion 10.7.3 64-bit y n y y
|
||
Mac OS X Mountain Lion 10.8.1 64-bit y n y y
|
||
AIX 5.3 32- and 64-bit y n n y
|
||
CentOS 5.9 Linux 2.6.18-308 i686 GNU y y y y
|
||
CentOS 5.9 Linux 2.6.18-308 i686 Intel y y y n
|
||
CentOS 5.9 Linux 2.6.18-308 i686 PGI y y y n
|
||
CentOS 5.9 Linux 2.6.18 x86_64 GNU y y y y
|
||
CentOS 5.9 Linux 2.6.18 x86_64 Intel y y y n
|
||
CentOS 5.9 Linux 2.6.18 x86_64 PGI y y y n
|
||
CentOS 6.4 Linux 2.6.32 x86_64 GNU y y y n
|
||
CentOS 6.4 Linux 2.6.32 x86_64 Intel y y y n
|
||
Linux 2.6.32-358.2.1.el6.ppc64 y y y n
|
||
|
||
Compiler versions for each platform are listed in the preceding
|
||
"Supported Platforms" table.
|
||
|
||
|
||
More Tested Platforms
|
||
=====================
|
||
The following platforms are not supported but have been tested for this release.
|
||
|
||
Linux 2.6.18-308.13.1.el5PAE MPICH mpich2-1.4.1p1 compiled with
|
||
#1 SMP i686 i686 i386 gcc 4.1.2 and gfortran 4.1.2
|
||
(jam) g95 (GCC 4.0.3 (g95 0.94!)
|
||
|
||
Linux 2.6.18-308.16.1.el5 MPICH mpich2-1.4.1p1 compiled with
|
||
#1 SMP x86_64 GNU/Linux gcc 4.1.2 and gfortran 4.1.2
|
||
(koala) g95 (GCC 4.0.3 (g95 0.94!)
|
||
|
||
FreeBSD 8.2-STABLE i386 gcc 4.2.1 [FreeBSD] 20070719
|
||
(loyalty) gcc 4.6.1 20110422
|
||
g++ 4.6.1 20110422
|
||
gfortran 4.6.1 20110422
|
||
|
||
FreeBSD 8.2-STABLE amd64 gcc 4.2.1 [FreeBSD] 20070719
|
||
(freedom) gcc 4.6.1 20110422
|
||
g++ 4.6.1 20110422
|
||
gfortran 4.6.1 20110422
|
||
|
||
Debian6.0.7 2.6.32-5-amd64 #1 SMP x86_64 GNU/Linux
|
||
gcc (Debian 4.4.5-8) 4.4.5
|
||
GNU Fortran (Debian 4.4.5-8) 4.4.5
|
||
(cmake and autotools)
|
||
|
||
Fedora18 3.7.9-205.fc18.x86_64 #1 SMP x86_64 x86_64 x86_64 GNU/Linux
|
||
gcc (GCC) 4.7.2 20121109 (Red Hat 4.7.2-8)
|
||
GNU Fortran (GCC) 4.7.2 20120507 (Red Hat 4.7.2-8)
|
||
(cmake and autotools)
|
||
|
||
SUSE 12.3 3.7.10-1.1-desktop #1 SMP PREEMPT x86_64 x86_64 x86_64 GNU/Linux
|
||
gcc (SUSE Linux) 4.7.2
|
||
GNU Fortran (SUSE Linux) 4.7.2
|
||
(cmake and autotools)
|
||
|
||
Ubuntu 12.10 3.5.0-25-generic #39-Ubuntu SMP x86_64 GNU/Linux
|
||
gcc (Ubuntu/Linaro 4.7.2-2ubuntu1) 4.7.2
|
||
GNU Fortran (Ubuntu/Linaro 4.7.2-2ubuntu1) 4.7.2
|
||
(cmake and autotools)
|
||
|
||
Cray Linux Environment (CLE) PrgEnv-pgi/4.0.46
|
||
hopper.nersc.gov pgcc 12.5-0 64-bit target on x86-64 Linux -tp shanghai
|
||
pgf90 12.5-0 64-bit target on x86-64 Linux -tp shanghai
|
||
pgCC 12.5-0 64-bit target on x86-64 Linux -tp shanghai
|
||
|
||
|
||
Known Problems
|
||
==============
|
||
|
||
* When building using the Cray compilers on Cray machines, HDF5
|
||
configure mistakenly thinks the compiler is an intel compiler and
|
||
sets the -std=c99 flag which breaks configure on Cray. To build HDF5
|
||
properly on a Cray machine, please consult with the instructions in
|
||
INSTALL_parallel for building on Hopper.
|
||
(MSC - 2013/04/26 - HDFFV-8429)
|
||
|
||
* The h5dump and h5diff utilities occasionally produce different output
|
||
between Linux and Windows systems. This is caused by lower-level library
|
||
routines that fail to write fill values to the user's buffer when reading
|
||
unallocated chunks from datasets that have a fill value set to
|
||
H5D_FILL_VALUE_DEFAULT. Due to platform differences the return of
|
||
spurious data values has only been encountered on Windows 32-bit systems.
|
||
(Issue HDFFV-8247; JP - 2013/03/27)
|
||
|
||
* The 5.9 C++ compiler on Sun failed to compile a C++ test ttypes.cpp. It
|
||
complains with this message:
|
||
"/home/hdf5/src/H5Vprivate.h", line 130: Error: __func__ is not defined.
|
||
|
||
The reason is that __func__ is a predefined identifier in C99 standard. The
|
||
HDF5 C library uses it in H5private.h. The test ttypes.cpp includes
|
||
H5private.h (H5Tpkg.h<-H5Fprivate.h<-H5Vprivate.h<-H5private.h). Sun's 5.9
|
||
C++ compiler doesn't support __func__, thus fails to compile the C++ test.
|
||
But Sun's 5.11 C++ compiler does. To check whether your Sun C++ compiler
|
||
knows this identifier, try to compile the following simple C++ program:
|
||
#include<stdio.h>
|
||
|
||
int main(void)
|
||
{
|
||
printf("%s\n", __func__);
|
||
return 0;
|
||
}
|
||
(SLU - 2012/11/5)
|
||
|
||
* The C++ and FORTRAN bindings are not currently working on FreeBSD with the
|
||
native release 8.2 compilers (4.2.1), but are working with gcc 4.6 from the
|
||
ports (and probably gcc releases after that).
|
||
(QAK - 2012/10/19)
|
||
|
||
* The following h5dump test case fails in BG/P machines (and potentially other
|
||
machines that use a command script to launch executables):
|
||
|
||
h5dump --no-compact-subset -d "AHFINDERDIRECT::ah_centroid_t[0] it=0 tl=0"
|
||
tno-subset.h5
|
||
|
||
This is due to the embedded spaces in the dataset name being interpreted
|
||
by the command script launcher as meta-characters, thus passing three
|
||
arguments to h5dump's -d flag. The command passes if run by hand, just
|
||
not via the test script.
|
||
(AKC - 2012/05/03)
|
||
|
||
* On hopper, the build failed when RUNSERIAL and RUNPARALLEL are set
|
||
to aprun -np X, because the H5lib_settings.c file was not generated
|
||
properly. Not setting those environment variables works, because
|
||
configure was able to automatically detect that it's a Cray system
|
||
and used the proper launch commands when necessary.
|
||
(MSC - 2012/04/18)
|
||
|
||
* The data conversion test dt_arith.c fails in "long double" to integer
|
||
conversion on Ubuntu 11.10 (3.0.0.13 kernel) with GCC 4.6.1 if the library
|
||
is built with optimization -O3 or -O2. The older GCC (4.5) or newer kernal
|
||
(3.2.2 on Fedora) doesn't have the problem. Users should lower the
|
||
optimization level (-O1 or -O0) by defining CFLAGS in the command line of
|
||
"configure" like:
|
||
|
||
CFLAGS=-O1 ./configure
|
||
|
||
This will overwrite the library's default optimization level.
|
||
(SLU - 2012/02/07 - HDFFV-7829)
|
||
This issue is no longer present on Ubuntu 12.10 (3.5.0 kernel) with
|
||
gcc 4.7.2.
|
||
|
||
* The STDIO VFD does not work on some architectures, possibly due to 32/64
|
||
bit or large file issues. The basic STDIO VFD test is known to fail on
|
||
64-bit SunOS 5.10 on SPARC when built with -m64 and 32-bit OS X/Darwin
|
||
10.7.0. The STDIO VFD test has been disabled while we investigate and
|
||
a fix should appear in a future release.
|
||
(DER - 2011/10/14 - HDFFV-8235)
|
||
|
||
* h5diff can report inconsistent results when comparing datasets of enum type
|
||
that contain invalid values. This is due to how enum types are handled in
|
||
the library and will be addressed in a future release.
|
||
(DER - 2011/10/14 - HDFFV-7527)
|
||
|
||
* The links test can fail under the stdio VFD due to some issues with external
|
||
links. This will be investigated and fixed in a future release.
|
||
(DER - 2011/10/14 - HDFFV-7768)
|
||
|
||
* After the shared library support was fixed for some bugs, it was discovered
|
||
that "make prefix=XXX install" no longer works for shared libraries. It
|
||
still works correctly for static libraries. Therefore, if you want to
|
||
install the HDF5 shared libraries in a location such as /usr/local/hdf5,
|
||
you need to specify the location via the --prefix option during configure
|
||
time. E.g, ./configure --prefix=/usr/local/hdf5 ...
|
||
(AKC - 2011/05/07 - HDFFV-7583)
|
||
|
||
* The parallel test, t_shapesame, in testpar/, may run for a long time and may
|
||
be terminated by the alarm signal. If that happens, one can increase the
|
||
alarm seconds (default is 1200 seconds = 20 minutes) by setting the
|
||
environment variable, $HDF5_ALARM_SECONDS, to a larger value such as 3600
|
||
(60 minutes). Note that the t_shapesame test may fail in some systems
|
||
(see the "While working on the 1.8.6 release..." problem below). If
|
||
it does, it will waste more time if $HDF5_ALARM_SECONDS is set
|
||
to a larger value.
|
||
(AKC - 2011/05/07)
|
||
|
||
* The C++ and FORTRAN bindings are not currently working on FreeBSD.
|
||
(QAK - 2011/04/26)
|
||
|
||
* Shared Fortran libraries are not quite working on AIX. While they are
|
||
generated when --enable-shared is specified, the fortran and hl/fortran
|
||
tests fail. We are looking into the issue. HL and C++ shared libraries
|
||
should now be working as intended, however.
|
||
(MAM - 2011/04/20)
|
||
|
||
* The --with-mpe configure option does not work with Mpich2.
|
||
(AKC - 2011/03/10)
|
||
|
||
* While working on the 1.8.6 release of HDF5, a bug was discovered that can
|
||
occur when reading from a dataset in parallel shortly after it has been
|
||
written to collectively. The issue was exposed by a new test in the parallel
|
||
HDF5 test suite, but had existed before that. We believe the problem lies with
|
||
certain MPI implementations and/or file systems.
|
||
|
||
We have provided a pure MPI test program, as well as a standalone HDF5
|
||
program, that can be used to determine if this is an issue on your system.
|
||
They should be run across multiple nodes with a varying number of processes.
|
||
These programs can be found at:
|
||
http://www.hdfgroup.org/ftp/HDF5/examples/known_problems/
|
||
(NAF - 2011/01/19)
|
||
|
||
* The library's test dt_arith.c showed a compiler's rounding problem on
|
||
Cygwin when converting from unsigned long long to long double. The
|
||
library's own conversion works fine. We defined a macro for Cygwin to
|
||
skip this test until we can solve the problem.
|
||
(SLU - 2010/05/05 - HDFFV-1264)
|
||
|
||
* All the VFL drivers aren't backward compatible. In H5FDpublic.h, the
|
||
structure H5FD_class_t changed in 1.8. There is new parameter added to
|
||
get_eoa and set_eoa callback functions. A new callback function
|
||
get_type_map was added in. The public function H5FDrealloc was taken
|
||
out in 1.8. The problem only happens when users define their own driver
|
||
for 1.6 and try to plug in 1.8 library. Because there's only one user
|
||
complaining about it, we (Elena, Quincey, and I) decided to leave it as
|
||
it is (see bug report #1279). Quincey will make a plan for 1.10.
|
||
(SLU - 2010/02/02)
|
||
|
||
* The --enable-static-exec configure flag will only statically link libraries
|
||
if the static version of that library is present. If only the shared version
|
||
of a library exists (i.e., most system libraries on Solaris, AIX, and Mac,
|
||
for example, only have shared versions), the flag should still result in a
|
||
successful compilation, but note that the installed executables will not be
|
||
fully static. Thus, the only guarantee on these systems is that the
|
||
executable is statically linked with just the HDF5 library.
|
||
(MAM - 2009/11/04)
|
||
|
||
* Parallel tests failed with 16 processes with data inconsistency at testphdf5
|
||
/ dataset_readAll. Parallel tests also failed with 32 and 64 processes with
|
||
collective abort of all ranks at t_posix_compliant / allwrite_allread_blocks
|
||
with MPI IO.
|
||
(CMC - 2009/04/28)
|
||
|
||
* On an Intel 64 Linux cluster (RH 4, Linux 2.6.9) with Intel 10.0 compilers,
|
||
use -mp -O1 compilation flags to build the libraries. A higher level of
|
||
optimization causes failures in several HDF5 library tests.
|
||
|
||
* A dataset created or rewritten with a v1.6.3 library or after cannot be read
|
||
with the v1.6.2 library or before when the Fletcher32 EDC filter is enabled.
|
||
There was a bug in the calculation of the Fletcher32 checksum in the
|
||
library before v1.6.3; the checksum value was not consistent between big-
|
||
endian and little-endian systems. This bug was fixed in Release 1.6.3.
|
||
However, after fixing the bug, the checksum value was no longer the same as
|
||
before on little-endian system. Library releases after 1.6.4 can still read
|
||
datasets created or rewritten with an HDF5 library of v1.6.2 or before.
|
||
(SLU - 2005/06/30)
|
||
|
||
|
||
%%%%1.8.10-patch1%%%%
|
||
|
||
|
||
HDF5 version 1.8.10-patch1 released on 2013-01-22
|
||
================================================================================
|
||
|
||
INTRODUCTION
|
||
============
|
||
|
||
This document describes the differences between HDF5-1.8.9 and
|
||
HDF5 1.8.10, and contains information on the platforms tested and
|
||
known problems in HDF5-1.8.10.
|
||
For more details, see the files HISTORY-1_0-1_8_0_rc3.txt
|
||
and HISTORY-1_8.txt in the release_docs/ directory of the HDF5 source.
|
||
|
||
Links to the HDF5 1.8.10 source code, documentation, and additional materials
|
||
can be found on the HDF5 web page at:
|
||
|
||
http://www.hdfgroup.org/products/hdf5/
|
||
|
||
The HDF5 1.8.10 release can be obtained from:
|
||
|
||
http://www.hdfgroup.org/HDF5/release/obtain5.html
|
||
|
||
User documentation for 1.8.10 can be accessed directly at this location:
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/
|
||
|
||
New features in the HDF5-1.8.x release series, including brief general
|
||
descriptions of some new and modified APIs, are described in the "What's New
|
||
in 1.8.0?" document:
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/ADGuide/WhatsNew180.html
|
||
|
||
All new and modified APIs are listed in detail in the "HDF5 Software Changes
|
||
from Release to Release" document, in the section "Release 1.8.10 (current
|
||
release) versus Release 1.8.9":
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/ADGuide/Changes.html
|
||
|
||
If you have any questions or comments, please send them to the HDF Help Desk:
|
||
|
||
help@hdfgroup.org
|
||
|
||
|
||
CONTENTS
|
||
========
|
||
|
||
- New Features
|
||
- Support for New Platforms, Languages, and Compilers
|
||
- Bug Fixes since HDF5-1.8.10
|
||
- Bug Fixes since HDF5-1.8.9
|
||
- Supported Platforms
|
||
- Supported Configuration Features Summary
|
||
- More Tested Platforms
|
||
- Known Problems
|
||
|
||
|
||
New Features
|
||
============
|
||
|
||
Configuration
|
||
-------------
|
||
- A new tool, cmakehdf5, which is a build command script similar to
|
||
buildhdf5 is added and is available in the bin directory.
|
||
(AKC - 2013/01/21)
|
||
|
||
Library
|
||
-------
|
||
- Updated to latest autotools and changed all hard *.sh scripts to
|
||
configure managed *.sh.in files. Removed overloading of autotools
|
||
TESTS variable by examples and tests. Renamed configure.in to
|
||
configure.ac. (ADB - 2012/08/23 - HDFFV-8129)
|
||
- The data sieve buffer size was set for all the datasets in the file. It
|
||
could waste memory if any dataset size is smaller than the sieve buffer
|
||
size. Now the library picks the smaller one between the dataset size
|
||
and the sieve buffer size from the file access property. See Issue 7934.
|
||
(SLU - 2012/4/11)
|
||
|
||
Parallel Library
|
||
----------------
|
||
- Added the H5Pget_mpio_no_collective_cause() function that retrieves
|
||
reasons why the collective I/O was broken during read/write IO access.
|
||
(JKM - 2012/08/30 HDFFV-8143)
|
||
|
||
- Added H5Pget_mpio_actual_io_mode_f (MSB - 2012/09/27)
|
||
|
||
Tools
|
||
-----
|
||
- h5import: Changed to allow the use of h5dump output as input files to
|
||
h5import. h5dump must include the "-p" option to print the properties;
|
||
configuration file is captured output of h5dump. The restrictions are
|
||
that only one dataset with a simple datatype (integer, floating-point,
|
||
or string) can be processed. Integers and floating-point imports from
|
||
h5dump must use the "binary" option for the data file. The string version
|
||
uses the h5dump "-y --width=1" options to disable the indexing printouts,
|
||
print single columns, and obviously NOT use the "binary" option.
|
||
(ADB - 2012/07/19 HDFFV-721)
|
||
|
||
High-Level APIs
|
||
---------------
|
||
- None
|
||
|
||
Fortran API
|
||
-----------
|
||
- Fixed a typo in return value of the nh5dread_f_c function (was 1
|
||
instead of 0 on success); fixed the return value to make it consistent
|
||
with other Fortran functions; cleaned debug statements from the code.
|
||
(EIP - 2012/06/23)
|
||
|
||
C++ API
|
||
-------
|
||
- None
|
||
|
||
|
||
Support for New Platforms, Languages, and Compilers
|
||
===================================================
|
||
- None
|
||
|
||
Bug Fixes since HDF5-1.8.10
|
||
===========================
|
||
Library
|
||
-------
|
||
- The library now behaves correctly when performing large I/O operations on
|
||
Mac OS-X. Previously, single I/O operations > 2 GB would fail since the
|
||
Darwin read/write calls cannot handle the number of bytes that their
|
||
parameter types imply.
|
||
Fixes HDFFV-7975 and HDFFV-8240 (DER - 07 JAN 2013)
|
||
- Fixed a bug in the core VFD that cause failures when opening files > 2 GB.
|
||
Fixes HDFFV-8124 and HDFFV-8158 (DER - 07 JAN 2013)
|
||
|
||
Tools
|
||
-----
|
||
- The following h5stat test case failed in BG/P machines (and potentially
|
||
other machines that display extra output if an MPI task returns with a
|
||
non-zero code.)
|
||
Testing h5stat notexist.h5
|
||
The test script was fixed to ignore the extra output.
|
||
HDFFV-8233 (AKC - 2012/12/17)
|
||
- h5diff: Fixed slowness when comparing HDF5 files with many attributes.
|
||
Much slower performance was identified with later release version
|
||
(from 1.8.7 to 1.8.10) compared to 1.8.6. The issue was introduced
|
||
from fixing an attribute related bug for 1.8.7 release in the past.
|
||
HDFFV-8145 (JKM 2012/12/13)
|
||
|
||
Testing
|
||
-------
|
||
- None
|
||
|
||
Bug Fixes since HDF5-1.8.9
|
||
==========================
|
||
|
||
Configuration
|
||
-------------
|
||
- Fixed configure --enable-production to not use -O optimization for Lion
|
||
and Mountain Lion systems when gcc (i686-apple-darwin11-llvm-gcc-4.2
|
||
(GCC) 4.2.1) is used. Somehow the -O optimization will cause some of
|
||
the hard conversion code in test/dt_arith.c to fail. HDFFV-8017.
|
||
(AKC - 2012/10/10)
|
||
- Fixed AIX Fortran compiler flags to use appropriate settings for
|
||
debugging, profiling, and optimization situations. HDFFV-8069.
|
||
(AKC 2012/09/27)
|
||
|
||
Library
|
||
-------
|
||
- Fixed a memory leak exposed when inserting/removing a property
|
||
from a property list several times. HDFFV-8022. (MSC 2012/05/18)
|
||
- The file_image test will fail in the "initial file image and callbacks in
|
||
the core VFD" sub-test if the source directory is read-only as the test
|
||
fails to create its test files in the build directory. This has been
|
||
fixed. HDFFV-8009 (AKC - 2012/07/06)
|
||
|
||
|
||
Parallel Library
|
||
----------------
|
||
- The MPI-POSIX VFD was updated to include the POSIX and Windows
|
||
correctness features added that had already been added to the other VFDs.
|
||
HDFFV-8058/7845. (DER 2012/09/17)
|
||
|
||
Performance
|
||
-------------
|
||
- Removed program perform/benchpar from the enable-build-all list. The
|
||
program will be retired or moved to another location. HDFFV-8156
|
||
(AKC 2012/10/01)
|
||
- Retired program perform/mpi-perf. Its purpose has been incorporated
|
||
into h5perf. (AKC 2012/09/21)
|
||
|
||
Tools
|
||
-----
|
||
- h5repack: "h5repack -f NONE file1.h5 out.h5" command failed if
|
||
source file contains chunked dataset and a chunk dim is bigger than
|
||
the dataset dim. Another issue is that the command changed max dims
|
||
if chunk dim is smaller than the dataset dim. These issue occurred
|
||
when dataset size is smaller than 64k (compact size limit) Fixed both.
|
||
HDFFV-8012 (JKM 2012/09/24)
|
||
- h5diff: Fixed the counter in verbose mode (-v, -r) so that it will no
|
||
longer add together the differences between datasets and the differences
|
||
between attributes of those datasets. This change makes the output of
|
||
verbose mode consistent for datasets, groups, and committed datatypes.
|
||
HDFFV-5919 (JKM 2012/09/10)
|
||
- h5diff: Fixed the incorrect result when comparing attribute data
|
||
values and the data type has the same class but different sizes.
|
||
HDFFV-7942 (JKM 2012/08/15)
|
||
- h5dump: Replaced single element fwrite with block writes.
|
||
HDFFV-1208 (ADB 2012/08/13)
|
||
- h5diff: Fixed test failure for "make check" due to failure of
|
||
copying test files when performed in HDF5 source tree. Also applied
|
||
to other tools. HDFFV-8107 (JKM 2012/08/01)
|
||
- ph5diff: Fixed intermittent hang issue on a certain operation in
|
||
parallel mode. It was detected by daily test for comparing
|
||
non-comparable objects, but it could have occurred in other
|
||
operations depending on machine condition. HDFFV-8003 (JKM 2012/08/01)
|
||
- h5diff: Fixed the function COPY_TESTFILES_TO_TESTDIR() of testh5diff.sh
|
||
to better report when there is an error in the file copying.
|
||
HDFFV-8105 (AKC 2012/07/22)
|
||
- h5dump: Fixed the sort by name display to maintain correct parent/child
|
||
relationships between ascending/descending order.
|
||
HDFFV-8095 (ADB 2012/07/12)
|
||
- h5dump: Fixed the display by creation order when using option -n
|
||
(print contents).
|
||
HDFFV-5942 (ADB 2012/07/09)
|
||
- h5dump: Changed to allow H5T_CSET_UTF8 to be displayed in h5dump output.
|
||
Used technique similar to what was done in h5ls (matches library
|
||
options).
|
||
HDFFV-7999 (ADB 2012/05/23)
|
||
- h5diff: Fixed the tool so that it will not check and display the status
|
||
of dangling links without setting the --follow-symlinks option. This
|
||
also improved performance when comparing lots of external links without
|
||
the --follow-symlinks option.
|
||
HDFFV-7998 (JKM 2012/04/26)
|
||
|
||
F90 API
|
||
-------
|
||
|
||
- Fixed a typo in return value of the nh5dread_f_c function (was 1
|
||
instead of 0 on success); fixed the return value to make it consistent
|
||
with other Fortran functions; cleaned debug statements from the code.
|
||
(EIP - 2012/06/23)
|
||
|
||
- Fixed a problem writing/reading control characters to a dataset; writing
|
||
a string containing alerts, backspace, carriage_return, form_feed,
|
||
horizontal_tab, vertical_tab, or new_line is now tested and working.
|
||
(MSB - 2012/09/01)
|
||
|
||
- Corrected the integer type of H5S_UNLIMITED_F to HSIZE_T (MSB - 2012/09/01)
|
||
|
||
- Corrected the number of continuation lines in the src files
|
||
to be less than 32 lines for F95 compliance. (MSB - 2012/10/01)
|
||
|
||
C++ API
|
||
------
|
||
- None
|
||
|
||
High-Level APIs:
|
||
------
|
||
|
||
- Fixed problem with H5TBdelete_record destroying all data following the
|
||
deletion of a row. (MSB- 2012/7/26)
|
||
|
||
- Fixed H5LTget_attribute_string not closing an object identifier when an
|
||
error occurs. (MSB- 2012/7/21)
|
||
|
||
- Corrected the return type of H5TBAget_fill from herr_t to htri_t to
|
||
reflect that a return value of 1 indicates that a fill value is
|
||
present, 0 indicates a fill value is not present, and <0 indicates an
|
||
error.
|
||
|
||
Fortran High-Level APIs:
|
||
------
|
||
- None
|
||
|
||
Supported Platforms
|
||
===================
|
||
AIX 5.3 xlc 10.1.0.5
|
||
(NASA G-ADA) xlC 10.1.0.5
|
||
xlf90 12.1.0.6
|
||
|
||
Linux 2.6.18-308.13.1.el5PAE GNU C (gcc), Fortran (gfortran), C++ (g++)
|
||
#1 SMP i686 i686 i386 compilers for 32-bit applications;
|
||
(jam) Version 4.1.2 20080704 (Red Hat 4.1.2-52)
|
||
Version 4.6.3
|
||
PGI C, Fortran, C++ Compilers for 32-bit
|
||
applications;
|
||
Version 11.9-0
|
||
Intel(R) C, C++, Fortran Compiler for 32-bit
|
||
applications;
|
||
Version 12.1
|
||
MPICH mpich2-1.4.1p1 compiled with
|
||
gcc 4.1.2 and gfortran 4.1.2
|
||
|
||
Linux 2.6.18-308.16.1.el5 GNU C (gcc), Fortran (gfortran), C++ (g++)
|
||
#1 SMP x86_64 GNU/Linux compilers for 32-bit applications;
|
||
(koala) Version 4.1.2 20080704 (Red Hat 4.1.2-52)
|
||
Version 4.6.3
|
||
PGI C, Fortran, C++ for 64-bit target on
|
||
x86-64;
|
||
Version 11.9-0
|
||
Version 12.5-0
|
||
Intel(R) C, C++, Fortran Compilers for
|
||
applications running on Intel(R) 64;
|
||
Version 12.1 (Build 20110811)
|
||
Version 12.1 (Build 20120212)
|
||
MPICH mpich2-1.4.1p1 compiled with
|
||
gcc 4.1.2 and gfortran 4.1.2
|
||
|
||
Linux 2.6.32-220.7.1.el6.ppc64 gcc (GCC) 4.4.6 20110731 (Red Hat 4.4.6-3)
|
||
#1 SMP ppc64 GNU/Linux g++ (GCC) 4.4.6 20110731
|
||
(ostrich) GNU Fortran (GCC) 4.4.6 20110731 (Red Hat 4.4.6-3)
|
||
|
||
Linux 2.6.32-220.23.1.1chaos Intel C, C++, Fortran Compilers
|
||
ch5.x86_64 GNU/Linux Version 12.1.5.339
|
||
(LLNL Aztec)
|
||
|
||
IBM Blue Gene/P XL C for Blue Gene/P, bgxlc V9.0
|
||
(LLNL uDawn) XL C++ for Blue Gene/P, bgxlC V9.0
|
||
XL Fortran for Blue Gene/P, bgxlf90 V11.1
|
||
|
||
SunOS 5.10 32- and 64-bit Sun C 5.9 Sun OS_sparc Patch 124867-16
|
||
(linew) Sun Fortran 95 8.3 Sun OS_sparc Patch 127000-13
|
||
Sun C++ 5.9 Sun OS_sparc Patch 124863-26
|
||
Sun C 5.11 SunOS_sparc
|
||
Sun Fortran 95 8.5 SunOS_sparc
|
||
Sun C++ 5.11 SunOS_sparc
|
||
|
||
Windows XP Visual Studio 2008 w/ Intel Fortran 10.1 (project files)
|
||
|
||
Windows XP x64 Visual Studio 2008 w/ Intel Fortran 10.1 (project files)
|
||
|
||
Windows 7 Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
|
||
Visual Studio 2010 w/ Intel Fortran 12 (cmake)
|
||
Cygwin(CYGWIN_NT-6.1 1.7.15(0.260/5/3) gcc(4.5.3) compiler and gfortran)
|
||
(cmake and autotools)
|
||
|
||
Windows 7 x64 Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
|
||
Visual Studio 2010 w/ Intel Fortran 12 (cmake)
|
||
Cygwin(CYGWIN_NT-6.1 1.7.15(0.260/5/3) gcc(4.5.3) compiler and gfortran)
|
||
(cmake and autotools)
|
||
|
||
Mac OS X Snow Leopard 10.6.8 gcc i686-apple-darwin11-llvm-gcc-4.2 (GCC) 4.2.1 from Xcode 3.2.6
|
||
Darwin Kernel Version 10.8.0 g++ i686-apple-darwin11-llvm-g++-4.2 (GCC) 4.2.1 from Xcode 3.2.6
|
||
(fred) gfortran GNU Fortran (GCC) 4.6.2
|
||
Intel C (icc), Fortran (ifort), C++ (icpc)
|
||
12.1.0.038 Build 20110811
|
||
|
||
Mac OS X Snow Leopard 10.6.8 gcc i686-apple-darwin11-llvm-gcc-4.2 (GCC) 4.2.1 from Xcode 3.2.6
|
||
Darwin Kernel Version 10.8.0 g++ i686-apple-darwin11-llvm-g++-4.2 (GCC) 4.2.1 from Xcode 3.2.6
|
||
Intel 32-bit gfortran GNU Fortran (GCC) 4.6.1
|
||
(tejeda) Intel C (icc), Fortran (ifort), C++ (icpc)
|
||
12.1.0.038 Build 20110811
|
||
|
||
Mac OS X Lion 10.7.3 gcc i686-apple-darwin11-llvm-gcc-4.2 (GCC) 4.2.1 from Xcode 4.2.1
|
||
32- and 64-bit g++ i686-apple-darwin11-llvm-g++-4.2 (GCC) 4.2.1 from Xcode 4.2.1
|
||
(duck) gfortran GNU Fortran (GCC) 4.6.2
|
||
|
||
Mac OS X Mountain Lion 10.8.1 cc Apple clang version 4.0 from Xcode 4.5.1
|
||
(owl) c++ Apple clang version 4.0 from Xcode 4.5.1
|
||
gcc i686-apple-darwin11-llvm-gcc-4.2 (GCC) 4.2.1 from Xcode 4.5.1
|
||
g++ i686-apple-darwin11-llvm-g++-4.2 (GCC) 4.2.1 from Xcode 4.5.1
|
||
gfortran GNU Fortran (GCC) 4.6.2
|
||
|
||
|
||
Tested Configuration Features Summary
|
||
=====================================
|
||
|
||
In the tables below
|
||
y = tested
|
||
n = not tested in this release
|
||
C = Cluster
|
||
W = Workstation
|
||
x = not working in this release
|
||
dna = does not apply
|
||
( ) = footnote appears below second table
|
||
<blank> = testing incomplete on this feature or platform
|
||
|
||
Platform C F90/ F90 C++ zlib SZIP
|
||
parallel F2003 parallel
|
||
Solaris2.10 32-bit n y/y n y y y
|
||
Solaris2.10 64-bit n y/n n y y y
|
||
Windows 7 y y/n n y y y
|
||
Windows 7 x64 y y/n n y y y
|
||
Mac OS X Snow Leopard 10.6.8 32-bit n y/y n y y n
|
||
Mac OS X Snow Leopard 10.6.8 64-bit n y/y n y y y
|
||
Mac OS X Lion 10.7.3 32-bit n y/y n y y n
|
||
Mac OS X Lion 10.7.3 64-bit n y/y n y y y
|
||
Mac OS X Mountain Lion 10.8.1 64-bit n y/n n y y n
|
||
AIX 5.3 32- and 64-bit y y/n y y y y
|
||
CentOS 5.5 Linux 2.6.18-308 i686 GNU y y/y y y y y
|
||
CentOS 5.5 Linux 2.6.18-308 i686 Intel n y/y n y y y
|
||
CentOS 5.5 Linux 2.6.18-308 i686 PGI n y/y n y y y
|
||
CentOS 5.5 Linux 2.6.18 x86_64 GNU y y/y y y y y
|
||
CentOS 5.5 Linux 2.6.18 x86_64 Intel n y/y n y y y
|
||
CentOS 5.5 Linux 2.6.18 x86_64 PGI n y/y n y y y
|
||
Linux 2.6.32-220.7.1.el6.ppc64 n y/n n y y y
|
||
|
||
|
||
Platform Shared Shared Shared Thread-
|
||
C libs F90 libs C++ libs safe
|
||
Solaris2.10 32-bit y y y y
|
||
Solaris2.10 64-bit n n n n
|
||
Windows 7 y y y y
|
||
Windows 7 x64 y y y y
|
||
Mac OS X Snow Leopard 10.6.8 32-bit y n y n
|
||
Mac OS X Snow Leopard 10.6.8 64-bit y n y n
|
||
Mac OS X Lion 10.7.3 32-bit y n y y
|
||
Mac OS X Lion 10.7.3 64-bit y n y y
|
||
Mac OS X Mountain Lion 10.8.1 64-bit y n y y
|
||
AIX 5.3 32- and 64-bit n n n y
|
||
CentOS 5.5 Linux 2.6.18-308 i686 GNU y y y y
|
||
CentOS 5.5 Linux 2.6.18-308 i686 Intel y y y n
|
||
CentOS 5.5 Linux 2.6.18-308 i686 PGI y y y n
|
||
CentOS 5.5 Linux 2.6.18 x86_64 GNU y y y y
|
||
CentOS 5.5 Linux 2.6.18 x86_64 Intel y y y n
|
||
CentOS 5.5 Linux 2.6.18 x86_64 PGI y y y n
|
||
Linux 2.6.32-220.7.1.el6.ppc64 y y y n
|
||
|
||
Compiler versions for each platform are listed in the preceding
|
||
"Supported Platforms" table.
|
||
|
||
|
||
More Tested Platforms
|
||
=====================
|
||
The following platforms are not supported but have been tested for this release.
|
||
|
||
FreeBSD 8.2-STABLE i386 gcc 4.2.1 [FreeBSD] 20070719
|
||
(loyalty) gcc 4.6.1 20110422
|
||
g++ 4.6.1 20110422
|
||
gfortran 4.6.1 20110422
|
||
|
||
FreeBSD 8.2-STABLE amd64 gcc 4.2.1 [FreeBSD] 20070719
|
||
(freedom) gcc 4.6.1 20110422
|
||
g++ 4.6.1 20110422
|
||
gfortran 4.6.1 20110422
|
||
|
||
Debian6.0.3 2.6.32-5-686 #1 SMP i686 GNU/Linux
|
||
gcc (Debian 4.4.5-8) 4.4.5
|
||
GNU Fortran (Debian 4.4.5-8) 4.4.5
|
||
(cmake and autotools)
|
||
|
||
Debian6.0.3 2.6.32-5-amd64 #1 SMP x86_64 GNU/Linux
|
||
gcc (Debian 4.4.5-8) 4.4.5
|
||
GNU Fortran (Debian 4.4.5-8) 4.4.5
|
||
(cmake and autotools)
|
||
|
||
Fedora17 3.5.2-1.fc17.i6866 #1 SMP i686 i686 i386 GNU/Linux
|
||
gcc (GCC) 4.7.0 20120507 (Red Hat 4.7.0-5)
|
||
GNU Fortran (GCC) 4.7.0 20120507 (Red Hat 4.7.0-5)
|
||
(cmake and autotools)
|
||
|
||
Fedora17 3.5.2-1.fc17.x86_64 #1 SMP x86_64 x86_64 x86_64 GNU/Linux
|
||
gcc (GCC) 4.7.0 20120507 (Red Hat 4.7.0-5)
|
||
GNU Fortran (GCC) 4.7.0 20120507 (Red Hat 4.7.0-5)
|
||
(cmake and autotools)
|
||
|
||
SUSE 12.2 3.4.6-2.10-desktop #1 SMP PREEMPT i686 i686 i386 GNU/Linux
|
||
gcc (SUSE Linux) 4.7.1
|
||
GNU Fortran (SUSE Linux) 4.7.1
|
||
(cmake and autotools)
|
||
|
||
SUSE 12.2 3.4.6-2.10-desktop #1 SMP PREEMPT x86_64 x86_64 x86_64 GNU/Linux
|
||
gcc (SUSE Linux) 4.7.1
|
||
GNU Fortran (SUSE Linux) 4.7.1
|
||
(cmake and autotools)
|
||
|
||
Ubuntu 12.04 3.2.0-29-generic #46-Ubuntu SMP i686 GNU/Linux
|
||
gcc (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3
|
||
GNU Fortran (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3
|
||
(cmake and autotools)
|
||
|
||
Ubuntu 12.04 3.2.0-29-generic #46-Ubuntu SMP x86_64 GNU/Linux
|
||
gcc (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3
|
||
GNU Fortran (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3
|
||
(cmake and autotools)
|
||
(Use optimization level -O1)
|
||
|
||
Cray Linux Environment (CLE) PrgEnv-pgi/4.0.46
|
||
hopper.nersc.gov pgcc 12.5-0 64-bit target on x86-64 Linux -tp shanghai
|
||
pgf90 12.5-0 64-bit target on x86-64 Linux -tp shanghai
|
||
pgCC 12.5-0 64-bit target on x86-64 Linux -tp shanghai
|
||
|
||
|
||
Known Problems
|
||
==============
|
||
* The C++ and FORTRAN bindings are not currently working on FreeBSD with the
|
||
native release 8.2 compilers (4.2.1), but are working with gcc 4.6 from the
|
||
ports (and probably gcc releases after that).
|
||
(QAK - 2012/10/19)
|
||
|
||
* The following h5dump test case fails in BG/P machines (and potentially other
|
||
machines that use a command script to launch executables):
|
||
|
||
h5dump --no-compact-subset -d "AHFINDERDIRECT::ah_centroid_t[0] it=0 tl=0"
|
||
tno-subset.h5
|
||
|
||
This is due to the embedded spaces in the dataset name being interpreted
|
||
by the command script launcher as meta-characters, thus passing three
|
||
arguments to h5dump's -d flag. The command passes if run by hand, just
|
||
not via the test script.
|
||
(AKC - 2012/05/03)
|
||
|
||
* On hopper, the build failed when RUNSERIAL and RUNPARALLEL are set
|
||
to aprun -np X, because the H5lib_settings.c file was not generated
|
||
properly. Not setting those environment variables works, because
|
||
configure was able to automatically detect that it's a Cray system
|
||
and used the proper launch commands when necessary.
|
||
(MSC - 2012/04/18)
|
||
|
||
* The data conversion test dt_arith.c fails in "long double" to integer
|
||
conversion on Ubuntu 11.10 (3.0.0.13 kernal) with GCC 4.6.1 if the library
|
||
is built with optimization -O3 or -O2. The older GCC (4.5) or newer kernal
|
||
(3.2.2 on Fedora) doesn't have the problem. Users should lower the
|
||
optimization level (-O1 or -O0) by defining CFLAGS in the command line of
|
||
"configure" like:
|
||
|
||
CFLAGS=-O1 ./configure
|
||
|
||
This will overwrite the library's default optimization level.
|
||
(SLU - 2012/02/07 - HDFFV-7829)
|
||
|
||
* The STDIO VFD does not work on some architectures, possibly due to 32/64
|
||
bit or large file issues. The basic STDIO VFD test is known to fail on
|
||
64-bit SunOS 5.10 on SPARC when built with -m64 and 32-bit OS X/Darwin
|
||
10.7.0. The STDIO VFD test has been disabled while we investigate and
|
||
a fix should appear in a future release.
|
||
(DER - 2011/10/14 - HDFFV-8235)
|
||
|
||
* h5diff can report inconsistent results when comparing datasets of enum type
|
||
that contain invalid values. This is due to how enum types are handled in
|
||
the library and will be addressed in a future release.
|
||
(DER - 2011/10/14 - HDFFV-7527)
|
||
|
||
* The links test can fail under the stdio VFD due to some issues with external
|
||
links. This will be investigated and fixed in a future release.
|
||
(DER - 2011/10/14 - HDFFV-7768)
|
||
|
||
* After the shared library support was fixed for some bugs, it was discovered
|
||
that "make prefix=XXX install" no longer works for shared libraries. It
|
||
still works correctly for static libraries. Therefore, if you want to
|
||
install the HDF5 shared libraries in a location such as /usr/local/hdf5,
|
||
you need to specify the location via the --prefix option during configure
|
||
time. E.g, ./configure --prefix=/usr/local/hdf5 ...
|
||
(AKC - 2011/05/07 - HDFFV-7583)
|
||
|
||
* The parallel test, t_shapesame, in testpar/, may run for a long time and may
|
||
be terminated by the alarm signal. If that happens, one can increase the
|
||
alarm seconds (default is 1200 seconds = 20 minutes) by setting the
|
||
environment variable, $HDF5_ALARM_SECONDS, to a larger value such as 3600
|
||
(60 minutes). Note that the t_shapesame test may fail in some systems
|
||
(see the "While working on the 1.8.6 release..." problem below). If
|
||
it does, it will waste more time if $HDF5_ALARM_SECONDS is set
|
||
to a larger value.
|
||
(AKC - 2011/05/07)
|
||
|
||
* The C++ and FORTRAN bindings are not currently working on FreeBSD.
|
||
(QAK - 2011/04/26)
|
||
|
||
* Shared Fortran libraries are not quite working on AIX. While they are
|
||
generated when --enable-shared is specified, the fortran and hl/fortran
|
||
tests fail. We are looking into the issue. HL and C++ shared libraries
|
||
should now be working as intended, however.
|
||
(MAM - 2011/04/20)
|
||
|
||
* The --with-mpe configure option does not work with Mpich2.
|
||
(AKC - 2011/03/10)
|
||
|
||
* While working on the 1.8.6 release of HDF5, a bug was discovered that can
|
||
occur when reading from a dataset in parallel shortly after it has been
|
||
written to collectively. The issue was exposed by a new test in the parallel
|
||
HDF5 test suite, but had existed before that. We believe the problem lies with
|
||
certain MPI implementations and/or file systems.
|
||
|
||
We have provided a pure MPI test program, as well as a standalone HDF5
|
||
program, that can be used to determine if this is an issue on your system.
|
||
They should be run across multiple nodes with a varying number of processes.
|
||
These programs can be found at:
|
||
http://www.hdfgroup.org/ftp/HDF5/examples/known_problems/
|
||
(NAF - 2011/01/19)
|
||
|
||
* The library's test dt_arith.c showed a compiler's rounding problem on
|
||
Cygwin when converting from unsigned long long to long double. The
|
||
library's own conversion works fine. We defined a macro for Cygwin to
|
||
skip this test until we can solve the problem.
|
||
(SLU - 2010/05/05 - HDFFV-1264)
|
||
|
||
* All the VFL drivers aren't backward compatible. In H5FDpublic.h, the
|
||
structure H5FD_class_t changed in 1.8. There is new parameter added to
|
||
get_eoa and set_eoa callback functions. A new callback function
|
||
get_type_map was added in. The public function H5FDrealloc was taken
|
||
out in 1.8. The problem only happens when users define their own driver
|
||
for 1.6 and try to plug in 1.8 library. Because there's only one user
|
||
complaining about it, we (Elena, Quincey, and I) decided to leave it as
|
||
it is (see bug report #1279). Quincey will make a plan for 1.10.
|
||
(SLU - 2010/02/02)
|
||
|
||
* The --enable-static-exec configure flag will only statically link libraries
|
||
if the static version of that library is present. If only the shared version
|
||
of a library exists (i.e., most system libraries on Solaris, AIX, and Mac,
|
||
for example, only have shared versions), the flag should still result in a
|
||
successful compilation, but note that the installed executables will not be
|
||
fully static. Thus, the only guarantee on these systems is that the
|
||
executable is statically linked with just the HDF5 library.
|
||
(MAM - 2009/11/04)
|
||
|
||
* Parallel tests failed with 16 processes with data inconsistency at testphdf5
|
||
/ dataset_readAll. Parallel tests also failed with 32 and 64 processes with
|
||
collective abort of all ranks at t_posix_compliant / allwrite_allread_blocks
|
||
with MPI IO.
|
||
(CMC - 2009/04/28)
|
||
|
||
* On an Intel 64 Linux cluster (RH 4, Linux 2.6.9) with Intel 10.0 compilers,
|
||
use -mp -O1 compilation flags to build the libraries. A higher level of
|
||
optimization causes failures in several HDF5 library tests.
|
||
|
||
* A dataset created or rewritten with a v1.6.3 library or after cannot be read
|
||
with the v1.6.2 library or before when the Fletcher32 EDC filter is enabled.
|
||
There was a bug in the calculation of the Fletcher32 checksum in the
|
||
library before v1.6.3; the checksum value was not consistent between big-
|
||
endian and little-endian systems. This bug was fixed in Release 1.6.3.
|
||
However, after fixing the bug, the checksum value was no longer the same as
|
||
before on little-endian system. Library releases after 1.6.4 can still read
|
||
datasets created or rewritten with an HDF5 library of v1.6.2 or before.
|
||
(SLU - 2005/06/30)
|
||
|
||
|
||
%%%%1.8.10%%%%
|
||
|
||
|
||
HDF5 version 1.8.10 released on 2012-10-26
|
||
================================================================================
|
||
|
||
INTRODUCTION
|
||
============
|
||
|
||
This document describes the differences between HDF5-1.8.9 and
|
||
HDF5 1.8.10, and contains information on the platforms tested and
|
||
known problems in HDF5-1.8.10.
|
||
For more details, see the files HISTORY-1_0-1_8_0_rc3.txt
|
||
and HISTORY-1_8.txt in the release_docs/ directory of the HDF5 source.
|
||
|
||
Links to the HDF5 1.8.10 source code, documentation, and additional materials
|
||
can be found on the HDF5 web page at:
|
||
|
||
http://www.hdfgroup.org/products/hdf5/
|
||
|
||
The HDF5 1.8.10 release can be obtained from:
|
||
|
||
http://www.hdfgroup.org/HDF5/release/obtain5.html
|
||
|
||
User documentation for 1.8.10 can be accessed directly at this location:
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/
|
||
|
||
New features in the HDF5-1.8.x release series, including brief general
|
||
descriptions of some new and modified APIs, are described in the "What's New
|
||
in 1.8.0?" document:
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/ADGuide/WhatsNew180.html
|
||
|
||
All new and modified APIs are listed in detail in the "HDF5 Software Changes
|
||
from Release to Release" document, in the section "Release 1.8.10 (current
|
||
release) versus Release 1.8.9":
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/ADGuide/Changes.html
|
||
|
||
If you have any questions or comments, please send them to the HDF Help Desk:
|
||
|
||
help@hdfgroup.org
|
||
|
||
|
||
CONTENTS
|
||
========
|
||
|
||
- New Features
|
||
- Support for New Platforms, Languages, and Compilers
|
||
- Bug Fixes since HDF5-1.8.9
|
||
- Supported Platforms
|
||
- Supported Configuration Features Summary
|
||
- More Tested Platforms
|
||
- Known Problems
|
||
|
||
|
||
New Features
|
||
============
|
||
|
||
Configuration
|
||
-------------
|
||
- None
|
||
|
||
Library
|
||
-------
|
||
- Updated to latest autotools and changed all hard *.sh scripts to
|
||
configure managed *.sh.in files. Removed overloading of autotools
|
||
TESTS variable by examples and tests. Renamed configure.in to
|
||
configure.ac. (ADB - 2012/08/23 - HDFFV-8129)
|
||
- The data sieve buffer size was set for all the datasets in the file. It
|
||
could waste memory if any dataset size is smaller than the sieve buffer
|
||
size. Now the library picks the smaller one between the dataset size
|
||
and the sieve buffer size from the file access property. See Issue 7934.
|
||
(SLU - 2012/4/11)
|
||
|
||
Parallel Library
|
||
----------------
|
||
- Added the H5Pget_mpio_no_collective_cause() function that retrieves
|
||
reasons why the collective I/O was broken during read/write IO access.
|
||
(JKM - 2012/08/30 HDFFV-8143)
|
||
|
||
- Added H5Pget_mpio_actual_io_mode_f (MSB - 2012/09/27)
|
||
|
||
Tools
|
||
-----
|
||
- h5import: Changed to allow the use of h5dump output as input files to
|
||
h5import. h5dump must include the "-p" option to print the properties;
|
||
configuration file is captured output of h5dump. The restrictions are
|
||
that only one dataset with a simple datatype (integer, floating-point,
|
||
or string) can be processed. Integers and floating-point imports from
|
||
h5dump must use the "binary" option for the data file. The string version
|
||
uses the h5dump "-y --width=1" options to disable the indexing printouts,
|
||
print single columns, and obviously NOT use the "binary" option.
|
||
(ADB - 2012/07/19 HDFFV-721)
|
||
|
||
High-Level APIs
|
||
---------------
|
||
- None
|
||
|
||
Fortran API
|
||
-----------
|
||
- Fixed a typo in return value of the nh5dread_f_c function (was 1
|
||
instead of 0 on success); fixed the return value to make it consistent
|
||
with other Fortran functions; cleaned debug statements from the code.
|
||
(EIP - 2012/06/23)
|
||
|
||
C++ API
|
||
-------
|
||
- None
|
||
|
||
|
||
Support for New Platforms, Languages, and Compilers
|
||
===================================================
|
||
- None
|
||
|
||
Bug Fixes since HDF5-1.8.9
|
||
==========================
|
||
|
||
Configuration
|
||
-------------
|
||
- Fixed configure --enable-production to not use -O optimization for Lion
|
||
and Mountain Lion systems when gcc (i686-apple-darwin11-llvm-gcc-4.2
|
||
(GCC) 4.2.1) is used. Somehow the -O optimization will cause some of
|
||
the hard conversion code in test/dt_arith.c to fail. HDFFV-8017.
|
||
(AKC - 2012/10/10)
|
||
- Fixed AIX Fortran compiler flags to use appropriate settings for
|
||
debugging, profiling, and optimization situations. HDFFV-8069.
|
||
(AKC 2012/09/27)
|
||
|
||
Library
|
||
-------
|
||
- Fixed a memory leak exposed when inserting/removing a property
|
||
from a property list several times. HDFFV-8022. (MSC 2012/05/18)
|
||
- The file_image test will fail in the "initial file image and callbacks in
|
||
the core VFD" sub-test if the source directory is read-only as the test
|
||
fails to create its test files in the build directory. This has been
|
||
fixed. HDFFV-8009 (AKC - 2012/07/06)
|
||
|
||
|
||
Parallel Library
|
||
----------------
|
||
- The MPI-POSIX VFD was updated to include the POSIX and Windows
|
||
correctness features added that had already been added to the other VFDs.
|
||
HDFFV-8058/7845. (DER 2012/09/17)
|
||
|
||
Performance
|
||
-------------
|
||
- Removed program perform/benchpar from the enable-build-all list. The
|
||
program will be retired or moved to another location. HDFFV-8156
|
||
(AKC 2012/10/01)
|
||
- Retired program perform/mpi-perf. Its purpose has been incorporated
|
||
into h5perf. (AKC 2012/09/21)
|
||
|
||
Tools
|
||
-----
|
||
- h5repack: "h5repack -f NONE file1.h5 out.h5" command failed if
|
||
source file contains chunked dataset and a chunk dim is bigger than
|
||
the dataset dim. Another issue is that the command changed max dims
|
||
if chunk dim is smaller than the dataset dim. These issue occurred
|
||
when dataset size is smaller than 64k (compact size limit) Fixed both.
|
||
HDFFV-8012 (JKM 2012/09/24)
|
||
- h5diff: Fixed the counter in verbose mode (-v, -r) so that it will no
|
||
longer add together the differences between datasets and the differences
|
||
between attributes of those datasets. This change makes the output of
|
||
verbose mode consistent for datasets, groups, and committed datatypes.
|
||
HDFFV-5919 (JKM 2012/09/10)
|
||
- h5diff: Fixed the incorrect result when comparing attribute data
|
||
values and the data type has the same class but different sizes.
|
||
HDFFV-7942 (JKM 2012/08/15)
|
||
- h5dump: Replaced single element fwrite with block writes.
|
||
HDFFV-1208 (ADB 2012/08/13)
|
||
- h5diff: Fixed test failure for "make check" due to failure of
|
||
copying test files when performed in HDF5 source tree. Also applied
|
||
to other tools. HDFFV-8107 (JKM 2012/08/01)
|
||
- ph5diff: Fixed intermittent hang issue on a certain operation in
|
||
parallel mode. It was detected by daily test for comparing
|
||
non-comparable objects, but it could have occurred in other
|
||
operations depending on machine condition. HDFFV-8003 (JKM 2012/08/01)
|
||
- h5diff: Fixed the function COPY_TESTFILES_TO_TESTDIR() of testh5diff.sh
|
||
to better report when there is an error in the file copying.
|
||
HDFFV-8105 (AKC 2012/07/22)
|
||
- h5dump: Fixed the sort by name display to maintain correct parent/child
|
||
relationships between ascending/descending order.
|
||
HDFFV-8095 (ADB 2012/07/12)
|
||
- h5dump: Fixed the display by creation order when using option -n
|
||
(print contents).
|
||
HDFFV-5942 (ADB 2012/07/09)
|
||
- h5dump: Changed to allow H5T_CSET_UTF8 to be displayed in h5dump output.
|
||
Used technique similar to what was done in h5ls (matches library
|
||
options).
|
||
HDFFV-7999 (ADB 2012/05/23)
|
||
- h5diff: Fixed the tool so that it will not check and display the status
|
||
of dangling links without setting the --follow-symlinks option. This
|
||
also improved performance when comparing lots of external links without
|
||
the --follow-symlinks option.
|
||
HDFFV-7998 (JKM 2012/04/26)
|
||
|
||
F90 API
|
||
-------
|
||
|
||
- Fixed a typo in return value of the nh5dread_f_c function (was 1
|
||
instead of 0 on success); fixed the return value to make it consistent
|
||
with other Fortran functions; cleaned debug statements from the code.
|
||
(EIP - 2012/06/23)
|
||
|
||
- Fixed a problem writing/reading control characters to a dataset; writing
|
||
a string containing alerts, backspace, carriage_return, form_feed,
|
||
horizontal_tab, vertical_tab, or new_line is now tested and working.
|
||
(MSB - 2012/09/01)
|
||
|
||
- Corrected the integer type of H5S_UNLIMITED_F to HSIZE_T (MSB - 2012/09/01)
|
||
|
||
- Corrected the number of continuation lines in the src files
|
||
to be less than 32 lines for F95 compliance. (MSB - 2012/10/01)
|
||
|
||
C++ API
|
||
------
|
||
- None
|
||
|
||
High-Level APIs:
|
||
------
|
||
|
||
- Fixed problem with H5TBdelete_record destroying all data following the
|
||
deletion of a row. (MSB- 2012/7/26)
|
||
|
||
- Fixed H5LTget_attribute_string not closing an object identifier when an
|
||
error occurs. (MSB- 2012/7/21)
|
||
|
||
- Corrected the return type of H5TBAget_fill from herr_t to htri_t to
|
||
reflect that a return value of 1 indicates that a fill value is
|
||
present, 0 indicates a fill value is not present, and <0 indicates an
|
||
error.
|
||
|
||
Fortran High-Level APIs:
|
||
------
|
||
- None
|
||
|
||
Supported Platforms
|
||
===================
|
||
AIX 5.3 xlc 10.1.0.5
|
||
(NASA G-ADA) xlC 10.1.0.5
|
||
xlf90 12.1.0.6
|
||
|
||
Linux 2.6.18-308.13.1.el5PAE GNU C (gcc), Fortran (gfortran), C++ (g++)
|
||
#1 SMP i686 i686 i386 compilers for 32-bit applications;
|
||
(jam) Version 4.1.2 20080704 (Red Hat 4.1.2-52)
|
||
Version 4.6.3
|
||
PGI C, Fortran, C++ Compilers for 32-bit
|
||
applications;
|
||
Version 11.9-0
|
||
Intel(R) C, C++, Fortran Compiler for 32-bit
|
||
applications;
|
||
Version 12.1
|
||
MPICH mpich2-1.4.1p1 compiled with
|
||
gcc 4.1.2 and gfortran 4.1.2
|
||
|
||
Linux 2.6.18-308.16.1.el5 GNU C (gcc), Fortran (gfortran), C++ (g++)
|
||
#1 SMP x86_64 GNU/Linux compilers for 32-bit applications;
|
||
(koala) Version 4.1.2 20080704 (Red Hat 4.1.2-52)
|
||
Version 4.6.3
|
||
PGI C, Fortran, C++ for 64-bit target on
|
||
x86-64;
|
||
Version 11.9-0
|
||
Version 12.5-0
|
||
Intel(R) C, C++, Fortran Compilers for
|
||
applications running on Intel(R) 64;
|
||
Version 12.1 (Build 20110811)
|
||
Version 12.1 (Build 20120212)
|
||
MPICH mpich2-1.4.1p1 compiled with
|
||
gcc 4.1.2 and gfortran 4.1.2
|
||
|
||
Linux 2.6.32-220.7.1.el6.ppc64 gcc (GCC) 4.4.6 20110731 (Red Hat 4.4.6-3)
|
||
#1 SMP ppc64 GNU/Linux g++ (GCC) 4.4.6 20110731
|
||
(ostrich) GNU Fortran (GCC) 4.4.6 20110731 (Red Hat 4.4.6-3)
|
||
|
||
Linux 2.6.32-220.23.1.1chaos Intel C, C++, Fortran Compilers
|
||
ch5.x86_64 GNU/Linux Version 12.1.5.339
|
||
(LLNL Aztec)
|
||
|
||
IBM Blue Gene/P XL C for Blue Gene/P, bgxlc V9.0
|
||
(LLNL uDawn) XL C++ for Blue Gene/P, bgxlC V9.0
|
||
XL Fortran for Blue Gene/P, bgxlf90 V11.1
|
||
|
||
SunOS 5.10 32- and 64-bit Sun C 5.9 Sun OS_sparc Patch 124867-16
|
||
(linew) Sun Fortran 95 8.3 Sun OS_sparc Patch 127000-13
|
||
Sun C++ 5.9 Sun OS_sparc Patch 124863-26
|
||
Sun C 5.11 SunOS_sparc
|
||
Sun Fortran 95 8.5 SunOS_sparc
|
||
Sun C++ 5.11 SunOS_sparc
|
||
|
||
Windows XP Visual Studio 2008 w/ Intel Fortran 10.1 (project files)
|
||
|
||
Windows XP x64 Visual Studio 2008 w/ Intel Fortran 10.1 (project files)
|
||
|
||
Windows 7 Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
|
||
Visual Studio 2010 w/ Intel Fortran 12 (cmake)
|
||
Cygwin(CYGWIN_NT-6.1 1.7.15(0.260/5/3) gcc(4.5.3) compiler and gfortran)
|
||
(cmake and autotools)
|
||
|
||
Windows 7 x64 Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
|
||
Visual Studio 2010 w/ Intel Fortran 12 (cmake)
|
||
Cygwin(CYGWIN_NT-6.1 1.7.15(0.260/5/3) gcc(4.5.3) compiler and gfortran)
|
||
(cmake and autotools)
|
||
|
||
Mac OS X Snow Leopard 10.6.8 gcc i686-apple-darwin11-llvm-gcc-4.2 (GCC) 4.2.1 from Xcode 3.2.6
|
||
Darwin Kernel Version 10.8.0 g++ i686-apple-darwin11-llvm-g++-4.2 (GCC) 4.2.1 from Xcode 3.2.6
|
||
(fred) gfortran GNU Fortran (GCC) 4.6.2
|
||
Intel C (icc), Fortran (ifort), C++ (icpc)
|
||
12.1.0.038 Build 20110811
|
||
|
||
Mac OS X Snow Leopard 10.6.8 gcc i686-apple-darwin11-llvm-gcc-4.2 (GCC) 4.2.1 from Xcode 3.2.6
|
||
Darwin Kernel Version 10.8.0 g++ i686-apple-darwin11-llvm-g++-4.2 (GCC) 4.2.1 from Xcode 3.2.6
|
||
Intel 32-bit gfortran GNU Fortran (GCC) 4.6.1
|
||
(tejeda) Intel C (icc), Fortran (ifort), C++ (icpc)
|
||
12.1.0.038 Build 20110811
|
||
|
||
Mac OS X Lion 10.7.3 gcc i686-apple-darwin11-llvm-gcc-4.2 (GCC) 4.2.1 from Xcode 4.2.1
|
||
32- and 64-bit g++ i686-apple-darwin11-llvm-g++-4.2 (GCC) 4.2.1 from Xcode 4.2.1
|
||
(duck) gfortran GNU Fortran (GCC) 4.6.2
|
||
|
||
Mac OS X Mountain Lion 10.8.1 cc Apple clang version 4.0 from Xcode 4.5.1
|
||
(owl) c++ Apple clang version 4.0 from Xcode 4.5.1
|
||
gcc i686-apple-darwin11-llvm-gcc-4.2 (GCC) 4.2.1 from Xcode 4.5.1
|
||
g++ i686-apple-darwin11-llvm-g++-4.2 (GCC) 4.2.1 from Xcode 4.5.1
|
||
gfortran GNU Fortran (GCC) 4.6.2
|
||
|
||
|
||
Tested Configuration Features Summary
|
||
=====================================
|
||
|
||
In the tables below
|
||
y = tested
|
||
n = not tested in this release
|
||
C = Cluster
|
||
W = Workstation
|
||
x = not working in this release
|
||
dna = does not apply
|
||
( ) = footnote appears below second table
|
||
<blank> = testing incomplete on this feature or platform
|
||
|
||
Platform C F90/ F90 C++ zlib SZIP
|
||
parallel F2003 parallel
|
||
Solaris2.10 32-bit n y/y n y y y
|
||
Solaris2.10 64-bit n y/n n y y y
|
||
Windows 7 y y/n n y y y
|
||
Windows 7 x64 y y/n n y y y
|
||
Mac OS X Snow Leopard 10.6.8 32-bit n y/y n y y n
|
||
Mac OS X Snow Leopard 10.6.8 64-bit n y/y n y y y
|
||
Mac OS X Lion 10.7.3 32-bit n y/y n y y n
|
||
Mac OS X Lion 10.7.3 64-bit n y/y n y y y
|
||
Mac OS X Mountain Lion 10.8.1 64-bit n y/n n y y n
|
||
AIX 5.3 32- and 64-bit y y/n y y y y
|
||
CentOS 5.5 Linux 2.6.18-308 i686 GNU y y/y y y y y
|
||
CentOS 5.5 Linux 2.6.18-308 i686 Intel n y/y n y y y
|
||
CentOS 5.5 Linux 2.6.18-308 i686 PGI n y/y n y y y
|
||
CentOS 5.5 Linux 2.6.18 x86_64 GNU y y/y y y y y
|
||
CentOS 5.5 Linux 2.6.18 x86_64 Intel n y/y n y y y
|
||
CentOS 5.5 Linux 2.6.18 x86_64 PGI n y/y n y y y
|
||
Linux 2.6.32-220.7.1.el6.ppc64 n y/n n y y y
|
||
|
||
|
||
Platform Shared Shared Shared Thread-
|
||
C libs F90 libs C++ libs safe
|
||
Solaris2.10 32-bit y y y y
|
||
Solaris2.10 64-bit n n n n
|
||
Windows 7 y y y y
|
||
Windows 7 x64 y y y y
|
||
Mac OS X Snow Leopard 10.6.8 32-bit y n y n
|
||
Mac OS X Snow Leopard 10.6.8 64-bit y n y n
|
||
Mac OS X Lion 10.7.3 32-bit y n y y
|
||
Mac OS X Lion 10.7.3 64-bit y n y y
|
||
Mac OS X Mountain Lion 10.8.1 64-bit y n y y
|
||
AIX 5.3 32- and 64-bit n n n y
|
||
CentOS 5.5 Linux 2.6.18-308 i686 GNU y y y y
|
||
CentOS 5.5 Linux 2.6.18-308 i686 Intel y y y n
|
||
CentOS 5.5 Linux 2.6.18-308 i686 PGI y y y n
|
||
CentOS 5.5 Linux 2.6.18 x86_64 GNU y y y y
|
||
CentOS 5.5 Linux 2.6.18 x86_64 Intel y y y n
|
||
CentOS 5.5 Linux 2.6.18 x86_64 PGI y y y n
|
||
Linux 2.6.32-220.7.1.el6.ppc64 y y y n
|
||
|
||
Compiler versions for each platform are listed in the preceding
|
||
"Supported Platforms" table.
|
||
|
||
|
||
More Tested Platforms
|
||
=====================
|
||
The following platforms are not supported but have been tested for this release.
|
||
|
||
FreeBSD 8.2-STABLE i386 gcc 4.2.1 [FreeBSD] 20070719
|
||
(loyalty) gcc 4.6.1 20110422
|
||
g++ 4.6.1 20110422
|
||
gfortran 4.6.1 20110422
|
||
|
||
FreeBSD 8.2-STABLE amd64 gcc 4.2.1 [FreeBSD] 20070719
|
||
(freedom) gcc 4.6.1 20110422
|
||
g++ 4.6.1 20110422
|
||
gfortran 4.6.1 20110422
|
||
|
||
Debian6.0.3 2.6.32-5-686 #1 SMP i686 GNU/Linux
|
||
gcc (Debian 4.4.5-8) 4.4.5
|
||
GNU Fortran (Debian 4.4.5-8) 4.4.5
|
||
(cmake and autotools)
|
||
|
||
Debian6.0.3 2.6.32-5-amd64 #1 SMP x86_64 GNU/Linux
|
||
gcc (Debian 4.4.5-8) 4.4.5
|
||
GNU Fortran (Debian 4.4.5-8) 4.4.5
|
||
(cmake and autotools)
|
||
|
||
Fedora17 3.5.2-1.fc17.i6866 #1 SMP i686 i686 i386 GNU/Linux
|
||
gcc (GCC) 4.7.0 20120507 (Red Hat 4.7.0-5)
|
||
GNU Fortran (GCC) 4.7.0 20120507 (Red Hat 4.7.0-5)
|
||
(cmake and autotools)
|
||
|
||
Fedora17 3.5.2-1.fc17.x86_64 #1 SMP x86_64 x86_64 x86_64 GNU/Linux
|
||
gcc (GCC) 4.7.0 20120507 (Red Hat 4.7.0-5)
|
||
GNU Fortran (GCC) 4.7.0 20120507 (Red Hat 4.7.0-5)
|
||
(cmake and autotools)
|
||
|
||
SUSE 12.2 3.4.6-2.10-desktop #1 SMP PREEMPT i686 i686 i386 GNU/Linux
|
||
gcc (SUSE Linux) 4.7.1
|
||
GNU Fortran (SUSE Linux) 4.7.1
|
||
(cmake and autotools)
|
||
|
||
SUSE 12.2 3.4.6-2.10-desktop #1 SMP PREEMPT x86_64 x86_64 x86_64 GNU/Linux
|
||
gcc (SUSE Linux) 4.7.1
|
||
GNU Fortran (SUSE Linux) 4.7.1
|
||
(cmake and autotools)
|
||
|
||
Ubuntu 12.04 3.2.0-29-generic #46-Ubuntu SMP i686 GNU/Linux
|
||
gcc (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3
|
||
GNU Fortran (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3
|
||
(cmake and autotools)
|
||
|
||
Ubuntu 12.04 3.2.0-29-generic #46-Ubuntu SMP x86_64 GNU/Linux
|
||
gcc (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3
|
||
GNU Fortran (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3
|
||
(cmake and autotools)
|
||
(Use optimization level -O1)
|
||
|
||
Cray Linux Environment (CLE) PrgEnv-pgi/4.0.46
|
||
hopper.nersc.gov pgcc 12.5-0 64-bit target on x86-64 Linux -tp shanghai
|
||
pgf90 12.5-0 64-bit target on x86-64 Linux -tp shanghai
|
||
pgCC 12.5-0 64-bit target on x86-64 Linux -tp shanghai
|
||
|
||
|
||
Known Problems
|
||
==============
|
||
* The following h5stat test case fails in BG/P machines (and potentially other
|
||
machines that display extra output if an MPI task returns with a non-zero
|
||
code.)
|
||
Testing h5stat notexist.h5
|
||
|
||
The test actually runs and passes as expected. It is the extra output from
|
||
the MPI process that causes the test script to fail. This will be fixed
|
||
in the next release. (AKC - 2012/10/25 - HDFFV-8233)
|
||
|
||
* The C++ and FORTRAN bindings are not currently working on FreeBSD with the
|
||
native release 8.2 compilers (4.2.1), but are working with gcc 4.6 from the
|
||
ports (and probably gcc releases after that).
|
||
(QAK - 2012/10/19)
|
||
|
||
* The following h5dump test case fails in BG/P machines (and potentially other
|
||
machines that use a command script to launch executables):
|
||
|
||
h5dump --no-compact-subset -d "AHFINDERDIRECT::ah_centroid_t[0] it=0 tl=0"
|
||
tno-subset.h5
|
||
|
||
This is due to the embedded spaces in the dataset name being interpreted
|
||
by the command script launcher as meta-characters, thus passing three
|
||
arguments to h5dump's -d flag. The command passes if run by hand, just
|
||
not via the test script.
|
||
(AKC - 2012/05/03)
|
||
|
||
* On hopper, the build failed when RUNSERIAL and RUNPARALLEL are set
|
||
to aprun -np X, because the H5lib_settings.c file was not generated
|
||
properly. Not setting those environment variables works, because
|
||
configure was able to automatically detect that it's a Cray system
|
||
and used the proper launch commands when necessary.
|
||
(MSC - 2012/04/18)
|
||
|
||
* The data conversion test dt_arith.c fails in "long double" to integer
|
||
conversion on Ubuntu 11.10 (3.0.0.13 kernal) with GCC 4.6.1 if the library
|
||
is built with optimization -O3 or -O2. The older GCC (4.5) or newer kernal
|
||
(3.2.2 on Fedora) doesn't have the problem. Users should lower the
|
||
optimization level (-O1 or -O0) by defining CFLAGS in the command line of
|
||
"configure" like:
|
||
|
||
CFLAGS=-O1 ./configure
|
||
|
||
This will overwrite the library's default optimization level.
|
||
(SLU - 2012/02/07 - HDFFV-7829)
|
||
|
||
* The STDIO VFD does not work on some architectures, possibly due to 32/64
|
||
bit or large file issues. The basic STDIO VFD test is known to fail on
|
||
64-bit SunOS 5.10 on SPARC when built with -m64 and 32-bit OS X/Darwin
|
||
10.7.0. The STDIO VFD test has been disabled while we investigate and
|
||
a fix should appear in a future release.
|
||
(DER - 2011/10/14 - HDFFV-8235)
|
||
|
||
* h5diff can report inconsistent results when comparing datasets of enum type
|
||
that contain invalid values. This is due to how enum types are handled in
|
||
the library and will be addressed in a future release.
|
||
(DER - 2011/10/14 - HDFFV-7527)
|
||
|
||
* The links test can fail under the stdio VFD due to some issues with external
|
||
links. This will be investigated and fixed in a future release.
|
||
(DER - 2011/10/14 - HDFFV-7768)
|
||
|
||
* After the shared library support was fixed for some bugs, it was discovered
|
||
that "make prefix=XXX install" no longer works for shared libraries. It
|
||
still works correctly for static libraries. Therefore, if you want to
|
||
install the HDF5 shared libraries in a location such as /usr/local/hdf5,
|
||
you need to specify the location via the --prefix option during configure
|
||
time. E.g, ./configure --prefix=/usr/local/hdf5 ...
|
||
(AKC - 2011/05/07 - HDFFV-7583)
|
||
|
||
* The parallel test, t_shapesame, in testpar/, may run for a long time and may
|
||
be terminated by the alarm signal. If that happens, one can increase the
|
||
alarm seconds (default is 1200 seconds = 20 minutes) by setting the
|
||
environment variable, $HDF5_ALARM_SECONDS, to a larger value such as 3600
|
||
(60 minutes). Note that the t_shapesame test may fail in some systems
|
||
(see the "While working on the 1.8.6 release..." problem below). If
|
||
it does, it will waste more time if $HDF5_ALARM_SECONDS is set
|
||
to a larger value.
|
||
(AKC - 2011/05/07)
|
||
|
||
* The C++ and FORTRAN bindings are not currently working on FreeBSD.
|
||
(QAK - 2011/04/26)
|
||
|
||
* Shared Fortran libraries are not quite working on AIX. While they are
|
||
generated when --enable-shared is specified, the fortran and hl/fortran
|
||
tests fail. We are looking into the issue. HL and C++ shared libraries
|
||
should now be working as intended, however.
|
||
(MAM - 2011/04/20)
|
||
|
||
* The --with-mpe configure option does not work with Mpich2.
|
||
(AKC - 2011/03/10)
|
||
|
||
* While working on the 1.8.6 release of HDF5, a bug was discovered that can
|
||
occur when reading from a dataset in parallel shortly after it has been
|
||
written to collectively. The issue was exposed by a new test in the parallel
|
||
HDF5 test suite, but had existed before that. We believe the problem lies with
|
||
certain MPI implementations and/or file systems.
|
||
|
||
We have provided a pure MPI test program, as well as a standalone HDF5
|
||
program, that can be used to determine if this is an issue on your system.
|
||
They should be run across multiple nodes with a varying number of processes.
|
||
These programs can be found at:
|
||
http://www.hdfgroup.org/ftp/HDF5/examples/known_problems/
|
||
(NAF - 2011/01/19)
|
||
|
||
* The library's test dt_arith.c showed a compiler's rounding problem on
|
||
Cygwin when converting from unsigned long long to long double. The
|
||
library's own conversion works fine. We defined a macro for Cygwin to
|
||
skip this test until we can solve the problem.
|
||
(SLU - 2010/05/05 - HDFFV-1264)
|
||
|
||
* All the VFL drivers aren't backward compatible. In H5FDpublic.h, the
|
||
structure H5FD_class_t changed in 1.8. There is new parameter added to
|
||
get_eoa and set_eoa callback functions. A new callback function
|
||
get_type_map was added in. The public function H5FDrealloc was taken
|
||
out in 1.8. The problem only happens when users define their own driver
|
||
for 1.6 and try to plug in 1.8 library. Because there's only one user
|
||
complaining about it, we (Elena, Quincey, and I) decided to leave it as
|
||
it is (see bug report #1279). Quincey will make a plan for 1.10.
|
||
(SLU - 2010/02/02)
|
||
|
||
* The --enable-static-exec configure flag will only statically link libraries
|
||
if the static version of that library is present. If only the shared version
|
||
of a library exists (i.e., most system libraries on Solaris, AIX, and Mac,
|
||
for example, only have shared versions), the flag should still result in a
|
||
successful compilation, but note that the installed executables will not be
|
||
fully static. Thus, the only guarantee on these systems is that the
|
||
executable is statically linked with just the HDF5 library.
|
||
(MAM - 2009/11/04)
|
||
|
||
* Parallel tests failed with 16 processes with data inconsistency at testphdf5
|
||
/ dataset_readAll. Parallel tests also failed with 32 and 64 processes with
|
||
collective abort of all ranks at t_posix_compliant / allwrite_allread_blocks
|
||
with MPI IO.
|
||
(CMC - 2009/04/28)
|
||
|
||
* On an Intel 64 Linux cluster (RH 4, Linux 2.6.9) with Intel 10.0 compilers,
|
||
use -mp -O1 compilation flags to build the libraries. A higher level of
|
||
optimization causes failures in several HDF5 library tests.
|
||
|
||
* A dataset created or rewritten with a v1.6.3 library or after cannot be read
|
||
with the v1.6.2 library or before when the Fletcher32 EDC filter is enabled.
|
||
There was a bug in the calculation of the Fletcher32 checksum in the
|
||
library before v1.6.3; the checksum value was not consistent between big-
|
||
endian and little-endian systems. This bug was fixed in Release 1.6.3.
|
||
However, after fixing the bug, the checksum value was no longer the same as
|
||
before on little-endian system. Library releases after 1.6.4 can still read
|
||
datasets created or rewritten with an HDF5 library of v1.6.2 or before.
|
||
(SLU - 2005/06/30)
|
||
|
||
|
||
%%%%1.8.9%%%%
|
||
|
||
|
||
HDF5 version 1.8.9 released on 2012-05-09
|
||
================================================================================
|
||
|
||
INTRODUCTION
|
||
============
|
||
|
||
This document describes the differences between HDF5-1.8.8 and
|
||
HDF5 1.8.9. It also contains information on the platforms tested and
|
||
known problems in HDF5-1.8.9.
|
||
|
||
For more details, see the files HISTORY-1_0-1_8_0_rc3.txt
|
||
and HISTORY-1_8.txt in the release_docs/ directory of the HDF5 source.
|
||
|
||
Links to the HDF5 1.8.9 source code, documentation, and additional materials
|
||
can be found on the HDF5 web page at:
|
||
|
||
http://www.hdfgroup.org/products/hdf5/
|
||
|
||
The HDF5 1.8.9 release can be obtained from:
|
||
|
||
http://www.hdfgroup.org/HDF5/release/obtain5.html
|
||
|
||
User documentation for 1.8.9 can be accessed directly at this location:
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/
|
||
|
||
New features in the HDF5-1.8.x release series, including brief general
|
||
descriptions of some new and modified APIs, are described in the "What's New
|
||
in 1.8.0?" document:
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/ADGuide/WhatsNew180.html
|
||
|
||
All new and modified APIs are listed in detail in the "HDF5 Software Changes
|
||
from Release to Release" document, in the section "Release 1.8.9 (current
|
||
release) versus Release 1.8.8":
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/ADGuide/Changes.html
|
||
|
||
If you have any questions or comments, please send them to the HDF Help Desk:
|
||
|
||
help@hdfgroup.org
|
||
|
||
|
||
CONTENTS
|
||
========
|
||
|
||
- New Features
|
||
- Support for New Platforms, Languages, and Compilers
|
||
- Bug Fixes since HDF5-1.8.8
|
||
- Platforms Tested
|
||
- Supported Configuration Features Summary
|
||
- Known Problems
|
||
|
||
|
||
New Features
|
||
============
|
||
|
||
Configuration
|
||
-------------
|
||
- None
|
||
|
||
Library
|
||
-------
|
||
- Added new feature to merge committed datatypes when copying objects,
|
||
using new H5O_COPY_MERGE_COMMITTED_DTYPE_FLAG, modified by new API
|
||
routines: H5Padd_merge_committed_dtype_path(),
|
||
H5Pfree_merge_committed_dtype_paths(), H5Pset_mcdt_search_cb() and
|
||
H5Pget_mcdt_search_cb(). (QAK - 2012/03/30)
|
||
- Added new feature which allows working with files in memory in the
|
||
same ways files are worked with on disk. New API routines include
|
||
H5Pset_file_image, H5Pget_file_image, H5Pset_file_image_callbacks,
|
||
H5Pget_file_image_callbacks, H5Fget_file_image, and
|
||
H5LTopen_file_image. (QAK - 2012/04/17)
|
||
|
||
Parallel Library
|
||
----------------
|
||
- Corrected memory allocation error in MPI datatype construction code.
|
||
(QAK - 2012/04/23)
|
||
- Add two new routines to set/get the atomicity parameter in the
|
||
MPI library to perform atomic operations. Some file systems (for
|
||
example PVFS2) do not support atomic updates, so those routines
|
||
would not be supported. (MSC - 2012/03/27 - HDFFV-7961)
|
||
|
||
Tools
|
||
-----
|
||
- h5repack: Added ability to set the metadata block size of the output
|
||
file, with the '-M'/'--metadata_block_size' command line parameter.
|
||
(QAK - 2012/03/30)
|
||
- h5stat: Added ability to display a summary of the file space usage for a
|
||
file, with the '-S'/'--summary' command line parameter. (QAK - 2012/03/28)
|
||
- h5dump: Added capability for "-a" option to show attributes containing "/"
|
||
by using an escape character. For example, for a dataset "/dset"
|
||
containing attribute "speed(m/h)", use "h5dump -a "/dset/speed(\/h)"
|
||
to show the content of the attribute. (PC - 2012/03/12 - HDFFV-7523)
|
||
- h5dump: Added ability to apply command options across multiple files using a
|
||
wildcard in the filename. Unix example; "h5dump -H -d Dataset1 tarr*.h5".
|
||
Cross platform example; "h5dump -H -d Dataset1 tarray1.h5 tarray2.h5 tarray3.h5".
|
||
(ADB - 2012/03/12 - HDFFV-7876).
|
||
- h5dump: Added new option --no-compact-subset. This option will not
|
||
interpret the '[' character as starting the compact form of
|
||
subsetting. This is useful when the "h5dump error: unable to
|
||
open dataset "datset_name"" message is output because a dataset
|
||
name contains a '[' character. (ADB - 2012/03/05 - HDFFV-7689).
|
||
- h5repack: Improved performance for big chunked datasets (size > 128MB)
|
||
when used with the layout (-l) or compression (-f) options.
|
||
Before this change, repacking datasets with chunks with a large first
|
||
dimension would take extremely long. For example, repacking a dataset
|
||
with chunk dimensions of 1024x5x1 might take many hours to process
|
||
while changing a dataset with chunk dimensions set to 1x5x1024
|
||
might take under an hour. After this change, processing the dataset
|
||
with chunk dimensions of 1024x5x1 takes about 15 minutes, and processing
|
||
a dataset with chunk dimensions of 1x5x1024 takes about 14 minutes.
|
||
(JKM - 2012/03/01 - HDFFV-7862)
|
||
|
||
High-Level APIs
|
||
---------------
|
||
- New API: H5LTpath_valid (Fortran: h5ltpath_valid_f) checks
|
||
if a path is correct, determines if a link resolves to a valid
|
||
object, and checks that the link does not dangle. (MSB - 2012/03/15)
|
||
|
||
Fortran API
|
||
-----------
|
||
|
||
- Added for the C API the Fortran wrapper:
|
||
h5ocopy_f (MSB - 2012/03/22)
|
||
|
||
C++ API
|
||
-------
|
||
- None
|
||
|
||
|
||
Support for New Platforms, Languages, and Compilers
|
||
===================================================
|
||
- None
|
||
|
||
Bug Fixes since HDF5-1.8.8
|
||
==========================
|
||
|
||
Configuration
|
||
-------------
|
||
- Fixed Makefile issue in which "-Wl," was not properly specified
|
||
prior to -rpath when building parallel Fortran libraries with
|
||
an Intel compiler. (MAM - 2012/03/26)
|
||
- Makefiles generated by other packages using h5cc as the compiler
|
||
no longer error when 'make' is invoked more than once in order
|
||
to 'rebuild' after changes to source. (MAM - 2012/03/26)
|
||
- Added code to display the version information of XL Fortran and C++
|
||
in the summary of configure. (AKC - 2012/02/28 - HDFFV-7793)
|
||
- Updated all CMakeLists.txt files to indicate the minimum CMake version is
|
||
the current standard of 2.8.6 (ADB - 2011/12/05 - HDFFV-7854)
|
||
|
||
Library
|
||
-------
|
||
- Windows and STDIO correctness changes have been propagated from the SEC2
|
||
and old Windows drivers to the STDIO VFD. (DER - 2012/03/30 - HDFFV-7917)
|
||
- Fixed an error that would occur when copying an object with attribute
|
||
creation order tracked and indexed. (NAF - 2012/03/28 - HDFFV-7762)
|
||
- Fixed a bug in H5Ocopy(): When copying an opened object, call the
|
||
object's flush class action to ensure that cached data is flushed so
|
||
that H5Ocopy will get the correct data. (VC - 2012/03/27 - HDFFV-7853)
|
||
- The istore test will now skip the sparse 50x50x50 test when the VFD does
|
||
not support sparse files on that platform. The most important platforms
|
||
on which this will be skipped are Windows (NTFS sparse files are not
|
||
supported) and Mac OS-X (HFS sparse files are not supported). This
|
||
fixes CTest timeout issues on Windows. (DER - 2012/03/27 - HDFFV-7769)
|
||
- Windows and POSIX correctness changes have been propagated from the SEC2
|
||
VFD to the Core VFD. This mainly affects file operations on the
|
||
driver's backing store and fixes a problem on Windows where large files
|
||
could not be read. (DER - 2012/03/27 - HDFFV-7916 - HDFFV-7603)
|
||
- When an application tries to write or read many small data chunks and
|
||
runs out of memory, the library had a segmentation fault. The fix is to
|
||
return the error stack with proper information.
|
||
(SLU - 2012/03/23 - HDFFV-7785)
|
||
- H5Pset_data_transform had a segmentation fault in some cases like x*-100.
|
||
It works correctly now and handles other cases like 100-x or 2/x.
|
||
(SLU - 2012/03/15 - HDFFV-7922)
|
||
- Fixed rare corruption bugs that could occur when using the new object
|
||
header format. (NAF - 2012/03/15 - HDFFV-7879)
|
||
- Fixed an error that occurred when creating a contiguous dataset with a
|
||
zero-sized dataspace and space allocation time set to 'early'.
|
||
(QAK - 2012/03/12)
|
||
- Changed Windows thread creation to use _beginthread() instead of
|
||
CreateThread(). Threads created by the latter can be killed in
|
||
low-memory situations. (DER - 2012/02/10 - HDFFV-7780)
|
||
- Creating a dataset in a read-only file caused a segmentation fault when
|
||
the file is closed. It's fixed. The attempt to create a dataset will
|
||
fail with an error indicating the file is read-only.
|
||
(SLU - 2012/01/25 - HDFFV-7756)
|
||
- Fixed a segmentation fault that could occur when shrinking a dataset
|
||
with chunks larger than 1 MB. (NAF - 2011/11/30 - HDFFV-7833)
|
||
- Fixed a bug that could cause H5Oget_info to return the wrong address
|
||
after copying a committed (named) datatype. (NAF - 2011/11/14)
|
||
- The library allowed the conversion of strings between ASCII and UTF8
|
||
We have corrected it to report an error under this situation.
|
||
(SLU - 2011/11/8 - HDFFV-7582)
|
||
- Fixed a segmentation fault when the library tried to shrink the size
|
||
of a compound datatype through H5Tset_size immediately after the
|
||
datatype was created. (SLU - 2011/11/4 - HDFFV-7618)
|
||
|
||
Parallel Library
|
||
----------------
|
||
- None
|
||
|
||
Tools
|
||
-----
|
||
- h5unjam: Fixed a segmentation fault that occurred when h5unjam was used
|
||
with the -V (show version) option. (JKM - 2012/04/19 - HDFFV-8001)
|
||
- h5repack: Fixed a failure that occurred when repacking the chunk size
|
||
of a specified chunked dataset with unlimited max dims.
|
||
(JKM - 2012/04/11 - HDFFV-7993)
|
||
- h5diff: Fixed a failure when comparing groups. Before the fix, if an
|
||
object in a group was compared with an object in another group where
|
||
both had the same name but the object type was different, then h5diff
|
||
would fail. After the fix, h5diff detects such cases as non-comparable
|
||
and displays appropriate error messages.
|
||
(JKM - 2012/03/28 - HDFFV-7644)
|
||
- h5diff: If unique objects exist only in one file and if h5diff is set to
|
||
exclude the unique objects with the --exclude-path option, then h5diff
|
||
might miss excluding some objects. This was fixed to correctly exclude
|
||
objects. (JKM - 2012/03/20 - HDFFV-7837)
|
||
- h5diff: When two symbolic dangling links are compared with the
|
||
--follow-symlinks option, the result should be the same. This worked when
|
||
comparing two files, but didn't work when comparing two objects.
|
||
h5diff now works when comparing two objects.
|
||
(JKM - 2012/03/09 - HDFFV-7835)
|
||
- h5dump: Added the tools library error stack to properly catch error
|
||
information generated within the library. (ADB - 2012/03/12 - HDFFV-7958)
|
||
- h5dump: Changed the process where an open link used to fail. Now dangling
|
||
links no longer throw error messages. (ADB - 2012/03/12 - HDFFV-7839)
|
||
- h5dump: Refactored code to remove duplicated functions. Split XML
|
||
functions from DDL functions. Corrected indentation and formatting
|
||
errors. Also fixed subsetting counting overflow (HDFFV-5874). Verified
|
||
all tools call tools_init() in main. The USER_BLOCK data now correctly
|
||
displays within the SUPER_BLOCK info. NOTE: WHITESPACE IN THE OUTPUT
|
||
HAS CHANGED. (ADB - 2012/02/17 - HDFFV-7560)
|
||
- h5diff: Fixed to prevent from displaying error stack message when
|
||
comparing two dangling symbolic links with the follow-symlinks option.
|
||
(JKM - 2012/01/13 - HDFFV-7836)
|
||
- h5repack: Fixed a memory leak that occurred with the handling of
|
||
variable length strings in attributes.
|
||
(JKM - 2012/01/10 - HDFFV-7840)
|
||
- h5ls: Fixed a segmentation fault that occurred when accessing region
|
||
reference data in an attribute. (JKM - 2012/01/06 - HDFFV-7838)
|
||
|
||
F90 API
|
||
-------
|
||
- None
|
||
|
||
C++ API
|
||
------
|
||
- None
|
||
|
||
High-Level APIs:
|
||
------
|
||
- None
|
||
|
||
Fortran High-Level APIs:
|
||
------
|
||
- h5ltget_attribute_string_f: The h5ltget_attribute_string_f used to return
|
||
the C NULL character in the returned character buffer. The returned
|
||
charactor buffer now does not return the C NULL character; the buffer
|
||
is blank-padded if needed. (MSB - 2012/03/23)
|
||
|
||
|
||
Platforms Tested
|
||
================
|
||
The following platforms and compilers have been tested for this release.
|
||
|
||
AIX 5.3 xlc 10.1.0.5
|
||
(NASA G-ADA) xlC 10.1.0.5
|
||
xlf90 12.1.0.6
|
||
|
||
FreeBSD 8.2-STABLE i386 gcc 4.2.1 [FreeBSD] 20070719
|
||
(loyalty) g++ 4.2.1 [FreeBSD] 20070719
|
||
gcc 4.6.1 20110422
|
||
g++ 4.6.1 20110422
|
||
gfortran 4.6.1 20110422
|
||
|
||
FreeBSD 8.2-STABLE amd64 gcc 4.2.1 [FreeBSD] 20070719
|
||
(freedom) g++ 4.2.1 [FreeBSD] 20070719
|
||
gcc 4.6.1 20110422
|
||
g++ 4.6.1 20110422
|
||
gfortran 4.6.1 20110422
|
||
|
||
Linux 2.6.18-194.3.1.el5PAE GNU C (gcc), Fortran (gfortran), C++ (g++)
|
||
#1 SMP i686 i686 i386 compilers for 32-bit applications;
|
||
(jam) Version 4.1.2 20080704 (Red Hat 4.1.2-52)
|
||
Version 4.5.2
|
||
PGI C, Fortran, C++ Compilers for 32-bit
|
||
applications;
|
||
Version 11.8-0
|
||
Version 11.9-0
|
||
Intel(R) C, C++, Fortran Compiler for 32-bit
|
||
applications;
|
||
Version 12.0
|
||
Version 12.1
|
||
MPICH mpich2-1.3.1 compiled with
|
||
gcc 4.1.2 and gfortran 4.1.2
|
||
|
||
Linux 2.6.18-308.1.1.el5 GNU C (gcc), Fortran (gfortran), C++ (g++)
|
||
#1 SMP x86_64 GNU/Linux compilers for 32-bit applications;
|
||
(koala) Version 4.1.2 20080704 (Red Hat 4.1.2-52)
|
||
Version 4.5.2
|
||
PGI C, Fortran, C++ for 64-bit target on
|
||
x86-64;
|
||
Version 11.9-0 (64-bit)
|
||
Version 11.8-0 (32-bit)
|
||
Intel(R) C, C++, Fortran Compilers for
|
||
applications running on Intel(R) 64;
|
||
Version 12.0
|
||
Version 12.1
|
||
MPICH mpich2-1.3.1 compiled with
|
||
gcc 4.1.2 and gfortran 4.1.2
|
||
|
||
Linux 2.6.32-220.7.1.el6.ppc64 gcc (GCC) 4.4.6 20110731 (Red Hat 4.4.6-3)
|
||
#1 SMP ppc64 GNU/Linux g++ (GCC) 4.4.6 20110731
|
||
(ostrich) GNU Fortran (GCC) 4.4.6 20110731 (Red Hat 4.4.6-3)
|
||
|
||
Linux 2.6.18-108chaos Intel C, C++, Fortran Compilers Version 11.1
|
||
#1 SMP x86_64 GNU/Linux
|
||
(LLNL Aztec)
|
||
|
||
IBM Blue Gene/P XL C for Blue Gene/P, bgxlc V9.0
|
||
(LLNL uDawn) XL C++ for Blue Gene/P, bgxlC V9.0
|
||
XL Fortran for Blue Gene/P, bgxlf0 V11.1
|
||
|
||
SunOS 5.10 32- and 64-bit Sun C 5.9 Sun OS_sparc Patch 124867-16
|
||
(linew) Sun Fortran 95 8.3 Sun OS_sparc Patch 127000-13
|
||
Sun C++ 5.9 Sun OS_sparc Patch 124863-26
|
||
Sun C 5.11 SunOS_sparc
|
||
Sun Fortran 95 8.5 SunOS_sparc
|
||
Sun C++ 5.11 SunOS_sparc
|
||
|
||
SGI Altix UV Intel(R) C, Fortran Compilers
|
||
SGI ProPack 7 Linux Version 11.1 20100806
|
||
2.6.32.24-0.2.1.2230.2.PTF- SGI MPT 2.02
|
||
default #1 SMP
|
||
(NCSA ember)
|
||
|
||
Dell NVIDIA Cluster Intel(R) C, Fortran Compilers
|
||
Red Hat Enterprise Linux 6 Version 12.0.4 20110427
|
||
2.6.32-131.4.1.el6.x86_64 mvapich2 1.7rc1-intel-12.0.4
|
||
(NCSA forge)
|
||
|
||
Windows XP Visual Studio 2008 w/ Intel Fortran 10.1 (project files)
|
||
Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
|
||
Visual Studio 2010 w/ Intel Fortran 12 (cmake)
|
||
|
||
Windows XP x64 Visual Studio 2008 w/ Intel Fortran 10.1 (project files)
|
||
Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
|
||
Visual Studio 2010 w/ Intel Fortran 12 (cmake)
|
||
|
||
Windows 7 Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
|
||
Visual Studio 2010 w/ Intel Fortran 12 (cmake)
|
||
Cygwin(1.7.9 native gcc(4.5.3) compiler and gfortran)
|
||
|
||
Windows 7 x64 Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
|
||
Visual Studio 2010 w/ Intel Fortran 12 (cmake)
|
||
Cygwin(1.7.9 native gcc(4.5.3) compiler and gfortran)
|
||
|
||
Mac OS X Snow Leopard 10.6.8 i686-apple-darwin10-gcc-4.2.1 (GCC) 4.2.1 (gcc)
|
||
Darwin Kernel Version 10.8.0 i686-apple-darwin10-g++-4.2.1 (GCC) 4.2.1 (g++)
|
||
Intel 64-bit (Apple Inc. build 5666) (dot 3)
|
||
(fred) GNU Fortan (GCC) 4.6.1 (gfortran)
|
||
Intel C (icc), Fortran (ifort), C++ (icpc)
|
||
12.1.0.038 Build 20110811
|
||
|
||
Mac OS X Snow Leopard 10.6.8 i686-apple-darwin10-gcc-4.2.1 (GCC) 4.2.1 (gcc)
|
||
Darwin Kernel Version 10.8.0 i686-apple-darwin10-g++-4.2.1 (GCC) 4.2.1 (g++)
|
||
Intel 32-bit (Apple Inc. build 5666) (dot 3)
|
||
(tejeda) GNU Fortran (GCC) 4.6.1 (gfortran)
|
||
Intel C (icc), Fortran (ifort), C++ (icpc)
|
||
12.1.0.038 Build 20110811
|
||
|
||
Mac OS X Lion 10.7.3 GCC 4.2.1 gcc
|
||
32- and 64-bit GNU Fortran (GCC) 4.6.1 gfortran
|
||
(duck) GCC 4.2.1. g++
|
||
|
||
Debian6.0.3 2.6.32-5-686 #1 SMP i686 GNU/Linux
|
||
gcc (Debian 4.4.5-8) 4.4.5
|
||
GNU Fortran (Debian 4.4.5-8) 4.4.5
|
||
|
||
Debian6.0.3 2.6.32-5-amd64 #1 SMP x86_64 GNU/Linux
|
||
gcc (Debian 4.4.5-8) 4.4.5
|
||
GNU Fortran (Debian 4.4.5-8) 4.4.5
|
||
|
||
Fedora16 3.2.9-2.fc16.i6866 #1 SMP i686 i686 i386 GNU/Linux
|
||
gcc (GCC) 4.6.2 20111027 (Red Hat 4.6.2-1)
|
||
GNU Fortran (GCC) 4.6.2 20111027 (Red Hat 4.6.2-1)
|
||
|
||
Fedora16 3.2.9-2.fc16.x86_64 #1 SMP x86_64 x86_64 x86_64 GNU/Linux
|
||
gcc (GCC) 4.6.2 20111027 (Red Hat 4.6.2-1)
|
||
GNU Fortran (GCC) 4.6.2 20111027 (Red Hat 4.6.2-1)
|
||
|
||
SUSE 12.1 3.1.9-1.4-desktop #1 SMP PREEMPT i686 i686 i386 GNU/Linux
|
||
gcc (SUSE Linux) 4.6.2
|
||
GNU Fortran (SUSE Linux) 4.6.2
|
||
|
||
SUSE 12.1 3.1.9-1.4-desktop #1 SMP PREEMPT x86_64 x86_64 x86_64 GNU/Linux
|
||
gcc (SUSE Linux) 4.6.2
|
||
GNU Fortran (SUSE Linux) 4.6.2
|
||
|
||
Ubuntu 11.10 3.0.0-16-generic #29-Ubuntu SMP i686 GNU/Linux
|
||
gcc (Ubuntu/Linaro 4.6.1-9ubuntu3) 4.6.1
|
||
GNU Fortran (Ubuntu/Linaro 4.6.4-9ubuntu3) 4.6.1
|
||
|
||
Ubuntu 11.10 3.0.0-16-generic #29-Ubuntu SMP x86_64 GNU/Linux
|
||
gcc (Ubuntu/Linaro 4.6.1-9ubuntu3) 4.6.1
|
||
GNU Fortran (Ubuntu/Linaro 4.6.1-9ubuntu3) 4.6.1
|
||
|
||
Cray Linux Environment (CLE) PrgEnv-pgi 2.2.74
|
||
hopper.nersc.gov pgcc 11.9-0 64-bit target on x86-64 Linux -tp k8e
|
||
pgf90 11.9-0 64-bit target on x86-64 Linux -tp k8e
|
||
pgCC 11.9-0 64-bit target on x86-64 Linux -tp k8e
|
||
|
||
|
||
Tested Configuration Features Summary
|
||
=====================================
|
||
|
||
In the tables below
|
||
y = tested
|
||
n = not tested in this release
|
||
C = Cluster
|
||
W = Workstation
|
||
x = not working in this release
|
||
dna = does not apply
|
||
( ) = footnote appears below second table
|
||
<blank> = testing incomplete on this feature or platform
|
||
|
||
Platform C F90 F90 C++ zlib SZIP
|
||
parallel parallel
|
||
Solaris2.10 32-bit n y n y y y
|
||
Solaris2.10 64-bit n y n y y y
|
||
Windows XP n y(4) n y y y
|
||
Windows XP x64 n y(4) n y y y
|
||
Windows Vista n y(4) n y y y
|
||
Windows Vista x64 n y(4) n y y y
|
||
Mac OS X Snow Leopard 10.6.8 32-bit n y n y y n
|
||
Mac OS X Snow Leopard 10.6.8 64-bit n y n y y y
|
||
Mac OS X Lion 10.7.3 32-bit n y n y y n
|
||
Mac OS X Lion 10.7.3 64-bit n y n y y y
|
||
AIX 5.3 32- and 64-bit y y y y y y
|
||
FreeBSD 8.2-STABLE 32&64 bit n x n x y y
|
||
CentOS 5.5 Linux 2.6.18-194 i686 GNU (1)W y y(2) y y y y
|
||
CentOS 5.5 Linux 2.6.18-194 i686 Intel W n y n y y y
|
||
CentOS 5.5 Linux 2.6.18-194 i686 PGI W n y n y y y
|
||
CentOS 5.5 Linux 2.6.18 x86_64 GNU (1) W y y(3) y y y y
|
||
CentOS 5.5 Linux 2.6.18 x86_64 Intel W n y n y y y
|
||
CentOS 5.5 Linux 2.6.18 x86_64 PGI W n y n y y y
|
||
Linux 2.6.32-220.7.1.el6.ppc64 n y n y y y
|
||
SGI ProPack 7 Linux 2.6.32.24 y y y y y y
|
||
Red Hat Enterprise Linux 6 y y y y y y
|
||
CLE hopper.nersc.gov y y(3) y y y n
|
||
|
||
|
||
Platform Shared Shared Shared Thread-
|
||
C libs F90 libs C++ libs safe
|
||
Solaris2.10 32-bit y y y y
|
||
Solaris2.10 64-bit n n n n
|
||
Windows XP y y(4) y n
|
||
Windows XP x64 y y(4) y n
|
||
Windows Vista y y(4) y y
|
||
Windows Vista x64 y y(4) y y
|
||
Mac OS X Snow Leopard 10.6.8 32-bit y n y n
|
||
Mac OS X Snow Leopard 10.6.8 64-bit y n y n
|
||
Mac OS X Lion 10.7.3 32-bit y n y y
|
||
Mac OS X Lion 10.7.3 64-bit y n y y
|
||
AIX 5.3 32- and 64-bit n n n y
|
||
FreeBSD 8.2-STABLE 32&64 bit y x x y
|
||
CentOS 5.5 Linux 2.6.18-194 i686 GNU (1)W y y(2) y y
|
||
CentOS 5.5 Linux 2.6.18-194 i686 Intel W y y y n
|
||
CentOS 5.5 Linux 2.6.18-194 i686 PGI W y y y n
|
||
CentOS 5.5 Linux 2.6.18 x86_64 GNU (1) W y y y y
|
||
CentOS 5.5 Linux 2.6.18 x86_64 Intel W y y y n
|
||
CentOS 5.5 Linux 2.6.18 x86_64 PGI W y y y n
|
||
Linux 2.6.32-220.7.1.el6.ppc64 y y y n
|
||
SGI ProPack 7 Linux 2.6.32.24 y y y n
|
||
Red Hat Enterprise Linux 6 y y y n
|
||
CLE hopper.nersc.gov n n n n
|
||
|
||
(1) Fortran compiled with gfortran.
|
||
(2) With PGI and Absoft compilers.
|
||
(3) With PGI compiler for Fortran.
|
||
(4) Using Visual Studio 2008 w/ Intel Fortran 10.1 (Cygwin shared libraries are not supported)
|
||
(5) C and C++ shared libraries will not be built when Fortran is enabled.
|
||
Compiler versions for each platform are listed in the preceding
|
||
"Platforms Tested" table.
|
||
|
||
|
||
Known Problems
|
||
==============
|
||
* The h5repacktst test fails on AIX 32-bit because the test uses more
|
||
memory than the default amount. The failure message typically looks like:
|
||
|
||
"time: 0551-010 The process was stopped abnormally. Try again."
|
||
|
||
This is an issue with the test only and does not represent a problem with
|
||
the library. To allow the test to pass, request more memory when testing
|
||
via appropriate command such as:
|
||
|
||
$ env LDR_CNRTL=MAXDATA=0x20000000@DSA make check
|
||
|
||
(AKC - 2012/05/09 - HDFFV-8016)
|
||
|
||
* The file_image test will fail in the "initial file image and callbacks in
|
||
the core VFD" sub-test if the source directory is read-only as the test
|
||
fails to create its test files in the build directory. This will be
|
||
resolved in a future release.
|
||
(AKC - 2012/05/05 - HDFFV-8009)
|
||
|
||
* The dt_arith test reports several errors involving "long double" on
|
||
Mac OS X 10.7 Lion when any level of optimization is enabled. The test does
|
||
not fail in debug mode. This will be addressed in a future release.
|
||
(SLU - 2012/05/08)
|
||
|
||
* The following h5dump test case fails in BG/P machines (and potentially other
|
||
machines that use a command script to launch executables):
|
||
|
||
h5dump --no-compact-subset -d "AHFINDERDIRECT::ah_centroid_t[0] it=0 tl=0"
|
||
tno-subset.h5
|
||
|
||
This is due to the embedded spaces in the dataset name being interpreted
|
||
by the command script launcher as meta-characters, thus passing three
|
||
arguments to h5dump's -d flag. The command passes if run by hand, just
|
||
not via the test script.
|
||
(AKC - 2012/05/03)
|
||
|
||
* The ph5diff (parallel h5diff) tool can intermittently hang in parallel mode
|
||
when comparing two HDF5 files that contain objects with the same names but
|
||
with different object types.
|
||
(JKM - 2012/04/27)
|
||
|
||
* On hopper, the build failed when RUNSERIAL and RUNPARALLEL are set
|
||
to aprun -np X, because the H5lib_settings.c file was not generated
|
||
properly. Not setting those environment variables works, because
|
||
configure was able to automatically detect that it's a Cray system
|
||
and used the proper launch commands when necessary.
|
||
(MSC - 2012/04/18)
|
||
|
||
* The data conversion test dt_arith.c fails in "long double" to integer
|
||
conversion on Ubuntu 11.10 (3.0.0.13 kernal) with GCC 4.6.1 if the library
|
||
is built with optimization -O3 or -O2. The older GCC (4.5) or newer kernal
|
||
(3.2.2 on Fedora) doesn't have the problem. Users should lower the
|
||
optimization level (-O1 or -O0) by defining CFLAGS in the command line of
|
||
"configure" like:
|
||
|
||
CFLAGS=-O1 ./configure
|
||
|
||
This will overwrite the library's default optimization level.
|
||
(SLU - 2012/02/07 - HDFFV-7829)
|
||
|
||
* The STDIO VFD does not work on some architectures, possibly due to 32/64
|
||
bit or large file issues. The basic STDIO VFD test is known to fail on
|
||
64-bit SunOS 5.10 on SPARC when built with -m64 and 32-bit OS X/Darwin
|
||
10.7.0. The STDIO VFD test has been disabled while we investigate and
|
||
a fix should appear in a future release.
|
||
(DER - 2011/10/14)
|
||
|
||
* h5diff can report inconsistent results when comparing datasets of enum type
|
||
that contain invalid values. This is due to how enum types are handled in
|
||
the library and will be addressed in a future release.
|
||
(DER - 2011/10/14 - HDFFV-7527)
|
||
|
||
* The links test can fail under the stdio VFD due to some issues with external
|
||
links. This will be investigated and fixed in a future release.
|
||
(DER - 2011/10/14 - HDFFV-7768)
|
||
|
||
* After the shared library support was fixed for some bugs, it was discovered
|
||
that "make prefix=XXX install" no longer works for shared libraries. It
|
||
still works correctly for static libraries. Therefore, if you want to
|
||
install the HDF5 shared libraries in a location such as /usr/local/hdf5,
|
||
you need to specify the location via the --prefix option during configure
|
||
time. E.g, ./configure --prefix=/usr/local/hdf5 ...
|
||
(AKC - 2011/05/07 - HDFFV-7583)
|
||
|
||
* The parallel test, t_shapesame, in testpar/, may run for a long time and may
|
||
be terminated by the alarm signal. If that happens, one can increase the
|
||
alarm seconds (default is 1200 seconds = 20 minutes) by setting the
|
||
environment variable, $HDF5_ALARM_SECONDS, to a larger value such as 3600
|
||
(60 minutes). Note that the t_shapesame test may fail in some systems
|
||
(see the "While working on the 1.8.6 release..." problem below). If
|
||
it does, it will waste more time if $HDF5_ALARM_SECONDS is set
|
||
to a larger value.
|
||
(AKC - 2011/05/07)
|
||
|
||
* The C++ and FORTRAN bindings are not currently working on FreeBSD.
|
||
(QAK - 2011/04/26)
|
||
|
||
* Shared Fortran libraries are not quite working on AIX. While they are
|
||
generated when --enable-shared is specified, the fortran and hl/fortran
|
||
tests fail. We are looking into the issue. HL and C++ shared libraries
|
||
should now be working as intended, however.
|
||
(MAM - 2011/04/20)
|
||
|
||
* The --with-mpe configure option does not work with Mpich2.
|
||
(AKC - 2011/03/10)
|
||
|
||
* While working on the 1.8.6 release of HDF5, a bug was discovered that can
|
||
occur when reading from a dataset in parallel shortly after it has been
|
||
written to collectively. The issue was exposed by a new test in the parallel
|
||
HDF5 test suite, but had existed before that. We believe the problem lies with
|
||
certain MPI implementations and/or file systems.
|
||
|
||
We have provided a pure MPI test program, as well as a standalone HDF5
|
||
program, that can be used to determine if this is an issue on your system.
|
||
They should be run across multiple nodes with a varying number of processes.
|
||
These programs can be found at:
|
||
http://www.hdfgroup.org/ftp/HDF5/examples/known_problems/
|
||
(NAF - 2011/01/19)
|
||
|
||
* The library's test dt_arith.c showed a compiler's rounding problem on
|
||
Cygwin when converting from unsigned long long to long double. The
|
||
library's own conversion works fine. We defined a macro for Cygwin to
|
||
skip this test until we can solve the problem.
|
||
(SLU - 2010/05/05 - HDFFV-1264)
|
||
|
||
* All the VFL drivers aren't backward compatible. In H5FDpublic.h, the
|
||
structure H5FD_class_t changed in 1.8. There is new parameter added to
|
||
get_eoa and set_eoa callback functions. A new callback function
|
||
get_type_map was added in. The public function H5FDrealloc was taken
|
||
out in 1.8. The problem only happens when users define their own driver
|
||
for 1.6 and try to plug in 1.8 library. Because there's only one user
|
||
complaining about it, we (Elena, Quincey, and I) decided to leave it as
|
||
it is (see bug report #1279). Quincey will make a plan for 1.10.
|
||
(SLU - 2010/02/02)
|
||
|
||
* MinGW has a missing libstdc++.dll.a library file and will not successfully link
|
||
C++ applications/tests. Do not use the enable-cxx configure option. Read all of
|
||
the INSTALL_MINGW.txt file for all restrictions.
|
||
(ADB - 2009/11/11)
|
||
|
||
* The --enable-static-exec configure flag will only statically link libraries
|
||
if the static version of that library is present. If only the shared version
|
||
of a library exists (i.e., most system libraries on Solaris, AIX, and Mac,
|
||
for example, only have shared versions), the flag should still result in a
|
||
successful compilation, but note that the installed executables will not be
|
||
fully static. Thus, the only guarantee on these systems is that the
|
||
executable is statically linked with just the HDF5 library.
|
||
(MAM - 2009/11/04)
|
||
|
||
* The PathScale MPI implementation, accessing a Panasas file system, would
|
||
cause H5Fcreate() with H5F_ACC_EXCL to fail even when the file does not
|
||
exist. This is due to the MPI_File_open() call failing if the mode has
|
||
the MPI_MODE_EXCL bit set.
|
||
(AKC - 2009/08/11 - HDFFV-988)
|
||
|
||
* Parallel tests failed with 16 processes with data inconsistency at testphdf5
|
||
/ dataset_readAll. Parallel tests also failed with 32 and 64 processes with
|
||
collective abort of all ranks at t_posix_compliant / allwrite_allread_blocks
|
||
with MPI IO.
|
||
(CMC - 2009/04/28)
|
||
|
||
* For Red Storm, a Cray XT3 system, the tools/h5ls/testh5ls.sh and
|
||
tools/h5copy/testh5copy.sh will fail some of its sub-tests. These sub-tests
|
||
are expected to fail and should exit with a non-zero code but the yod
|
||
command does not propagate the exit code of the executables. Yod always
|
||
returns 0 if it can launch the executable. The test suite shell expects
|
||
a non-zero for this particular test, therefore it concludes the test has
|
||
failed when it receives 0 from yod. Skip all the "failing" test for now
|
||
by changing them as following.
|
||
|
||
======== Original tools/h5ls/testh5ls.sh =========
|
||
TOOLTEST tgroup-1.ls 1 -w80 -r -g tgroup.h5
|
||
======== Change to ===============================
|
||
echo SKIP TOOLTEST tgroup-1.ls 1 -w80 -r -g tgroup.h5
|
||
==================================================
|
||
|
||
======== Original tools/h5copy/testh5copy.sh =========
|
||
TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d grp_rename
|
||
TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d /grp_rename/grp_dsets
|
||
TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_dsets -d /E/F/grp_dsets
|
||
TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_nested -d /G/H/grp_nested
|
||
H5LSTEST $FILEOUT
|
||
======== Change to ===============================
|
||
echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d grp_rename
|
||
echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d /grp_rename/grp_dsets
|
||
echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_dsets -d /E/F/grp_dsets
|
||
echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_nested -d /G/H/grp_nested
|
||
echo SKIP H5LSTEST $FILEOUT
|
||
==================================================
|
||
(AKC - 2008/11/10)
|
||
|
||
* For Red Storm, a Cray XT3 system, the yod command sometimes gives the
|
||
message, "yod allocation delayed for node recovery". This interferes with
|
||
test suites that do not expect to see this message. See the section of "Red
|
||
Storm" in file INSTALL_parallel for a way to deal with this problem.
|
||
(AKC - 2008/05/28)
|
||
|
||
* On an Intel 64 Linux cluster (RH 4, Linux 2.6.9) with Intel 10.0 compilers,
|
||
use -mp -O1 compilation flags to build the libraries. A higher level of
|
||
optimization causes failures in several HDF5 library tests.
|
||
|
||
* On mpich 1.2.5 and 1.2.6, if more than two processes contribute no IO and
|
||
the application asks to do collective IO, we have found that when using 4
|
||
processors, a simple collective write will sometimes be hung. This can be
|
||
verified with t_mpi test under testpar.
|
||
|
||
* A dataset created or rewritten with a v1.6.3 library or after cannot be read
|
||
with the v1.6.2 library or before when the Fletcher32 EDC filter is enabled.
|
||
There was a bug in the calculation of the Fletcher32 checksum in the
|
||
library before v1.6.3; the checksum value was not consistent between big-
|
||
endian and little-endian systems. This bug was fixed in Release 1.6.3.
|
||
However, after fixing the bug, the checksum value was no longer the same as
|
||
before on little-endian system. Library releases after 1.6.4 can still read
|
||
datasets created or rewritten with an HDF5 library of v1.6.2 or before.
|
||
(SLU - 2005/06/30)
|
||
|
||
* On IBM AIX systems, parallel HDF5 mode will fail some tests with error
|
||
messages like "INFO: 0031-XXX ...". This is from the command `poe'.
|
||
Set the environment variable MP_INFOLEVEL to 0 to minimize the messages
|
||
and run the tests again.
|
||
|
||
The tests may fail with messages like "The socket name is already in use",
|
||
but HDF5 does not use sockets. This failure is due to problems with the
|
||
poe command trying to set up the debug socket. To resolve this problem,
|
||
check to see whether there are many old /tmp/s.pedb.* files staying around.
|
||
These are sockets used by the poe command and left behind due to failed
|
||
commands. First, ask your system administrator to clean them out.
|
||
Lastly, request IBM to provide a means to run poe without the debug socket.
|
||
(AKC - 2004/12/08)
|
||
|
||
|
||
%%%%1.8.8%%%%
|
||
|
||
|
||
HDF5 version 1.8.8 released on 2011-11-15
|
||
================================================================================
|
||
|
||
INTRODUCTION
|
||
============
|
||
|
||
This document describes the differences between HDF5-1.8.7 and
|
||
HDF5 1.8.8, and contains information on the platforms tested and
|
||
known problems in HDF5-1.8.8.
|
||
For more details, see the files HISTORY-1_0-1_8_0_rc3.txt
|
||
and HISTORY-1_8.txt in the release_docs/ directory of the HDF5 source.
|
||
|
||
Links to the HDF5 1.8.8 source code, documentation, and additional materials
|
||
can be found on the HDF5 web page at:
|
||
|
||
http://www.hdfgroup.org/products/hdf5/
|
||
|
||
The HDF5 1.8.8 release can be obtained from:
|
||
|
||
http://www.hdfgroup.org/HDF5/release/obtain5.html
|
||
|
||
User documentation for 1.8.8 can be accessed directly at this location:
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/
|
||
|
||
New features in the HDF5-1.8.x release series, including brief general
|
||
descriptions of some new and modified APIs, are described in the "What's New
|
||
in 1.8.0?" document:
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/ADGuide/WhatsNew180.html
|
||
|
||
All new and modified APIs are listed in detail in the "HDF5 Software Changes
|
||
from Release to Release" document, in the section "Release 1.8.8 (current
|
||
release) versus Release 1.8.7":
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/ADGuide/Changes.html
|
||
|
||
If you have any questions or comments, please send them to the HDF Help Desk:
|
||
|
||
help@hdfgroup.org
|
||
|
||
|
||
CONTENTS
|
||
========
|
||
|
||
- New Features
|
||
- Support for New Platforms, Languages, and Compilers
|
||
- Bug Fixes since HDF5-1.8.7
|
||
- Platforms Tested
|
||
- Supported Configuration Features Summary
|
||
- Known Problems
|
||
|
||
|
||
New Features
|
||
============
|
||
|
||
Configuration
|
||
-------------
|
||
- Added the --enable-fortran2003 flag to enable Fortran2003 support
|
||
in the HDF5 Fortran library. The flag should be used along with the
|
||
--enable-fortran flag and takes affect only when the Fortran compiler
|
||
is Fortran2003 compliant. (EIP - 2011/11/14)
|
||
- Added checks for clock_gettime and mach/mach_time.h to both configure and
|
||
CMake. This will support the move from gettimeofday to clock_gettime's
|
||
monotonic timer in the profiling code in a future release.
|
||
(DER - 2011/10/12)
|
||
|
||
Library
|
||
-------
|
||
- The Windows VFD code has been removed with the exception of the functions
|
||
which set it (H5Pset_fapl_windows, for example). Setting the Windows
|
||
VFD now really sets the SEC2 VFD. The WINDOWS_MAX_BUF and
|
||
WINDOWS_USE_STDIO configuration options and #defines have also been
|
||
removed. NOTE: Since the Windows VFD was a clone of the SEC2 VFD, this
|
||
change should be transparent to users.
|
||
(DER - 2011/10/12 - HDFFV-7740, HDFFV-7744)
|
||
- H5Tcreate now supports the string type (fixed-length and variable-
|
||
length). (SLU - 2011/05/20)
|
||
|
||
Parallel Library
|
||
----------------
|
||
- Added new H5Pget_mpio_actual_chunk_opt_mode and
|
||
H5Pget_mpio_actual_io_mode API routines for querying whether/how
|
||
a collective I/O operation completed. (QAK - 2011/10/12)
|
||
|
||
Tools
|
||
-----
|
||
- None
|
||
|
||
High-Level APIs
|
||
---------------
|
||
- Added the following Fortran wrappers for the Dimension Scale APIs:
|
||
h5dsset_scale_f
|
||
h5dsattach_scale_f
|
||
h5dsdetach_scale_f
|
||
h5dsis_attached_f
|
||
h5dsis_scale_f
|
||
h5dsset_label_f
|
||
h5dsget_label_f
|
||
h5dsget_scale_name_f
|
||
h5dsget_num_scales_f
|
||
(EIP for SB - 2011/10/13 - HDFFV-3797)
|
||
|
||
Fortran API
|
||
-----------
|
||
- The HDF5 Fortran library was enhanced to support the Fortran 2003 standard.
|
||
The following features are available when the HDF5 library is configured
|
||
using the --enable-fortran and --enable-fortran2003 configure flags AND
|
||
if the Fortran compiler is Fortran 2003 compliant:
|
||
|
||
- Subroutines overloaded with the C_PTR derived type:
|
||
h5pget_f
|
||
h5pget_fill_value_f
|
||
h5pinsert_f
|
||
h5pregister_f
|
||
h5pset_f
|
||
h5pset_fill_value_f
|
||
h5rcreate_f
|
||
h5rderefrence_f
|
||
h5rget_name_f
|
||
h5rget_obj_type_f
|
||
- Subroutines overloaded with the C_PTR derived type
|
||
and simplified signatures:
|
||
h5aread_f
|
||
h5awrite_f
|
||
h5dread_f
|
||
h5dwrite_f
|
||
- New subroutines
|
||
h5dvlen_reclaim_f
|
||
h5literate_by_name_f
|
||
h5literate_f
|
||
h5ovisit_f
|
||
h5tconvert_f
|
||
h5pset_nbit_f
|
||
h5pset_scaleoffset_f
|
||
- Subroutines with additional optional parameters:
|
||
h5pcreate_class_f
|
||
(EIP - 2011/10/14)
|
||
|
||
C++ API
|
||
-------
|
||
- None
|
||
|
||
|
||
Support for New Platforms, Languages, and Compilers
|
||
===================================================
|
||
- None
|
||
|
||
Bug Fixes since HDF5-1.8.7
|
||
==========================
|
||
|
||
Configuration
|
||
-------------
|
||
- Changed the size of H5_SIZEOF_OFF_T to 4 bytes (was 8) in the VMS
|
||
h5pubconf.h based on the output of a test program. (DER - 2011/10/12)
|
||
- The Windows and VMS versions of H5pubconf.h were brought into sync with
|
||
the linux/posix version. (DER - 2011/10/12)
|
||
- Fixed a bug in the bin/trace Perl script where API functions
|
||
that take a variable number of arguments were not processed for
|
||
trace statement fixup. (DER - 2011/08/25)
|
||
- The --enable-h5dump-packed-bits configure option has been removed.
|
||
The h5dump code that this option conditionally enabled is now always
|
||
compiled into h5dump. Please refer to the h5dump reference manual for
|
||
usage of the packed bits feature. (MAM - 2011/06/23 - HDFFV-7592)
|
||
- Configure now uses the same flags and symbols in its tests that are
|
||
used to build the library. (DER - 2011/05/24)
|
||
|
||
Library
|
||
-------
|
||
- Corrected the error when copying attributes between files which are using
|
||
different versions of the file format. (QAK - 2011/10/20 - HDFFV-7718)
|
||
- Corrected the error when loading local heaps from the file, which could
|
||
cause the size of the local heap's data block to increase dramatically.
|
||
(QAK - 2011/10/14 - HDFFV-7767)
|
||
- An application does not need to do H5O_move_msgs_forward() when writing
|
||
attributes. Tests were checked into the performance suite.
|
||
(VC - 2011/10/13 - HDFFV-7640)
|
||
- Fixed a bug that occurred when using H5Ocopy on a committed datatype
|
||
containing an attribute using that committed datatype.
|
||
(NAF - 2011/10/13 - HDFFV-5854)
|
||
- Added generic VFD I/O types to the SEC2 and log VFDs to ensure correct
|
||
I/O sizes (and remove compiler warnings) between Windows and true POSIX
|
||
systems. (DER - 2011/10/12)
|
||
- Corrected some Windows behavior in the SEC2 and log VFDs. This mainly
|
||
involved datatype correctness fixes, Windows API call error checks,
|
||
and adding the volume serial number to the VFD cmp functions.
|
||
(DER - 2011/10/12)
|
||
- Converted post-checks for the appropriate POSIX I/O sizes to pre-checks
|
||
in order to avoid platform-specific or undefined behavior.
|
||
(DER - 2011/10/12)
|
||
- #ifdef _WIN32 instances have been changed to #ifdef H5_HAVE_WIN32_API.
|
||
H5_HAVE_VISUAL_STUDIO checks have been added where necessary. This is in
|
||
CMake only as configure never sets _WIN32. (ADB - 2011/09/12)
|
||
- CLANG compiler with the options -fcatch-undefined-behavior and -ftrapv
|
||
discovered 3 problems in tests and tools' library:
|
||
1. In dsets.c, left shifting an unsigned int for 32 bits or more
|
||
caused undefined behavior.
|
||
2. In dt_arith.c, the INIT_INTEGER macro definition has an overflow
|
||
when the value is a negative minimal and is being subtracted from one.
|
||
3. In tools/lib/h5tools_str.c, right shifting an int value for 32 bits
|
||
or more caused undefined behavior.
|
||
All the problems have been corrected. (SLU - 2011/09/02 - HDFFV-7674)
|
||
- H5Epush2() now has the correct trace functionality (this is related to the
|
||
bin/trace Perl script bug noted in the configure section).
|
||
(DER - 2011/08/25)
|
||
- Corrected mismatched function name typo of h5pget_dxpl_mpio_c and
|
||
h5pfill_value_defined_c. (AKC - 2011/08/22 - HDFFV-7641)
|
||
- Corrected an internal error in the library where objects that use committed
|
||
(named) datatypes and were accessed from two different file IDs could confuse
|
||
the two and cause erroneous failures. (QAK - 2011/07/18 - HDFFV-7638)
|
||
- In v1.6 of the library, there was an EOA for the whole MULTI file saved in the
|
||
super block. We took it out in v1.8 of the library because it's meaningless
|
||
for the MULTI file. v1.8 of the library saves the EOA for the metadata file
|
||
instead, but this caused a backward compatibility problem.
|
||
A v1.8 library couldn't open the file created with the v1.6 library. We
|
||
fixed the problem by checking the EOA value to detect the file
|
||
created with v1.6 library. (SLU - 2011/06/22)
|
||
- When a dataset had filters and reading data failed, the error message
|
||
didn't say which filter wasn't registered. It's fixed now. (SLU - 2011/06/03)
|
||
|
||
Parallel Library
|
||
----------------
|
||
- The Special Collective IO (IO when some processes do not contribute to the
|
||
IO) and the Complex Derived Datatype MPI functionalities are no longer
|
||
conditionally enabled in the library by configure. They are always
|
||
enabled in order to take advantage of performance boosts from these
|
||
behaviors. Older MPI implementations that do not allow for these
|
||
functionalities can no longer by used by HDF5.
|
||
(MAM - 2011/07/08 - HDFFV-7639).
|
||
|
||
Tools
|
||
-----
|
||
- h5diff: fixed segfault over non-comparable attribute with different
|
||
dimention or rank, along with '-c' option to display details.
|
||
(JKM - 2011/10/24 - HDFFV-7770)
|
||
- Fixed h5diff to display all the comparable objects and attributes
|
||
regardless of detecting non-comparables. (JKM - 2011/09/16 - HDFFV-7693)
|
||
- Fixed h5repack to update the values of references(object and region) of
|
||
attributes in h5repack for 1) references, 2) arrays of references,
|
||
3) variable-length references, and 4) compound references.
|
||
(PC - 2011/09/14 - HDFFV-5932)
|
||
- h5diff: fixed a segfault over a dataset with container types
|
||
array and variable-length (vlen) along with multiple nested compound types.
|
||
Example: compound->array->compound, compound->vlen->compound.
|
||
(JKM - 2011/09/01 - HDFFV-7712)
|
||
- h5repack: added macro to handle a failure in H5Dread/write when memory
|
||
allocation failed inside the library. (PC - 2011/08/19)
|
||
- Fixed h5jam to not to allow the specifying of an HDF5 formatted file as
|
||
an input file for the -u (user block file) option. The original HDF5 file
|
||
would not be accessible if this behavior was allowed.
|
||
(JKM - 2011/08/19 - HDFFV-5941)
|
||
- Revised the command help pages of h5jam and h5unjam. The descriptions
|
||
were not up to date and some were missing.
|
||
(JKM - 2011/08/15 - HDFFV-7515)
|
||
- Fixed h5dump to correct the schema location:
|
||
<hdf5:HDF5-File
|
||
xmlns:hdf5="http://hdfgroup.org/HDF5/XML/schema/HDF5-File"
|
||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||
xsi:schemaLocation="http://hdfgroup.org/HDF5/XML/schema/HDF5-File
|
||
http://www.hdfgroup.org/HDF5/XML/schema/HDF5-File.xsd">
|
||
(ADB - 2011/08/10)
|
||
- h5repack: h5repack failed to copy a dataset if the layout is changed
|
||
from chunked with unlimited dimensions to contiguous.
|
||
(PC - 2011/07/15 - HDFFV-7649)
|
||
- Fixed h5diff: the "--delta" option considers two NaN of the same type
|
||
are different. This is wrong based on the h5diff description in the
|
||
Reference Manual. (PC - 2011/07/15 - HDFFV-7656)
|
||
- Fixed h5diff to display an instructive error message and exit with
|
||
an instructive error message when mutually exclusive options
|
||
(-d, -p and --use-system-epsilon) are used together.
|
||
(JKM - 2011/07/07 - HDFFV-7600)
|
||
- Fixed h5dump so that it displays the first line of each element in correct
|
||
position for multiple dimention array types. Before this fix,
|
||
the first line of each element in an array was
|
||
displayed after the last line of previous element without
|
||
moving to the next line (+indentation).
|
||
(JKM - 2011/06/15 - HDFFV-5878)
|
||
- Fixed h5dump so that it will display the correct value for
|
||
H5T_STD_I8LE datasets on the Blue-gene system (ppc64, linux, Big-Endian,
|
||
clustering). (AKC & JKM - 2011/05/12 - HDFFV-7594)
|
||
- Fixed h5diff to compare a file to itself correctly. Previously h5diff
|
||
reported either the files were different or not compatible in certain
|
||
cases even when comparing a file to itself. This fix also improves
|
||
performance when comparing the same target objects through verifying
|
||
the object and file addresses before comparing the details
|
||
in the objects. Examples of details are datasets and attributes.
|
||
(XCAO & JKM - 2011/05/06 - HDFFV-5928)
|
||
|
||
F90 API
|
||
-------
|
||
- Modified the h5open_f and h5close_f subroutines to not to call H5open
|
||
and H5close correspondingly. While the H5open call just adds overhead,
|
||
the H5close call called by a Fortran application shuts down the HDF5
|
||
library. This makes the library inaccessible to the application.
|
||
(EIP & SB - 2011/10/13 - HDFFV-915)
|
||
- Fixed h5tget_tag_f where the length of the C string was used to
|
||
repack the C string into the Fortran string. This lead to memory
|
||
corruption in the calling program. (SB - 2011/07/26)
|
||
- Added defined constants:
|
||
H5T_ORDER_MIXED_F (HDFFV-2767)
|
||
H5Z_SO_FLOAT_DSCALE_F
|
||
H5Z_SO_FLOAT_ESCALE_F
|
||
H5Z_SO_INT_F
|
||
H5Z_SO_INT_MINBITS_DEFAULT_F
|
||
H5O_TYPE_UNKNOWN_F
|
||
H5O_TYPE_GROUP_F
|
||
H5O_TYPE_DATASET_F
|
||
H5O_TYPE_NAMED_DATATYPE_F
|
||
H5O_TYPE_NTYPES_F
|
||
|
||
C++ API
|
||
------
|
||
- None
|
||
|
||
High-Level APIs:
|
||
------
|
||
- Fixed the H5LTdtype_to_text function. It had some memory problems when
|
||
dealing with some complicated data types. (SLU - 2011/10/19 - HDFFV-7701)
|
||
- Fixed H5DSset_label seg faulting when retrieving the length of a
|
||
dimension label that was not set. (SB - 2011/08/07 - HDFFV-7673)
|
||
- Fixed a dimension scale bug where if you create a dimscale, attach two
|
||
datasets to it, and then unattach them, you get an error if they are
|
||
unattached in order, but no error if you unattach them in reverse order.
|
||
(SB - 2011/06/07 - HDFFV-7605)
|
||
|
||
Fortran High-Level APIs:
|
||
------
|
||
- None
|
||
|
||
|
||
Platforms Tested
|
||
================
|
||
The following platforms and compilers have been tested for this release.
|
||
|
||
AIX 5.3 xlc 10.1.0.5
|
||
(NASA G-ADA) xlC 10.1.0.5
|
||
xlf90 12.1.0.6
|
||
|
||
FreeBSD 8.2-STABLE i386 gcc 4.2.1 [FreeBSD] 20070719
|
||
(loyalty) g++ 4.2.1 [FreeBSD] 20070719
|
||
gcc 4.6.1 20110422
|
||
g++ 4.6.1 20110422
|
||
gfortran 4.6.1 20110422
|
||
|
||
FreeBSD 8.2-STABLE amd64 gcc 4.2.1 [FreeBSD] 20070719
|
||
(freedom) g++ 4.2.1 [FreeBSD] 20070719
|
||
gcc 4.6.1 20110422
|
||
g++ 4.6.1 20110422
|
||
gfortran 4.6.1 20110422
|
||
|
||
IBM Blue Gene/P bgxlc 9.0.0.9
|
||
(LLNL uDawn) bgxlf90 11.1.0.7
|
||
bgxlC 9.0.0.9
|
||
|
||
Linux 2.6.16.60-0.54.5-smp Intel(R) C, C++, Fortran Compilers
|
||
x86_64 Version 11.1 20090630
|
||
(INL Icestorm)
|
||
|
||
Linux 2.6.18-194.el5 x86_64 Intel(R) C, C++, Fortran Compilers
|
||
(INL Fission) Version 12.0.2 20110112
|
||
|
||
Linux 2.6.18-108chaos x86_64 Intel(R) C, C++, Fortran Compilers
|
||
(LLNL Aztec) Version 11.1 20090630
|
||
|
||
Linux 2.6.18-194.3.1.el5PAE gcc (GCC) 4.1.2 and 4.4.2
|
||
#1 SMP i686 i686 i386 GNU Fortran (GCC) 4.1.2 20080704
|
||
(jam) (Red Hat 4.1.2-48) and 4.4.2
|
||
PGI C, Fortran, C++ 10.4-0 32-bit
|
||
PGI C, Fortran, C++ 10.6-0 32-bit
|
||
Intel(R) C Compiler for 32-bit
|
||
applications, Version 11.1
|
||
Intel(R) C++ Compiler for 32-bit
|
||
applications, Version 11.1
|
||
Intel(R) Fortran Compiler for 32-bit
|
||
applications, Version 11.1
|
||
MPICH mpich2-1.3.1 compiled with
|
||
gcc 4.1.2 and gfortran 4.1.2
|
||
|
||
Linux 2.6.18-238.12.1.el5 gcc 4.1.2 and 4.4.2
|
||
#1 SMP x86_64 GNU/Linux GNU Fortran (GCC) 4.1.2 20080704
|
||
(koala) (Red Hat 4.1.2-46) and 4.4.2
|
||
tested for both 32- and 64-bit binaries
|
||
Intel(R) C, C++, Fortran Compilers for
|
||
applications running on Intel(R) 64,
|
||
Version 11.1.
|
||
PGI C, Fortran, C++ Version 9.0-4
|
||
for 64-bit target on x86-64
|
||
MPICH mpich2-1.3.1 compiled with
|
||
gcc 4.1.2 and gfortran 4.1.2
|
||
|
||
SGI Altix UV Intel(R) C, Fortran Compilers
|
||
SGI ProPack 7 Linux Version 11.1 20100806
|
||
2.6.32.24-0.2.1.2230.2.PTF- SGI MPT 2.02
|
||
default #1 SMP
|
||
(NCSA ember)
|
||
|
||
Dell NVIDIA Cluster Intel(R) C, Fortran Compilers
|
||
Red Hat Enterprise Linux 6 Version 12.0.4 20110427
|
||
2.6.32-131.4.1.el6.x86_64 mvapich2 1.7rc1-intel-12.0.4
|
||
(NCSA forge)
|
||
|
||
SunOS 5.10 32- and 64-bit Sun C 5.11 SunOS_sparc 2010/08/13
|
||
Sun Fortran 95 8.5 SunOS_sparc 2010/08/13
|
||
Sun C++ 5.11 SunOS_sparc 2010/08/13
|
||
|
||
Windows XP Visual Studio 2008 w/ Intel Fortran 10.1 (project files)
|
||
Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
|
||
Visual Studio 2010 (cmake)
|
||
Cygwin(1.7.9 native gcc(4.5.3) compiler and gfortran)
|
||
|
||
Windows XP x64 Visual Studio 2008 w/ Intel Fortran 10.1 (project files)
|
||
Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
|
||
Visual Studio 2010 (cmake)
|
||
Cygwin(1.7.9 native gcc(4.5.3) compiler and gfortran)
|
||
|
||
Windows Vista Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
|
||
|
||
Windows Vista x64 Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
|
||
|
||
Windows 7 Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
|
||
|
||
Windows 7 x64 Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
|
||
|
||
Mac OS X 10.8.0 (Intel 64-bit) i686-apple-darwin10-gcc-4.2.1 (GCC) 4.2.1 (Apple Inc. build 5666) (dot 3)
|
||
Darwin Kernel Version 10.8.0 GNU Fortran (GCC) 4.6.1
|
||
Intel C, C++ and Fortran compilers 12.1.0
|
||
|
||
Mac OS X 10.8.0 (Intel 32-bit) i686-apple-darwin10-gcc-4.2.1 (GCC) 4.2.1 (Apple Inc. build 5666) (dot 3)
|
||
Darwin Kernel Version 10.8.0 GNU Fortran (GCC) version 4.6.1
|
||
Intel C, C++ and Fortran compilers 12.1.0
|
||
|
||
Fedora 12 2.6.32.16-150.fc12.ppc64 #1 SMP ppc64 GNU/Linux
|
||
gcc (GCC) 4.4.4 20100630 (Red Hat 4.4.4-10)
|
||
GNU Fortran (GCC) 4.4.4 20100630 (Red Hat 4.4.4-10)
|
||
|
||
Debian6.0.3 2.6.32-5-686 #1 SMP i686 GNU/Linux
|
||
gcc (Debian 4.4.5-8) 4.4.5
|
||
GNU Fortran (Debian 4.4.5-8) 4.4.5
|
||
|
||
Debian6.0.3 2.6.32-5-amd64 #1 SMP x86_64 GNU/Linux
|
||
gcc (Debian 4.4.5-8) 4.4.5
|
||
GNU Fortran (Debian 4.4.5-8) 4.4.5
|
||
|
||
Fedora15 2.6.40.6-0.fc15.i686.PAE #1 SMP i686 i686 i386 GNU/Linux
|
||
gcc (GCC) 4.6.1 20110908 (Red Hat 4.6.1-9)
|
||
GNU Fortran (GCC) 4.6.1 20110908 (Red Hat 4.6.1-9)
|
||
|
||
Fedora15 2.6.40.6-0.fc15.x86_64 #1 SMP x86_64 x86_64 x86_64 GNU/Linux
|
||
gcc (GCC) 4.6.1 20110908 (Red Hat 4.6.1-9)
|
||
GNU Fortran (GCC) 4.6.1 20110908 (Red Hat 4.6.1-9)
|
||
|
||
SUSE 11.4 2.6.37.6-0.7-desktop #1 SMP PREEMPT i686 i686 i386 GNU/Linux
|
||
gcc (SUSE Linux) 4.5.1 20101208
|
||
GNU Fortran (SUSE Linux) 4.5.1 20101208
|
||
|
||
SUSE 11.4 2.6.37.6-0.7-desktop #1 SMP PREEMPT x86_64 x86_64 x86_64 GNU/Linux
|
||
gcc (SUSE Linux) 4.5.1 20101208
|
||
GNU Fortran (SUSE Linux) 4.5.1 20101208
|
||
|
||
Ubuntu 11.10 3.0.0-12-generic #20-Ubuntu SMP i686 GNU/Linux
|
||
gcc (Ubuntu/Linaro 4.6.1-9ubuntu3) 4.6.1
|
||
GNU Fortran (Ubuntu/Linaro 4.6.4-9ubuntu3) 4.6.1
|
||
|
||
Ubuntu 11.10 3.0.0-12-generic #20-Ubuntu SMP x86_64 GNU/Linux
|
||
gcc (Ubuntu/Linaro 4.6.1-9ubuntu3) 4.6.1
|
||
GNU Fortran (Ubuntu/Linaro 4.6.1-9ubuntu3) 4.6.1
|
||
|
||
OpenVMS Alpha 8.3 HP C V7.3-009
|
||
HP Fortran V8.2-104679-48H9K
|
||
HP C++ V7.3-009
|
||
|
||
Cray Linux Environment (CLE) PrgEnv-pgi 2.2.74
|
||
hopper.nersc.gov pgcc 11.7-0 64-bit target on x86-64 Linux -tp k8e
|
||
franklin.nersc.gov pgf90 11.7-0 64-bit target on x86-64 Linux -tp k8e
|
||
pgCC 11.7-0 64-bit target on x86-64 Linux -tp k8e
|
||
|
||
Tested Configuration Features Summary
|
||
=====================================
|
||
|
||
In the tables below
|
||
y = tested
|
||
n = not tested in this release
|
||
C = Cluster
|
||
W = Workstation
|
||
x = not working in this release
|
||
dna = does not apply
|
||
( ) = footnote appears below second table
|
||
<blank> = testing incomplete on this feature or platform
|
||
|
||
Platform C F90 F90 C++ zlib SZIP
|
||
parallel parallel
|
||
Solaris2.10 32-bit n y n y y y
|
||
Solaris2.10 64-bit n y n y y y
|
||
Windows XP n y(4) n y y y
|
||
Windows XP x64 n y(4) n y y y
|
||
Windows Vista n y(4) n y y y
|
||
Windows Vista x64 n y(4) n y y y
|
||
OpenVMS Alpha n y n y y n
|
||
Mac OS X 10.8 Intel 32-bit n y n y y y
|
||
Mac OS X 10.8 Intel 64-bit n y n y y y
|
||
AIX 5.3 32- and 64-bit n y n y y y
|
||
FreeBSD 8.2-STABLE 32&64 bit n x n x y y
|
||
CentOS 5.5 Linux 2.6.18-194 i686 GNU (1)W y y(2) y y y y
|
||
CentOS 5.5 Linux 2.6.18-194 i686 Intel W n y n y y n
|
||
CentOS 5.5 Linux 2.6.18-194 i686 PGI W n y n y y n
|
||
CentOS 5.5 Linux 2.6.16 x86_64 GNU (1) W y y(3) y y y y
|
||
CentOS 5.5 Linux 2.6.16 x86_64 Intel W n y n y y n
|
||
CentOS 5.5 Linux 2.6.16 x86_64 PGI W n y n y y y
|
||
Fedora 12 Linux 2.6.32.16-150.fc12.ppc64 n y n y y y
|
||
SGI ProPack 7 Linux 2.6.32.24 y y y y y y
|
||
Red Hat Enterprise Linux 6 y y y y y y
|
||
CLE hopper.nersc.gov y y(3) y y y n
|
||
CLE franklin.nersc.gov y y(3) y y y n
|
||
|
||
|
||
Platform Shared Shared Shared Thread-
|
||
C libs F90 libs C++ libs safe
|
||
Solaris2.10 32-bit y y y y
|
||
Solaris2.10 64-bit y y y y
|
||
Windows XP y y(4) y n
|
||
Windows XP x64 y y(4) y n
|
||
Windows Vista y y(4) y y
|
||
Windows Vista x64 y y(4) y y
|
||
OpenVMS Alpha n n n n
|
||
Mac OS X 10.8 Intel 32-bit y(5) n y n
|
||
Mac OS X 10.8 Intel 64-bit y(5) n y n
|
||
AIX 5.3 32- and 64-bit n n n y
|
||
FreeBSD 8.2-STABLE 32&64 bit y x x y
|
||
CentOS 5.5 Linux 2.6.18-128 i686 GNU (1)W y y(2) y y
|
||
CentOS 5.5 Linux 2.6.18-128 i686 Intel W y y y n
|
||
CentOS 5.5 Linux 2.6.18-128 i686 PGI W y y y n
|
||
CentOS 5.5 Linux 2.6.16 x86_64 GNU (1) W y y y y
|
||
CentOS 5.5 Linux 2.6.16 x86_64 Intel W y y y n
|
||
CentOS 5.5 Linux 2.6.16 x86_64 PGI W y y y n
|
||
Fedora 12 Linux 2.6.32.16-150.fc12.ppc64 y y y y
|
||
SGI ProPack 7 Linux 2.6.32.24 y y y n
|
||
Red Hat Enterprise Linux 6 y y y n
|
||
CLE hopper.nersc.gov n n n n
|
||
CLE franklin.nersc.gov n n n n
|
||
|
||
(1) Fortran compiled with gfortran.
|
||
(2) With PGI and Absoft compilers.
|
||
(3) With PGI compiler for Fortran.
|
||
(4) Using Visual Studio 2008 w/ Intel Fortran 10.1 (Cygwin shared libraries are not supported)
|
||
(5) C and C++ shared libraries will not be built when Fortran is enabled.
|
||
Compiler versions for each platform are listed in the preceding
|
||
"Platforms Tested" table.
|
||
|
||
|
||
Known Problems
|
||
==============
|
||
|
||
* The STDIO VFD does not work on some architectures, possibly due to 32/64
|
||
bit or large file issues. The basic STDIO VFD test is known to fail on
|
||
64-bit SunOS 5.10 on SPARC when built with -m64 and 32-bit OS X/Darwin
|
||
10.7.0. The STDIO VFD test has been disabled while we investigate and
|
||
a fix should appear in a future release, possibly 1.8.9.
|
||
(DER - 2011/10/14)
|
||
|
||
* h5diff can report inconsistent results when comparing datasets of enum type
|
||
that contain invalid values. This is due to how enum types are handled in
|
||
the library and will be addressed in the next release.
|
||
(DER - 2011/10/14 - HDFFV-7527)
|
||
|
||
* The links test can fail under the stdio VFD due to some issues with external
|
||
links. This will be investigated and fixed in a future release.
|
||
(DER - 2011/10/14 - HDFFV-7768)
|
||
|
||
* After the shared library support was fixed for some bugs, it was discovered
|
||
that "make prefix=XXX install" no longer works for shared libraries. It
|
||
still works correctly for static libraries. Therefore, if you want to
|
||
install the HDF5 shared libraries in a location such as /usr/local/hdf5,
|
||
you need to specify the location via the --prefix option during configure
|
||
time. E.g, ./configure --prefix=/usr/local/hdf5 ...
|
||
(AKC - 2011/05/07 - HDFFV-7583)
|
||
|
||
* The parallel test, t_shapesame, in testpar/, may run for a long time and may
|
||
be terminated by the alarm signal. If that happens, one can increase the
|
||
alarm seconds (default is 1200 seconds = 20 minutes) by setting the
|
||
environment variable, $HDF5_ALARM_SECONDS, to a larger value such as 3600
|
||
(60 minutes). Note that the t_shapesame test may fail in some systems
|
||
(see the "While working on the 1.8.6 release..." problem below). If
|
||
it does, it will waste more time if $HDF5_ALARM_SECONDS is set
|
||
to a larger value. (AKC - 2011/05/07)
|
||
|
||
* The C++ and FORTRAN bindings are not currently working on FreeBSD.
|
||
(QAK - 2011/04/26)
|
||
|
||
* Shared Fortran libraries are not quite working on AIX. While they are
|
||
generated when --enable-shared is specified, the fortran and hl/fortran
|
||
tests fail. We are looking into the issue. HL and C++ shared libraries
|
||
should now be working as intended, however. (MAM - 2011/04/20)
|
||
|
||
* The --with-mpe configure option does not work with Mpich2. (AKC - 2011/03/10)
|
||
|
||
* While working on the 1.8.6 release of HDF5, a bug was discovered that can
|
||
occur when reading from a dataset in parallel shortly after it has been
|
||
written to collectively. The issue was exposed by a new test in the parallel
|
||
HDF5 test suite, but had existed before that. We believe the problem lies with
|
||
certain MPI implementations and/or file systems.
|
||
|
||
We have provided a pure MPI test program, as well as a standalone HDF5
|
||
program, that can be used to determine if this is an issue on your system.
|
||
They should be run across multiple nodes with a varying number of processes.
|
||
These programs can be found at:
|
||
http://www.hdfgroup.org/ftp/HDF5/examples/known_problems/
|
||
(NAF - 2011/01/19)
|
||
|
||
* The library's test dt_arith.c showed a compiler's rounding problem on
|
||
Cygwin when converting from unsigned long long to long double. The
|
||
library's own conversion works fine. We defined a macro for Cygwin to
|
||
skip this test until we can solve the problem.
|
||
(SLU - 2010/05/05 - HDFFV-1264)
|
||
|
||
* All the VFL drivers aren't backward compatible. In H5FDpublic.h, the
|
||
structure H5FD_class_t changed in 1.8. There is new parameter added to
|
||
get_eoa and set_eoa callback functions. A new callback function
|
||
get_type_map was added in. The public function H5FDrealloc was taken
|
||
out in 1.8. The problem only happens when users define their own driver
|
||
for 1.6 and try to plug in 1.8 library. Because there's only one user
|
||
complaining about it, we (Elena, Quincey, and I) decided to leave it as
|
||
it is (see bug report #1279). Quincey will make a plan for 1.10.
|
||
(SLU - 2010/02/02)
|
||
|
||
* MinGW has a missing libstdc++.dll.a library file and will not successfully link
|
||
C++ applications/tests. Do not use the enable-cxx configure option. Read all of
|
||
the INSTALL_MINGW.txt file for all restrictions. (ADB - 2009/11/11)
|
||
|
||
* The --enable-static-exec configure flag will only statically link libraries
|
||
if the static version of that library is present. If only the shared version
|
||
of a library exists (i.e., most system libraries on Solaris, AIX, and Mac,
|
||
for example, only have shared versions), the flag should still result in a
|
||
successful compilation, but note that the installed executables will not be
|
||
fully static. Thus, the only guarantee on these systems is that the
|
||
executable is statically linked with just the HDF5 library.
|
||
(MAM - 2009/11/04)
|
||
|
||
* The PathScale MPI implementation, accessing a Panasas file system, would
|
||
cause H5Fcreate() with H5F_ACC_EXCL to fail even when the file does not
|
||
exist. This is due to the MPI_File_open() call failing if the mode has
|
||
the MPI_MODE_EXCL bit set. (AKC - 2009/08/11 - HDFFV-988)
|
||
|
||
* Parallel tests failed with 16 processes with data inconsistency at testphdf5
|
||
/ dataset_readAll. Parallel tests also failed with 32 and 64 processes with
|
||
collective abort of all ranks at t_posix_compliant / allwrite_allread_blocks
|
||
with MPI IO. (CMC - 2009/04/28)
|
||
|
||
* For Red Storm, a Cray XT3 system, the tools/h5ls/testh5ls.sh and
|
||
tools/h5copy/testh5copy.sh will fail some of its sub-tests. These sub-tests
|
||
are expected to fail and should exit with a non-zero code but the yod
|
||
command does not propagate the exit code of the executables. Yod always
|
||
returns 0 if it can launch the executable. The test suite shell expects
|
||
a non-zero for this particular test, therefore it concludes the test has
|
||
failed when it receives 0 from yod. Skip all the "failing" test for now
|
||
by changing them as following.
|
||
|
||
======== Original tools/h5ls/testh5ls.sh =========
|
||
TOOLTEST tgroup-1.ls 1 -w80 -r -g tgroup.h5
|
||
======== Change to ===============================
|
||
echo SKIP TOOLTEST tgroup-1.ls 1 -w80 -r -g tgroup.h5
|
||
==================================================
|
||
|
||
======== Original tools/h5copy/testh5copy.sh =========
|
||
TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d grp_rename
|
||
TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d /grp_rename/grp_dsets
|
||
TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_dsets -d /E/F/grp_dsets
|
||
TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_nested -d /G/H/grp_nested
|
||
H5LSTEST $FILEOUT
|
||
======== Change to ===============================
|
||
echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d grp_rename
|
||
echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d /grp_rename/grp_dsets
|
||
echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_dsets -d /E/F/grp_dsets
|
||
echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_nested -d /G/H/grp_nested
|
||
echo SKIP H5LSTEST $FILEOUT
|
||
==================================================
|
||
(AKC - 2008/11/10)
|
||
|
||
* For Red Storm, a Cray XT3 system, the yod command sometimes gives the
|
||
message, "yod allocation delayed for node recovery". This interferes with
|
||
test suites that do not expect to see this message. See the section of "Red
|
||
Storm" in file INSTALL_parallel for a way to deal with this problem.
|
||
(AKC - 2008/05/28)
|
||
|
||
* On an Intel 64 Linux cluster (RH 4, Linux 2.6.9) with Intel 10.0 compilers,
|
||
use -mp -O1 compilation flags to build the libraries. A higher level of
|
||
optimization causes failures in several HDF5 library tests.
|
||
|
||
* On mpich 1.2.5 and 1.2.6, if more than two processes contribute no IO and
|
||
the application asks to do collective IO, we have found that when using 4
|
||
processors, a simple collective write will sometimes be hung. This can be
|
||
verified with t_mpi test under testpar.
|
||
|
||
* A dataset created or rewritten with a v1.6.3 library or after cannot be read
|
||
with the v1.6.2 library or before when the Fletcher32 EDC filter is enabled.
|
||
There was a bug in the calculation of the Fletcher32 checksum in the
|
||
library before v1.6.3; the checksum value was not consistent between big-
|
||
endian and little-endian systems. This bug was fixed in Release 1.6.3.
|
||
However, after fixing the bug, the checksum value was no longer the same as
|
||
before on little-endian system. Library releases after 1.6.4 can still read
|
||
datasets created or rewritten with an HDF5 library of v1.6.2 or before.
|
||
(SLU - 2005/06/30)
|
||
|
||
* On IBM AIX systems, parallel HDF5 mode will fail some tests with error
|
||
messages like "INFO: 0031-XXX ...". This is from the command `poe'.
|
||
Set the environment variable MP_INFOLEVEL to 0 to minimize the messages
|
||
and run the tests again.
|
||
|
||
The tests may fail with messages like "The socket name is already in use",
|
||
but HDF5 does not use sockets. This failure is due to problems with the
|
||
poe command trying to set up the debug socket. To resolve this problem,
|
||
check to see whether there are many old /tmp/s.pedb.* files staying around.
|
||
These are sockets used by the poe command and left behind due to failed
|
||
commands. First, ask your system administrator to clean them out.
|
||
Lastly, request IBM to provide a means to run poe without the debug socket.
|
||
(AKC - 2004/12/08)
|
||
|
||
|
||
%%%%1.8.7%%%%
|
||
|
||
|
||
HDF5 version 1.8.7 released on Tue May 10 09:24:44 CDT 2011
|
||
================================================================================
|
||
|
||
INTRODUCTION
|
||
============
|
||
|
||
This document describes the differences between HDF5-1.8.6 and
|
||
HDF5 1.8.7, and contains information on the platforms tested and
|
||
known problems in HDF5-1.8.7.
|
||
For more details, see the files HISTORY-1_0-1_8_0_rc3.txt
|
||
and HISTORY-1_8.txt in the release_docs/ directory of the HDF5 source.
|
||
|
||
Links to the HDF5 1.8.7 source code, documentation, and additional materials
|
||
can be found on the HDF5 web page at:
|
||
|
||
http://www.hdfgroup.org/products/hdf5/
|
||
|
||
The HDF5 1.8.7 release can be obtained from:
|
||
|
||
http://www.hdfgroup.org/HDF5/release/obtain5.html
|
||
|
||
User documentation for 1.8.7 can be accessed directly at this location:
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/
|
||
|
||
New features in the HDF5-1.8.x release series, including brief general
|
||
descriptions of some new and modified APIs, are described in the "What's New
|
||
in 1.8.0?" document:
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/ADGuide/WhatsNew180.html
|
||
|
||
All new and modified APIs are listed in detail in the "HDF5 Software Changes
|
||
from Release to Release" document, in the section "Release 1.8.7 (current
|
||
release) versus Release 1.8.6":
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/ADGuide/Changes.html
|
||
|
||
If you have any questions or comments, please send them to the HDF Help Desk:
|
||
|
||
help@hdfgroup.org
|
||
|
||
|
||
CONTENTS
|
||
========
|
||
|
||
- New Features
|
||
- Support for New Platforms, Languages, and Compilers
|
||
- Bug Fixes since HDF5-1.8.6
|
||
- Platforms Tested
|
||
- Supported Configuration Features Summary
|
||
- Known Problems
|
||
|
||
|
||
New Features
|
||
============
|
||
|
||
Configuration
|
||
-------------
|
||
- Configure now generates Makefiles that build in "silent make mode"
|
||
by default in which compile and link lines are significantly
|
||
simplified for clarity. To override this and view actual compile and
|
||
link lines during building, the --disable-silent-rules flag can be used
|
||
at configure time, or the 'make' command can be followed by V=1, to
|
||
indicate a "verbose" make. (MAM - 2011/4/14).
|
||
- Added mpicc and mpif90 as the default C and Fortran compilers for Linux
|
||
systems when --enable-parallel is specified but no $CC or $FC is defined.
|
||
(AKC - 2011/2/7)
|
||
- Added a new configure option, "--enable-unsupported", which can
|
||
be used to stop configure from preventing the use of unsupported
|
||
configure option combinations, such as c++ in parallel or Fortran
|
||
with threadsafe. Use at your own risk, as it may result in a
|
||
library that won't compile or run as expected!
|
||
(MAM - 2010/11/17 - Bug 2061)
|
||
|
||
Library
|
||
-------
|
||
- The library allows the dimension size of a dataspace to be zero. In
|
||
the past, the library would allow this only if the maximal dimension
|
||
size was unlimited. Now there is no such restriction, but no data
|
||
can be written to this kind of dataset. (SLU - 2011/4/20)
|
||
- We added two new macros, H5_VERSION_GE and H5_VERSION_LE, to let users
|
||
compare certain version numbers with the library being used. (SLU -
|
||
2011/4/20)
|
||
- Added ability to cache files opened through external links. Added new
|
||
public functions H5Pset_elink_file_cache_size(),
|
||
H5Pget_elink_file_cache_size(), and H5Fclear_elink_file_cache().
|
||
(NAF - 2011/02/17)
|
||
- Finished implementing all options for 'log' VFD. (QAK - 2011/1/25)
|
||
- Removed all old code for Metrowerks compilers, bracketed by
|
||
__MWERKS__). Metrowerks compiler is long gone. (AKC - 2010/11/17)
|
||
|
||
Parallel Library
|
||
----------------
|
||
- None
|
||
|
||
Tools
|
||
-----
|
||
- h5diff: Added new "verbose with levels" option, '-vN, --verbose=N'.
|
||
The old '-v, --verbose' option is deprecated but remains available;
|
||
it is exactly equivalent to '-v0, --verbose=0'.
|
||
The new levels 1 ('-v1' or '--verbose=1') and 2 ('-v2' or
|
||
'--verbose=2') can be specified to view more information regarding
|
||
attributes differences. Bug #2121 (JKM 2011/3/23)
|
||
- h5dump: Added new option --enable-error-stack. This option will
|
||
display error stack information in the output stream. This is
|
||
useful when the "h5dump: Unable to print data" message is output.
|
||
(ADB - 2011/03/03)
|
||
|
||
High-Level APIs
|
||
---------------
|
||
- Fortran LT make datasets routines (H5LTmake_dataset_f,
|
||
h5ltmake_dataset_int_f, h5ltmake_dataset_float_f, h5ltmake_dataset_double_f)
|
||
and LT read datasets routines (h5ltread_dataset_f,h5ltread_dataset_int_f,
|
||
h5ltread_dataset_float_f, 5ltread_dataset_double_f) can now handle
|
||
4-dimensional to 7-dimensional rank datasets. HDFFV-1217 (MSB-2011/4/24/2011)
|
||
|
||
F90 API
|
||
-------
|
||
- None
|
||
|
||
C++ API
|
||
-------
|
||
- None
|
||
|
||
|
||
Support for New Platforms, Languages, and Compilers
|
||
===================================================
|
||
- Intel V11.1 uses now -O3 optimization in production mode (EIP - 2010/10/08)
|
||
|
||
|
||
|
||
Bug Fixes since HDF5-1.8.6
|
||
==========================
|
||
|
||
Configuration
|
||
-------------
|
||
- Shared C++ and HL libraries on AIX should now be working correctly.
|
||
Note that Fortran shared libraries are still not working on AIX.
|
||
(See the Known Problems section, below). (MAM - 2011/4/20)
|
||
- Removed config/ibm-aix6.x. All IBM-AIX settings are in one file,
|
||
ibm-aix. (AKC - 2011/4/14)
|
||
- Shared C libraries are no longer disabled on Mac when Fortran
|
||
is enabled. Shared Fortran libraries are still not supported on Mac,
|
||
so configure will disable them by default, but this is overrideable
|
||
with the new --enable-unsupported configure option. The configure
|
||
summary has been updated to reflect the fact that the shared-ness of
|
||
the C++/Fortran wrapper libraries may not align with the C library.
|
||
(MAM - 2011/04/11 - HDFFV-4353).
|
||
|
||
Library
|
||
-------
|
||
- Changed assertion failure when decoding a compound datatype with no
|
||
fields into a normal error failure. Also prohibit using this sort
|
||
of datatype for creating an attribute (as is already the case for
|
||
datasets and committed (named) datatypes). (QAK - 2011/04/15, Jira
|
||
issue #HDFFV-2766)
|
||
- Tell the VFL flush call that the file will be closing, allowing
|
||
the VFDs to avoid sync'ing the file (particularly valuable in parallel).
|
||
(QAK - 2011/03/09)
|
||
- The datatype handler created with H5Tencode/decode used to have the
|
||
reference count 0 (zero); it now has the reference count 1 (one).
|
||
(SLU - 2011/2/18)
|
||
- Fixed the definition of H5_HAVE_GETTIMEOFDAY on Windows so that
|
||
HDgettimeofday() is defined and works properly. Bug HDFFV-5931
|
||
(DER - 2011/04/14)
|
||
- Added basic VFD tests for the Windows, STDIO and log VFD tests.
|
||
(DER - 2011/04/11)
|
||
|
||
Parallel Library
|
||
----------------
|
||
- None
|
||
|
||
Tools
|
||
-----
|
||
- Updated h5dump test case script to prevent entire test failure when
|
||
source directory is read-only. Bug #HDFFV-4342 (JKM 2011/4/12)
|
||
- Fixed h5dump displaying incorrect values for H5T_STD_I8BE type data in
|
||
attribute on Big-Endian machine. H5T_STD_I8BE is unsigned 8bit type,
|
||
so h5dump is supposed to display -2 instead of 254. It worked correctly
|
||
on Little-Endian system , but not on Big-Endian system. Bug #HDFFV-4358
|
||
(JKM 04/08/2011)
|
||
- Updated some HDF5 tools to standardize the option name as
|
||
'--enable-error-stack' for printing HDF5 error stack messages. h5ls and
|
||
h5dump have been updated. For h5ls, this replaces "-e/--errors" option,
|
||
which is deprecated. For h5dump, this is a new option. Bug #2182
|
||
(JKM 2011/3/30)
|
||
- Fixed the h5diff --use-system-epsilon option. The formula used in the
|
||
calculation was changed from ( |a - b| / b ) to ( |a - b| ).
|
||
This was done to improve performance. Bug #2184 (JKM 2011/3/24)
|
||
- Fixed output for H5T_REFERENCE in h5dump. According to the BNF document
|
||
the output of a H5T_REFERENCE should be followed by the type;
|
||
<reference> ::= H5T_REFERENCE { <ref_type> }
|
||
<ref_type> ::= H5T_STD_REF_OBJECT | H5T_STD_REF_DSETREG
|
||
Previously this was only displayed if the -R option was used.
|
||
Bug #1725 (ADB 2011/3/28)
|
||
- Fixed two h5diff issues. 1) h5diff compared attributes correctly only
|
||
when two objects had the same number of attributes and the attribute
|
||
names were identical. 2) h5diff did not display useful information about
|
||
attribute differences. Bug #2121 (JKM 2011/3/17)
|
||
- Fixed a memory leak in h5diff that occurred when accessing symbolic links
|
||
with the --follow-symlink option. Bug #2214 (JKM 2011/3/18)
|
||
- Fixed a memory leak in h5diff that occurred when accessing variable length
|
||
string data. Bug #2216 (JKM 2011/3/18)
|
||
- Fixed and improved the help page for h5ls -a, --address option.
|
||
Bug #1904 (JKM 2011/3/11)
|
||
- Fixed h5copy to enable copying an object into the same HDF5 file.
|
||
Previously h5copy displayed an error message when the target file
|
||
was the same as the source file. (XCAO 2011/3/8)
|
||
- Fixed an h5dump problem that caused the tool to skip some data elements
|
||
in large datasets with a large array datatype on Windows. This issue
|
||
arose only on Windows due to the different return behavior of the
|
||
_vsnprintf() function. Bug #2161 (JKM 2011/3/3)
|
||
- Fixed h5dump which was skipping some array indices in large datasets
|
||
with a relatively large array datatype. The interval of skipped indices
|
||
varied according to the size of the array. Bug #2092 (JKM 2011/2/15)
|
||
- Fixed h5diff which was segfaulting when comparing compound datasets
|
||
with a combination of fixed-length string datatypes and variable-length
|
||
string datatypes in certain orders. Bug #2089 (JKM 2010/12/28)
|
||
- Improved h5diff performance. 1) Now use HDmemcmp() before comparing two
|
||
elements. 2) Replace expensive H5Tequals() calls. 3) Retrieve datatype
|
||
information at dataset level, not at each element level for compound
|
||
datasets. HDFFV-7516 (JKM 2011/4/18)
|
||
- Fixed h5ls to display nested compound types with curly brackets
|
||
when -S (--simple) option is used with -l (--label), so it shows
|
||
which members (in curly brackets) belong to which nested compound type,
|
||
making the output clearer. Bug #1979 (JKM 2010/11/09)
|
||
- Fixed h5diff to handle variable-length strings in a compound dataset
|
||
and variable-length string arrays in a compound dataset correctly.
|
||
Garbage values were previously displayed when h5diff compared multiple
|
||
variable-length strings in a compound type dataset.
|
||
Bug #1989 (JKM 2010/10/28)
|
||
- Fixed h5copy to fail gracefully when copying an object to a non-
|
||
existing group without the -p option. Bug #2040 (JKM 2010/10/18)
|
||
|
||
F90 API
|
||
------
|
||
- None
|
||
|
||
C++ API
|
||
------
|
||
- None
|
||
|
||
High-Level APIs:
|
||
------
|
||
- None
|
||
|
||
Fortran High-Level APIs:
|
||
------
|
||
- h5tbmake_table_f: Fixed error in passing an array of characters with different
|
||
length field names.
|
||
- h5tget_field_info_f: Fixed error with packing the C strings into a Fortran
|
||
array of strings. Added optional argument called 'maxlen_out' which returns
|
||
the maximum string character length in a field name element.
|
||
Bug HDFFV-1255 (MSB- 4/17/2011)
|
||
|
||
|
||
|
||
|
||
Platforms Tested
|
||
================
|
||
The following platforms and compilers have been tested for this release.
|
||
|
||
AIX 6.1 xlc 11.1.0.3
|
||
(NCSA BP) xlC 11.1.0.3
|
||
xlf90 13.1.0.3
|
||
mpcc_r 11.1.0.3
|
||
mpxlf90_r 13.1.0.3
|
||
|
||
FreeBSD 8.2-STABLE i386 gcc 4.2.1 [FreeBSD] 20070719
|
||
(loyalty) g++ 4.2.1 [FreeBSD] 20070719
|
||
gcc 4.6.1 20110422
|
||
g++ 4.6.1 20110422
|
||
gfortran 4.6.1 20110422
|
||
|
||
FreeBSD 8.2-STABLE amd64 gcc 4.2.1 [FreeBSD] 20070719
|
||
(freedom) g++ 4.2.1 [FreeBSD] 20070719
|
||
gcc 4.6.1 20110422
|
||
g++ 4.6.1 20110422
|
||
gfortran 4.6.1 20110422
|
||
|
||
Linux 2.6.18-194.3.1.el5PAE gcc (GCC) 4.1.2 and 4.4.2
|
||
#1 SMP i686 i686 i386 G95 (GCC 4.0.3 (g95 0.93!) Apr 21 2010)
|
||
(jam) GNU Fortran (GCC) 4.1.2 20080704
|
||
(Red Hat 4.1.2-48) and 4.4.2
|
||
PGI C, Fortran, C++ 10.4-0 32-bit
|
||
PGI C, Fortran, C++ 10.6-0 32-bit
|
||
Intel(R) C Compiler for 32-bit
|
||
applications, Version 11.1
|
||
Intel(R) C++ Compiler for 32-bit
|
||
applications, Version 11.1
|
||
Intel(R) Fortran Compiler for 32-bit
|
||
applications, Version 11.1
|
||
Absoft 32-bit Fortran 95 10.0.7
|
||
MPICH mpich2-1.3.1 compiled with
|
||
gcc 4.1.2 and gfortran 4.1.2
|
||
|
||
Linux 2.6.18-194.17.1.el5 gcc 4.1.2 and 4.4.2
|
||
#1 SMP x86_64 GNU/Linux G95 (GCC 4.0.3 (g95 0.93!) Apr 21 2010)
|
||
(amani) tested for both 32- and 64-bit binaries
|
||
GNU Fortran (GCC) 4.1.2 20080704
|
||
(Red Hat 4.1.2-46) and 4.4.2
|
||
Intel(R) C, C++, Fortran Compilers for
|
||
applications running on Intel(R) 64,
|
||
Version 11.1.
|
||
PGI C, Fortran, C++ Version 9.0-4
|
||
for 64-bit target on x86-64
|
||
MPICH mpich2-1.3.1 compiled with
|
||
gcc 4.1.2 and gfortran 4.1.2
|
||
|
||
SGI ProPack 7 Linux Intel(R) C++ Version 11.1 20100806
|
||
2.6.32.24-0.2.1.2230.2.PTF- Intel(R) Fortran Version 11.1 20100806
|
||
default #1 SMP SGI MPT 2.01
|
||
SGI Altix UV
|
||
(NCSA ember)
|
||
|
||
SunOS 5.10 32- and 64-bit Sun C 5.9 Sun OS_sparc Patch 124867-16
|
||
(linew) Sun Fortran 95 8.3 Sun OS_sparc Patch 127000-13
|
||
Sun C++ 5.9 Sun OS_sparc Patch 124863-26
|
||
Sun C 5.10 SunOS_sparc Patch 141861-07
|
||
Sun Fortran 95 8.4 SunOS_sparc Patch 128231-06
|
||
Sun C++ 5.10 SunOS_sparc 128228-11
|
||
|
||
Intel Xeon Linux 2.6.18- gcc 4.2.4
|
||
92.1.10.el5_lustre.1.6.6smp- Intel(R) C++ Version 10.1.017
|
||
perfctr #8 SMP Intel(R) Fortran Compiler Version 10.1.017
|
||
(NCSA abe) Open MPI 1.3.2
|
||
MVAPICH2-1.5.1_pgi-10.8
|
||
|
||
Windows XP Visual Studio 2008 w/ Intel Fortran 10.1 (project files)
|
||
Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
|
||
Visual Studio 2010 (cmake)
|
||
Cygwin(1.7.7 native gcc(4.3.4) compiler and gfortran)
|
||
|
||
Windows XP x64 Visual Studio 2008 w/ Intel Fortran 10.1 (project files)
|
||
Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
|
||
Visual Studio 2010 (cmake)
|
||
Cygwin(1.7.7 native gcc(4.3.4) compiler and gfortran)
|
||
|
||
Windows Vista Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
|
||
|
||
Windows Vista x64 Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
|
||
|
||
Windows 7 Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
|
||
|
||
Windows 7 x64 Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
|
||
|
||
Mac OS X 10.7.0 (Intel 64-bit) i686-apple-darwin10-gcc-4.2.1 (GCC) 4.2.1
|
||
Darwin Kernel Version 10.7.0 GNU Fortran (GCC) 4.6.0 20101106 (experimental)
|
||
Intel C, C++ and Fortran compilers 12.0.1.122 20101110
|
||
|
||
Mac OS X 10.7.0 (Intel 32-bit) i686-apple-darwin10-gcc-4.2.1 (GCC) 4.2.1 (Apple Inc. build 5666) (dot 3)
|
||
Darwin Kernel Version 10.7.0 GNU Fortran (GCC) version 4.4.0 20090123 (experimental)
|
||
[trunk revision 143587]
|
||
|
||
Fedora 12 2.6.32.16-150.fc12.ppc64 #1 SMP ppc64 GNU/Linux
|
||
gcc (GCC) 4.4.4 20100630 (Red Hat 4.4.4-10)
|
||
GNU Fortran (GCC) 4.4.4 20100630 (Red Hat 4.4.4-10)
|
||
|
||
Debian6.01 2.6.32-5-686 #1 SMP i686 GNU/Linux
|
||
gcc (Debian 4.4.5-8) 4.4.5
|
||
GNU Fortran (Debian 4.4.5-8) 4.4.5
|
||
|
||
Debian6.01 2.6.32-5-amd64 #1 SMP x86_64 GNU/Linux
|
||
gcc (Debian 4.4.5-8) 4.4.5
|
||
GNU Fortran (Debian 4.4.5-8) 4.4.5
|
||
|
||
Fedora14 2.6.35.12-88.fc14.i686.PAE #1 SMP i686 i686 i386 GNU/Linux
|
||
gcc (GCC) 4.5.1 20100924 (Red Hat 4.5.1-4)
|
||
GNU Fortran (GCC) 4.5.1 20100924 (Red Hat 4.5.1-4)
|
||
|
||
Fedora14 2.6.35.12-88.fc14.x86_64 #1 SMP x86_64 x86_64 x86_64 GNU/Linux
|
||
gcc (GCC) 4.5.1 20100924 (Red Hat 4.5.1-4)
|
||
GNU Fortran (GCC) 4.5.1 20100924 (Red Hat 4.5.1-4)
|
||
|
||
SUSE 11.4 2.6.37.1-1.2-desktop #1 SMP PREEMPT i686 i686 i386 GNU/Linux
|
||
gcc (SUSE Linux) 4.5.1 20101208
|
||
GNU Fortran (SUSE Linux) 4.5.1 20101208
|
||
|
||
SUSE 11.4 2.6.37.1-1.2-desktop #1 SMP PREEMPT x86_64 x86_64 x86_64 GNU/Linux
|
||
gcc (SUSE Linux) 4.5.1 20101208
|
||
GNU Fortran (SUSE Linux) 4.5.1 20101208
|
||
|
||
Ubuntu 10.10 2.6.35-28-generic #50-Ubuntu SMP i686 GNU/Linux
|
||
gcc (Ubuntu/Linaro 4.4.4-14ubuntu5) 4.4.5
|
||
GNU Fortran (Ubuntu/Linaro 4.4.4-14ubuntu5) 4.4.5
|
||
|
||
Ubuntu 10.10 2.6.35-28-generic #50-Ubuntu SMP x86_64 GNU/Linux
|
||
gcc (Ubuntu/Linaro 4.4.4-14ubuntu5) 4.4.5
|
||
GNU Fortran (Ubuntu/Linaro 4.4.4-14ubuntu5) 4.4.5
|
||
|
||
OpenVMS Alpha 8.3 HP C V7.3-009
|
||
HP Fortran V8.2-104679-48H9K
|
||
HP C++ V7.3-009
|
||
|
||
Tested Configuration Features Summary
|
||
========================================
|
||
|
||
In the tables below
|
||
y = tested
|
||
n = not tested in this release
|
||
C = Cluster
|
||
W = Workstation
|
||
x = not working in this release
|
||
dna = does not apply
|
||
( ) = footnote appears below second table
|
||
<blank> = testing incomplete on this feature or platform
|
||
|
||
Platform C F90 F90 C++ zlib SZIP
|
||
parallel parallel
|
||
Solaris2.10 32-bit n y n y y y
|
||
Solaris2.10 64-bit n y n y y y
|
||
Windows XP n y(4) n y y y
|
||
Windows XP x64 n y(4) n y y y
|
||
Windows Vista n y(4) n y y y
|
||
Windows Vista x64 n y(4) n y y y
|
||
OpenVMS Alpha n y n y y n
|
||
Mac OS X 10.7 Intel 32-bit n y n y y y
|
||
Mac OS X 10.7 Intel 64-bit n y n y y y
|
||
AIX 6.1 32- and 64-bit y y y y y y
|
||
FreeBSD 8.2-STABLE 32&64 bit n x n x y y
|
||
CentOS 5.5 Linux 2.6.18-194 i686 GNU (1)W y y(2) y y y y
|
||
CentOS 5.5 Linux 2.6.18-194 i686 Intel W n y n y y n
|
||
CentOS 5.5 Linux 2.6.18-194 i686 PGI W n y n y y n
|
||
CentOS 5.5 Linux 2.6.16 x86_64 GNU (1) W y y(3) y y y y
|
||
CentOS 5.5 Linux 2.6.16 x86_64 Intel W n y n y y n
|
||
CentOS 5.5 Linux 2.6.16 x86_64 PGI W n y n y y y
|
||
RedHat EL4 2.6.18 Xeon Lustre C y y y y y n
|
||
Fedora 12 Linux 2.6.32.16-150.fc12.ppc64 n y n y y y
|
||
SGI Linux 2.6.32.19 y y y y y y
|
||
|
||
|
||
Platform Shared Shared Shared Thread-
|
||
C libs F90 libs C++ libs safe
|
||
Solaris2.10 32-bit y y y y
|
||
Solaris2.10 64-bit y y y y
|
||
Windows XP y y(4) y n
|
||
Windows XP x64 y y(4) y n
|
||
Windows Vista y y(4) y y
|
||
Windows Vista x64 y y(4) y y
|
||
OpenVMS Alpha n n n n
|
||
Mac OS X 10.7 Intel 32-bit y(5) n y n
|
||
Mac OS X 10.7 Intel 64-bit y(5) n y n
|
||
AIX 6.1 32- and 64-bit n n n y
|
||
FreeBSD 8.2-STABLE 32&64 bit y x x y
|
||
CentOS 5.5 Linux 2.6.18-128 i686 GNU (1)W y y(2) y y
|
||
CentOS 5.5 Linux 2.6.18-128 i686 Intel W y y y n
|
||
CentOS 5.5 Linux 2.6.18-128 i686 PGI W y y y n
|
||
CentOS 5.5 Linux 2.6.16 x86_64 GNU (1) W y y y y
|
||
CentOS 5.5 Linux 2.6.16 x86_64 Intel W y y y n
|
||
CentOS 5.5 Linux 2.6.16 x86_64 PGI W y y y n
|
||
RedHat EL4 2.6.18 Xeon Lustre C y y y n
|
||
Fedora 12 Linux 2.6.32.16-150.fc12.ppc64 y y y y
|
||
SGI Linux 2.6.32.19 y y y y
|
||
|
||
(1) Fortran compiled with gfortran.
|
||
(2) With PGI and Absoft compilers.
|
||
(3) With PGI compiler for Fortran.
|
||
(4) Using Visual Studio 2008 w/ Intel Fortran 10.1 (Cygwin shared libraries are not supported)
|
||
(5) C and C++ shared libraries will not be built when Fortran is enabled.
|
||
Compiler versions for each platform are listed in the preceding
|
||
"Platforms Tested" table.
|
||
|
||
|
||
Known Problems
|
||
==============
|
||
* After the shared library support was fixed for some bugs, it was discovered
|
||
that "make prefix=XXX install" no longer works for shared libraries. It
|
||
still works correctly for static libraries. Therefore, if you want to
|
||
install the HDF5 shared libraries in a location such as /usr/local/hdf5,
|
||
you need to specify the location via the --prefix option during configure
|
||
time. E.g, ./configure --prefix=/usr/local/hdf5 ...
|
||
(AKC - 2011/05/07 HDFFV-7583)
|
||
|
||
* The parallel test, t_shapesame, in testpar/, may run for a long time and may
|
||
be terminated by the alarm signal. If that happens, one can increase the
|
||
alarm seconds (default is 1200 seconds = 20 minutes) by setting the
|
||
environment variable, $HDF5_ALARM_SECONDS, to a larger value such as 3600
|
||
(60 minutes). Note that the t_shapesame test may fail in some systems
|
||
(see the "While working on the 1.8.6 release..." problem below). If
|
||
it does, it will waste more time if $HDF5_ALARM_SECONDS is set
|
||
to a larger value. (AKC - 2011/05/07)
|
||
|
||
* The C++ and FORTRAN bindings are not currently working on FreeBSD.
|
||
(QAK - 2011/04/26)
|
||
|
||
* Shared Fortran libraries are not quite working on AIX. While they are
|
||
generated when --enable-shared is specified, the fortran and hl/fortran
|
||
tests fail. We are looking into the issue. HL and C++ shared libraries
|
||
should now be working as intended, however. (MAM - 2011/04/20)
|
||
|
||
* The --with-mpe configure option does not work with Mpich2. AKC - 2011/03/10
|
||
|
||
* If parallel gmake (e.g., gmake -j 4) is used, the "gmake clean" command
|
||
sometimes fails in the perform directory due to the attempt to remove the
|
||
executable of h5perf or h5perf_serial by two "parallel" commands. This error
|
||
has no consequence on the functionality of the HDF5 library or install. It
|
||
is fixed in the next release. AKC - 2011/01/25
|
||
|
||
* While working on the 1.8.6 release of HDF5, a bug was discovered that can
|
||
occur when reading from a dataset in parallel shortly after it has been
|
||
written to collectively. The issue was exposed by a new test in the parallel
|
||
HDF5 test suite, but had existed before that. We believe the problem lies with
|
||
certain MPI implementations and/or file systems.
|
||
|
||
We have provided a pure MPI test program, as well as a standalone HDF5
|
||
program, that can be used to determine if this is an issue on your system.
|
||
They should be run across multiple nodes with a varying number of processes.
|
||
These programs can be found at:
|
||
http://www.hdfgroup.org/ftp/HDF5/examples/known_problems/
|
||
|
||
* The library's test dt_arith.c showed a compiler's rounding problem on
|
||
Cygwin when converting from unsigned long long to long double. The
|
||
library's own conversion works fine. We defined a macro for Cygwin to
|
||
skip this test until we can solve the problem. Please see bug #1813.
|
||
SLU - 2010/5/5
|
||
|
||
* All the VFL drivers aren't backward compatible. In H5FDpublic.h, the
|
||
structure H5FD_class_t changed in 1.8. There is new parameter added to
|
||
get_eoa and set_eoa callback functions. A new callback function
|
||
get_type_map was added in. The public function H5FDrealloc was taken
|
||
out in 1.8. The problem only happens when users define their own driver
|
||
for 1.6 and try to plug in 1.8 library. Because there's only one user
|
||
complaining about it, we (Elena, Quincey, and I) decided to leave it as
|
||
it is (see bug report #1279). Quincey will make a plan for 1.10.
|
||
SLU - 2010/2/2
|
||
|
||
* MinGW has a missing libstdc++.dll.a library file and will not successfully link
|
||
C++ applications/tests. Do not use the enable-cxx configure option. Read all of
|
||
the INSTALL_MINGW.txt file for all restrictions. ADB - 2009/11/11
|
||
|
||
* The PathScale MPI implementation, accessing a Panasas file system, would
|
||
cause H5Fcreate() with H5F_ACC_EXCL to fail even when the file does not
|
||
exist. This is due to the MPI_File_open() call failing if the mode has
|
||
the MPI_MODE_EXCL bit set. (See bug 1468 for details.) AKC - 2009/8/11
|
||
|
||
* Parallel tests failed with 16 processes with data inconsistency at testphdf5
|
||
/ dataset_readAll. Parallel tests also failed with 32 and 64 processes with
|
||
collective abort of all ranks at t_posix_compliant / allwrite_allread_blocks
|
||
with MPI IO. CMC - 2009/04/28
|
||
|
||
* For Red Storm, a Cray XT3 system, the tools/h5ls/testh5ls.sh and
|
||
tools/h5copy/testh5copy.sh will fail some of its sub-tests. These sub-tests
|
||
are expected to fail and should exit with a non-zero code but the yod
|
||
command does not propagate the exit code of the executables. Yod always
|
||
returns 0 if it can launch the executable. The test suite shell expects
|
||
a non-zero for this particular test, therefore it concludes the test has
|
||
failed when it receives 0 from yod. Skip all the "failing" test for now
|
||
by changing them as following.
|
||
|
||
======== Original tools/h5ls/testh5ls.sh =========
|
||
TOOLTEST tgroup-1.ls 1 -w80 -r -g tgroup.h5
|
||
======== Change to ===============================
|
||
echo SKIP TOOLTEST tgroup-1.ls 1 -w80 -r -g tgroup.h5
|
||
==================================================
|
||
|
||
======== Original tools/h5copy/testh5copy.sh =========
|
||
TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d grp_rename
|
||
TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d /grp_rename/grp_dsets
|
||
TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_dsets -d /E/F/grp_dsets
|
||
TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_nested -d /G/H/grp_nested
|
||
H5LSTEST $FILEOUT
|
||
======== Change to ===============================
|
||
echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d grp_rename
|
||
echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d /grp_rename/grp_dsets
|
||
echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_dsets -d /E/F/grp_dsets
|
||
echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_nested -d /G/H/grp_nested
|
||
echo SKIP H5LSTEST $FILEOUT
|
||
==================================================
|
||
AKC - 2008/11/10
|
||
|
||
* For Red Storm, a Cray XT3 system, the yod command sometimes gives the
|
||
message, "yod allocation delayed for node recovery". This interferes with
|
||
test suites that do not expect to see this message. See the section of "Red
|
||
Storm" in file INSTALL_parallel for a way to deal with this problem.
|
||
AKC - 2008/05/28
|
||
|
||
* On an Intel 64 Linux cluster (RH 4, Linux 2.6.9) with Intel 10.0 compilers,
|
||
use -mp -O1 compilation flags to build the libraries. A higher level of
|
||
optimization causes failures in several HDF5 library tests.
|
||
|
||
* On mpich 1.2.5 and 1.2.6, if more than two processes contribute no IO and
|
||
the application asks to do collective IO, we have found that when using 4
|
||
processors, a simple collective write will sometimes be hung. This can be
|
||
verified with t_mpi test under testpar.
|
||
|
||
* A dataset created or rewritten with a v1.6.3 library or after cannot be read
|
||
with the v1.6.2 library or before when the Fletcher32 EDC filter is enabled.
|
||
There was a bug in the calculation of the Fletcher32 checksum in the
|
||
library before v1.6.3; the checksum value was not consistent between big-
|
||
endian and little-endian systems. This bug was fixed in Release 1.6.3.
|
||
However, after fixing the bug, the checksum value was no longer the same as
|
||
before on little-endian system. Library releases after 1.6.4 can still read
|
||
datasets created or rewritten with an HDF5 library of v1.6.2 or before.
|
||
SLU - 2005/6/30
|
||
|
||
* On IBM AIX systems, parallel HDF5 mode will fail some tests with error
|
||
messages like "INFO: 0031-XXX ...". This is from the command `poe'.
|
||
Set the environment variable MP_INFOLEVEL to 0 to minimize the messages
|
||
and run the tests again.
|
||
|
||
The tests may fail with messages like "The socket name is already in use",
|
||
but HDF5 does not use sockets. This failure is due to problems with the
|
||
poe command trying to set up the debug socket. To resolve this problem,
|
||
check to see whether there are many old /tmp/s.pedb.* files staying around.
|
||
These are sockets used by the poe command and left behind due to failed
|
||
commands. First, ask your system administrator to clean them out.
|
||
Lastly, request IBM to provide a means to run poe without the debug socket.
|
||
|
||
* The --enable-static-exec configure flag will only statically link libraries
|
||
if the static version of that library is present. If only the shared version
|
||
of a library exists (i.e., most system libraries on Solaris, AIX, and Mac,
|
||
for example, only have shared versions), the flag should still result in a
|
||
successful compilation, but note that the installed executables will not be
|
||
fully static. Thus, the only guarantee on these systems is that the
|
||
executable is statically linked with just the HDF5 library.
|
||
|
||
* There is also a configure error on Altix machines that incorrectly reports
|
||
when a version of Szip without an encoder is being used.
|
||
|
||
* On cobalt, an SGI Altix SMP ia64 system, Intel compiler version 10.1 (which
|
||
is the default on that system) does not work properly and results in
|
||
failures during make check (in a static build) and make installcheck (during
|
||
a shared build). This appears to be a compiler optimization problem.
|
||
Reducing optimization by setting CFLAGS to -O1 or below resolves the issue.
|
||
Alternatively, using a newer version of the compiler (11.0) also works as
|
||
intended. MAM - 2010/06/01
|
||
|
||
* h5diff will not report enum value differences when one or both of the values
|
||
is not a valid enumeration value. The source of this bug has been identified
|
||
and it will be fixed in 1.8.8. DER - 2011/04/27
|
||
|
||
|
||
%%%%1.8.6%%%%
|
||
|
||
|
||
HDF5 version 1.8.6 released on Mon Feb 14 10:26:30 CST 2011
|
||
================================================================================
|
||
|
||
INTRODUCTION
|
||
============
|
||
|
||
This document describes the differences between HDF5-1.8.5 and
|
||
HDF5 1.8.6, and contains information on the platforms tested and
|
||
known problems in HDF5-1.8.6.
|
||
For more details, see the files HISTORY-1_0-1_8_0_rc3.txt
|
||
and HISTORY-1_8.txt in the release_docs/ directory of the HDF5 source.
|
||
|
||
Links to the HDF5 1.8.6 source code, documentation, and additional materials
|
||
can be found on the HDF5 web page at:
|
||
|
||
http://www.hdfgroup.org/products/hdf5/
|
||
|
||
The HDF5 1.8.6 release can be obtained from:
|
||
|
||
http://www.hdfgroup.org/HDF5/release/obtain5.html
|
||
|
||
User documentation for 1.8.6 can be accessed directly at this location:
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/
|
||
|
||
New features in the HDF5-1.8.x release series, including brief general
|
||
descriptions of some new and modified APIs, are described in the "What's New
|
||
in 1.8.0?" document:
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/ADGuide/WhatsNew180.html
|
||
|
||
All new and modified APIs are listed in detail in the "HDF5 Software Changes
|
||
from Release to Release" document, in the section "Release 1.8.6 (current
|
||
release) versus Release 1.8.5":
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/ADGuide/Changes.html
|
||
|
||
If you have any questions or comments, please send them to the HDF Help Desk:
|
||
|
||
help@hdfgroup.org
|
||
|
||
|
||
CONTENTS
|
||
========
|
||
|
||
- New Features
|
||
- Support for New Platforms, Languages, and Compilers
|
||
- Bug Fixes since HDF5-1.8.5
|
||
- Platforms Tested
|
||
- Supported Configuration Features Summary
|
||
- Known Problems
|
||
|
||
|
||
New Features
|
||
============
|
||
|
||
Configuration
|
||
-------------
|
||
- CMake: Improved CPack packaging, added parallel commands, improved
|
||
configuration options (better similarity to configure), added more
|
||
tests, better support for use in external cmake projects.
|
||
(ADB - 2010/10/07)
|
||
- The default configuration setting for official releases is
|
||
--enable-production. For unofficial releases, the default configuration
|
||
setting has been --disable-production. (AKC - 2010/05/28)
|
||
Library
|
||
-------
|
||
- Added support for thread safety on Windows using the Windows threads
|
||
library. Use the HDF5_ENABLE_THREADSAFE option in CMake on a Windows
|
||
platform to enable this functionality. This is supported on Windows
|
||
Vista and newer Windows operating systems. (MAM - 2010/09/10)
|
||
- H5Tset_order and H5Tget_order now support all datatypes. A new byte
|
||
order, H5T_ORDER_MIXED, has been added specifically for a compound
|
||
datatype and its derived type. (SLU - 2010/8/23)
|
||
- Improved performance of metadata I/O by changing the default algorithm
|
||
to perform I/O from all processes (instead of just process 0) when using
|
||
parallel I/O drivers. (QAK - 2010/07/19)
|
||
- Improved performance of I/O on datasets with the same shape, but
|
||
different rank. (QAK - 2010/07/19)
|
||
- Improved performance of the chunk cache by avoiding unnecessary b-tree
|
||
lookups of chunks already in cache. (NAF - 2010/06/15)
|
||
|
||
Parallel Library
|
||
----------------
|
||
- None
|
||
|
||
Tools
|
||
-----
|
||
- h5diff: Added a new flag: --exclude-path. The specified path to an
|
||
object will be excluded when comparing two files or two groups. If a
|
||
group is specified to be excluded, all member objects of that group
|
||
will be excluded. (JKM - 2010/09/16).
|
||
- h5ls: Added a new flag: --no-dangling-links. See --help output for
|
||
details. (JKM - 2010/06/15)
|
||
- h5ls: Added a new flag --follow-symlinks. See --help output for
|
||
details. (JKM - 2010/05/25)
|
||
|
||
High-Level APIs
|
||
---------------
|
||
- None
|
||
|
||
F90 API
|
||
-------
|
||
- None
|
||
|
||
C++ API
|
||
-------
|
||
- None
|
||
|
||
|
||
Support for New Platforms, Languages, and Compilers
|
||
===================================================
|
||
- Sun C and C++ 5.10 and Sun Fortran 95 8.4.
|
||
- Mac OS X 10.6.4 with gcc 4.2.1 and gfortran 4.6
|
||
|
||
|
||
Bug Fixes since HDF5-1.8.5
|
||
==========================
|
||
|
||
Configuration
|
||
-------------
|
||
- The default number of MPI processes for testing purposes has been
|
||
changed from 3 to 6. (AKC - 2010/11/11)
|
||
- Some tests in tools/h5repack may fail in AIX systems when -q32 mode is
|
||
used. The error is caused by not requesting enough memory in default.
|
||
Added "env LDR_CNTRL=MAXDATA=0x20000000@DSA" into the $RUNSERIAL and
|
||
$RUNPARALLE in the AIX config file so that executables are tested with
|
||
more memory. (AKC - 2010/11/11)
|
||
- Removed recognition of the parallel compilers of LAM(hcc) and
|
||
ChMPIon(cmpicc) since we have no access to these two MPI implementations
|
||
and cannot verify their correctness. (AKC - 2010/07/14 - Bug 1921)
|
||
- PHDF5 was changed to use "mpiexec" instead of mpirun as the default
|
||
MPI applications startup command as defined in the MPI-2 definition,
|
||
section 4.1. (AKC - 2010/06/11 - Bug 1921)
|
||
|
||
Library
|
||
-------
|
||
- Fixed a bug that caused big endian machines to generate corrupt files
|
||
when using the scale-offset filter with floating point data or fill
|
||
values. Note that such datasets will no longer be readable by any
|
||
by any machine after this patch. (NAF - 2010/02/02 - Bug 2131)
|
||
- Retrieving a link's name by index in the case where the link is external
|
||
and the file that the link refers to doesn't exist will now fail
|
||
gracefully rather than cause a segmentation fault. (MAM - 2010/11/17)
|
||
- Modified metadata accumulator to better track accumulated dirty metadata
|
||
in an effort to reduce unnecessary I/O in certain situations and to
|
||
fix some other corner cases which were prone to error. (MAM - 2010/10/15)
|
||
- Added a new set of unit tests that are run during 'make check' to verify
|
||
the behavior of the metadata accumulator. (MAM - 2010/10/15)
|
||
- Modified library to always cache symbol table information. Libraries
|
||
from version 1.6.3 and earler have a bug which causes them to require
|
||
this information for some operations. (NAF - 2010/09/21 - Bug 1864)
|
||
- Fixed a bug where the library could generate an assertion/core dump when
|
||
a file that had been created with H5Pset_libver_bounds(fapl,
|
||
H5F_LIBVER_LATEST, H5F_LIBVER_LATEST) but didn't have a superblock
|
||
extension was later reopened. (QAK - 2010/09/16 - Bug 1968)
|
||
- Fixed a bug that could occur when getting information for a new-style
|
||
group that was previously opened through a file handle that was later
|
||
closed. (NAF - 2010/09/15)
|
||
- Added define check in H5public.h if stdint.h is supported by the C++
|
||
compiler. This define is only available on Windows with VS2010 and using
|
||
CMake to build the library. (ADB - 2010/09/13 - Bug 1938)
|
||
- When a mandatory filter failed to write data chunks, the dataset
|
||
couldn't close (bug 1260). The fix releases all resources and closes
|
||
the dataset but returns a failure. (SLU - 2010/09/08)
|
||
- H5Eset_current_stack now also closes the error stack set as the
|
||
default. This is to avoid a potential problem.
|
||
(SLU - 2010/09/07 - Bug 1799)
|
||
- Corrected situation where 1-D chunked dataset could get created by an
|
||
application without calling H5Pset_chunk(). H5Pset_chunk is now
|
||
required for creating all chunked datasets. (QAK - 2010/09/02)
|
||
- Fixed many memory issues that valgrind exposed. (QAK - 2010/08/24)
|
||
- Fixed the bug in the filter's public CAN_APPLY function. The return
|
||
value should be htri_t not herr_t. (SLU - 2010/08/05 - Bug 1239)
|
||
- Fixed the STDIO VFD to use fseeko64 instead of fseek64 for 64-bit I/O
|
||
support. (AKC - 2010/7/30)
|
||
- Fixed a bug in the direct I/O driver that could render files with certain
|
||
kinds of unaligned data unreadable or corrupt them. (NAF - 2010/07/28)
|
||
- valgrind reported an error of copying data to itself when a new attribute
|
||
is written. Fixed by taking out the memcpy step in the attribute code.
|
||
(SLU - 2010/07/28 - Bug 1956)
|
||
- Corrected various issues in the MPI datatype creation code which could
|
||
cause resource leaks or incorrect behavior (and may improve the
|
||
performance as well). (QAK - 2010/07/19)
|
||
- Fixed a bug that could cause file corruption when using non-default sizes
|
||
of addresses and/or lengths. This bug could also cause uncorrupted files
|
||
with this property to be unreadable. This bug was introduced in 1.8.5.
|
||
(NAF - 2010/07/16 - Bug 1951)
|
||
|
||
Parallel Library
|
||
----------------
|
||
- None
|
||
|
||
Tools
|
||
-----
|
||
- Fixed h5diff to compare member objects and groups recursively when
|
||
two files or groups are compared. (JKM - 2010/9/16 - Bug 1975)
|
||
- Fixed h5repack to be able to convert a dataset to COMPACT layout.
|
||
(JKM - 2010/09/15 - Bug 1896)
|
||
- Changed h5ls to not interpret special characters in object or attribute
|
||
names for output. (JKM - 2010/06/28 - Bug 1784)
|
||
- Revised the order of arguments for h5cc, h5fc, h5c++, h5pcc and h5pfc.
|
||
CPPFLAGS, CFLAGS, LDFLAGS, and LIBS have been duplicated with an H5BLD_
|
||
prefix to put the flags and paths from the hdf5 build in the correct
|
||
places and allow the script user to add entries in CPPFLAGS, CFLAGS,
|
||
LDFLAGS, and LIBS that will take precedence over those from the hdf5
|
||
build. The user can make these entries persistent by editing
|
||
CFLAGSBASE, CPPFLAGSBASE, LDFLAGSBASE, and LIBSBASE near the top of
|
||
the script or temporary by setting HDF5_CFLAGS, HDF5_CPPFLAGS,
|
||
HDF5_LDFLAGS, or HDF5_LIBS in the environment. The new order of
|
||
arguments in these scripts is $CLINKER $H5BLD_CPPFLAGS $CPPFLAGS
|
||
$H5BLD_CFLAGS $CFLAGS $LDFLAGS $clibpath $link_objs $LIBS $link_args
|
||
$shared_link. (LRK - 2010/10/25 - Bug 1973)
|
||
|
||
F90 API
|
||
------
|
||
- None
|
||
|
||
C++ API
|
||
------
|
||
- None
|
||
|
||
High-Level APIs:
|
||
------
|
||
- None
|
||
|
||
Fortran High-Level APIs:
|
||
------
|
||
- None
|
||
|
||
|
||
Platforms Tested
|
||
================
|
||
The following platforms and compilers have been tested for this release.
|
||
|
||
AIX 6.1 xlc 11.1.0.3
|
||
(NCSA BP) xlC 11.1.0.3
|
||
xlf 13.1.0.3
|
||
mpcc_r 11.1.0.3
|
||
mpxlf_r 13.1.0.3
|
||
|
||
FreeBSD 6.3-STABLE i386 gcc 3.4.6 [FreeBSD] 20060305
|
||
(duty) g++ 3.4.6 [FreeBSD] 20060305
|
||
gcc 4.4.5 20100803
|
||
g++ 4.4.5 20100803
|
||
gfortran 4.4.5 20100803
|
||
|
||
FreeBSD 6.3-STABLE amd64 gcc 3.4.6 [FreeBSD] 20060305
|
||
(liberty) g++ 3.4.6 [FreeBSD] 20060305
|
||
gcc 4.4.5 20100803
|
||
g++ 4.4.5 20100803
|
||
gfortran 4.4.5 20100803
|
||
|
||
Linux 2.6.18-194.3.1.el5PAE gcc (GCC) 4.1.2 and 4.4.2
|
||
#1 SMP i686 i686 i386 G95 (GCC 4.0.3 (g95 0.93!) Apr 21 2010)
|
||
(jam) GNU Fortran (GCC) 4.1.2 20080704
|
||
(Red Hat 4.1.2-48) and 4.4.2
|
||
PGI C, Fortran, C++ 10.4-0 32-bit
|
||
PGI C, Fortran, C++ 10.6-0 32-bit
|
||
Intel(R) C Compiler for 32-bit
|
||
applications, Version 11.1
|
||
Intel(R) C++ Compiler for 32-bit
|
||
applications, Version 11.1
|
||
Intel(R) Fortran Compiler for 32-bit
|
||
applications, Version 11.1
|
||
Absoft 32-bit Fortran 95 10.0.7
|
||
MPICH mpich2-1.3.1 compiled with
|
||
gcc 4.1.2 and gfortran 4.1.2
|
||
|
||
Linux 2.6.18-194.17.1.el5 gcc 4.1.2 and 4.4.2
|
||
#1 SMP x86_64 GNU/Linux G95 (GCC 4.0.3 (g95 0.93!) Apr 21 2010)
|
||
(amani) tested for both 32- and 64-bit binaries
|
||
GNU Fortran (GCC) 4.1.2 20080704
|
||
(Red Hat 4.1.2-46) and 4.4.2
|
||
Intel(R) C, C++, Fortran Compilers for
|
||
applications running on Intel(R) 64,
|
||
Version 11.1.
|
||
PGI C, Fortran, C++ Version 9.0-4
|
||
for 64-bit target on x86-64
|
||
MPICH mpich2-1.3.1 compiled with
|
||
gcc 4.1.2 and gfortran 4.1.2
|
||
|
||
SGI ProPack 7 Linux Intel(R) C++ Version 11.1 20100806
|
||
2.6.32.19-0.3.1.1982.0.PTF- Intel(R) Fortran Version 11.1 20100806
|
||
default #1 SMP SGI MPT 2.01
|
||
SGI Altix UV
|
||
(NCSA ember)
|
||
|
||
SunOS 5.10 32- and 64-bit Sun C 5.9 Sun OS_sparc Patch 124867-16
|
||
(linew) Sun Fortran 95 8.3 Sun OS_sparc Patch 127000-13
|
||
Sun C++ 5.9 Sun OS_sparc Patch 124863-62
|
||
Sun C 5.10 SunOS_sparc Patch 141861-07
|
||
Sun Fortran 95 8.4 SunOS_sparc Patch 128231-06
|
||
Sun C++ 5.10 SunOS_sparc 128228-11
|
||
|
||
Intel Xeon Linux 2.6.18- gcc 4.2.4
|
||
92.1.10.el5_lustre.1.6.6smp- Intel(R) C++ Version 10.1.017
|
||
perfctr #8 SMP Intel(R) Fortran Compiler Version 10.1.017
|
||
(NCSA abe) Open MPI 1.3.2
|
||
MVAPICH2-1.5.1_pgi-10.8
|
||
|
||
Windows XP Visual Studio 2008 w/ Intel Fortran 10.1 (project files)
|
||
Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
|
||
Visual Studio 2010 (cmake)
|
||
Cygwin(1.7.7 native gcc(4.3.4) compiler and gfortran)
|
||
|
||
Windows XP x64 Visual Studio 2008 w/ Intel Fortran 10.1 (project files)
|
||
Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
|
||
Visual Studio 2010 (cmake)
|
||
Cygwin(1.7.7 native gcc(4.3.4) compiler and gfortran)
|
||
|
||
Windows Vista Visual Studio 2008 w/ Intel Fortran 10.1 (project files)
|
||
Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
|
||
|
||
Windows Vista x64 Visual Studio 2008 w/ Intel Fortran 10.1 (project files)
|
||
Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
|
||
|
||
Windows 7 Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
|
||
|
||
Windows 7 x64 Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
|
||
|
||
Mac OS X 10.6.3 (Intel 64-bit) i686-apple-darwin10-gcc-4.2.1 (GCC) 4.2.1
|
||
Darwin Kernel Version 10.3.1 GNU Fortran (GCC) 4.5.0 20090910
|
||
Intel C, C++ and Fortran compilers 11.1 20100806
|
||
|
||
Mac OS X 10.6.4 (Intel 32-bit) i686-apple-darwin10-gcc-4.2.1 (GCC) 4.2.1
|
||
Darwin Kernel Version 10.4.0 GNU Fortran (GCC) 4.6.0 20101106
|
||
Intel C, C++ and Fortran compilers 12.0.0 20101110
|
||
|
||
Mac OS X 10.6.4 (Intel 64-bit) i686-apple-darwin10-gcc-4.2.1 (GCC) 4.2.1 (Apple Inc. build 5659)
|
||
Darwin Kernel Version 10.6.0 GNU Fortran (GCC) 4.5.0 20090910
|
||
Intel C, C++ and Fortran compilers 11.1 20100806
|
||
|
||
Fedora 12 2.6.32.16-150.fc12.ppc64 #1 SMP ppc64 GNU/Linux
|
||
gcc (GCC) 4.4.4 20100630 (Red Hat 4.4.4-10)
|
||
GNU Fortran (GCC) 4.4.4 20100630 (Red Hat 4.4.4-10)
|
||
|
||
Debian5.06 2.6.26-2-686 #1 SMP i686 GNU/Linux
|
||
gcc (Debian 4.3.2-1.1) 4.3.2
|
||
GNU Fortran (Debian 4.3.2-1.1) 4.3.2
|
||
|
||
Debian5.06 2.6.26-2-amd64 #1 SMP x86_64 GNU/Linux
|
||
gcc (Debian 4.3.2-1.1) 4.3.2
|
||
GNU Fortran (Debian 4.3.2-1.1) 4.3.2
|
||
|
||
Fedora14 2.6.35.6-48.fc14.i686.PAE #1 SMP i686 i686 i386 GNU/Linux
|
||
gcc (GCC) 4.5.1 20100924 (Red Hat 4.5.1-4)
|
||
GNU Fortran (GCC) 4.5.1 20100924 (Red Hat 4.5.1-4)
|
||
|
||
Fedora14 2.6.35.6-48.fc14.x86_64 #1 SMP x86_64 x86_64 x86_64 GNU/Linux
|
||
gcc (GCC) 4.5.1 20100924 (Red Hat 4.5.1-4)
|
||
GNU Fortran (GCC) 4.5.1 20100924 (Red Hat 4.5.1-4)
|
||
|
||
SUSE 11.3 2.6.34.7-0.7-desktop #1 SMP PREEMPT i686 i686 i386 GNU/Linux
|
||
gcc (SUSE Linux) 4.5.0 20100604 [gcc-4_5-branch revision 160292]
|
||
GNU Fortran (SUSE Linux) 4.5.0 20100604 [gcc-4_5-branch revision 160292]
|
||
|
||
SUSE 11.3 2.6.34.7-0.7-desktop #1 SMP PREEMPT x86_64 x86_64 x86_64 GNU/Linux
|
||
gcc (SUSE Linux) 4.5.0 20100604 [gcc-4_5-branch revision 160292]
|
||
GNU Fortran (SUSE Linux) 4.5.0 20100604 [gcc-4_5-branch revision 160292]
|
||
|
||
Ubuntu 10.10 2.6.35-25-generic #44-Ubuntu SMP i686 GNU/Linux
|
||
gcc (Ubuntu/Linaro 4.4.4-14ubuntu5) 4.4.5
|
||
GNU Fortran (Ubuntu/Linaro 4.4.4-14ubuntu5) 4.4.5
|
||
|
||
Ubuntu 10.10 2.6.35-25-generic #44-Ubuntu SMP x86_64 GNU/Linux
|
||
gcc (Ubuntu/Linaro 4.4.4-14ubuntu5) 4.4.5
|
||
GNU Fortran (Ubuntu/Linaro 4.4.4-14ubuntu5) 4.4.5
|
||
|
||
OpenVMS Alpha 8.3 HP C V7.3-009
|
||
HP Fortran V8.2-104679-48H9K
|
||
HP C++ V7.3-009
|
||
|
||
Tested Configuration Features Summary
|
||
========================================
|
||
|
||
In the tables below
|
||
y = tested
|
||
n = not tested in this release
|
||
C = Cluster
|
||
W = Workstation
|
||
x = not working in this release
|
||
dna = does not apply
|
||
( ) = footnote appears below second table
|
||
<blank> = testing incomplete on this feature or platform
|
||
|
||
Platform C F90 F90 C++ zlib SZIP
|
||
parallel parallel
|
||
Solaris2.10 32-bit n y n y y y
|
||
Solaris2.10 64-bit n y n y y y
|
||
Windows XP n y(4) n y y y
|
||
Windows XP x64 n y(4) n y y y
|
||
Windows Vista n y(4) n y y y
|
||
Windows Vista x64 n y(4) n y y y
|
||
OpenVMS Alpha n y n y y n
|
||
Mac OS X 10.6 Intel n y n y y y
|
||
AIX 6.1 32- and 64-bit y y y y y y
|
||
FreeBSD 6.3-STABLE 32&64 bit n y n y y y
|
||
CentOS 5.5 Linux 2.6.18-194 i686 GNU (1)W y y(2) y y y y
|
||
CentOS 5.5 Linux 2.6.18-194 i686 Intel W n y n y y n
|
||
CentOS 5.5 Linux 2.6.18-194 i686 PGI W n y n y y n
|
||
CentOS 5.5 Linux 2.6.16 x86_64 GNU (1) W y y(3) y y y y
|
||
CentOS 5.5 Linux 2.6.16 x86_64 Intel W n y n y y n
|
||
CentOS 5.5 Linux 2.6.16 x86_64 PGI W n y n y y y
|
||
RedHat EL4 2.6.18 Xeon Lustre C y y y y y n
|
||
Fedora 12 Linux 2.6.32.16-150.fc12.ppc64 n y n y y y
|
||
SGI Linux 2.6.32.19 y y y y y y
|
||
|
||
|
||
Platform Shared Shared Shared Thread-
|
||
C libs F90 libs C++ libs safe
|
||
Solaris2.10 32-bit y y y y
|
||
Solaris2.10 64-bit y y y y
|
||
Windows XP y y(4) y n
|
||
Windows XP x64 y y(4) y n
|
||
Windows Vista y y(4) y y
|
||
Windows Vista x64 y y(4) y y
|
||
OpenVMS Alpha n n n n
|
||
Mac OS X 10.6 y(5) n y n
|
||
AIX 6.1 32- and 64-bit n n n y
|
||
FreeBSD 6.3-STABLE 32&64 bit y n y y
|
||
CentOS 5.5 Linux 2.6.18-128 i686 GNU (1)W y y(2) y y
|
||
CentOS 5.5 Linux 2.6.18-128 i686 Intel W y y y n
|
||
CentOS 5.5 Linux 2.6.18-128 i686 PGI W y y y n
|
||
CentOS 5.5 Linux 2.6.16 x86_64 GNU (1) W y y y y
|
||
CentOS 5.5 Linux 2.6.16 x86_64 Intel W y y y n
|
||
CentOS 5.5 Linux 2.6.16 x86_64 PGI W y y y n
|
||
RedHat EL4 2.6.18 Xeon Lustre C y y y n
|
||
Fedora 12 Linux 2.6.32.16-150.fc12.ppc64 y y y y
|
||
SGI Linux 2.6.32.19 y y y y
|
||
|
||
(1) Fortran compiled with gfortran.
|
||
(2) With PGI and Absoft compilers.
|
||
(3) With PGI compiler for Fortran.
|
||
(4) Using Visual Studio 2008 w/ Intel Fortran 10.1 (Cygwin shared libraries are not supported)
|
||
(5) C and C++ shared libraries will not be built when Fortran is enabled.
|
||
Compiler versions for each platform are listed in the preceding
|
||
"Platforms Tested" table.
|
||
|
||
|
||
Known Problems
|
||
==============
|
||
* examples/run-all-ex.sh does not work on Cygwin. (NAF - 2011/02/11)
|
||
|
||
* Parallel test, t_shapesame in testpar, is rather unstable as it continues to
|
||
have occasional errors in AIX and quite often in NCSA Abe. It is being built
|
||
but it is not run automatically in the "make check" command. One would have to
|
||
run it by hand to see if it works in a particular machine. AKC - 2011/01/28
|
||
|
||
* Although OpenVMS Alpha is supported, there are several problems with the C
|
||
test suite - getname.c, lheap.c, lheap.c, mtime.c, and stab.c. The test
|
||
suite for h5diff also fails. These failures are from the tests, not the
|
||
library. We have fixed these failures. But it's too late to put the fixes
|
||
into this release. If you install the 1.8.6 library, it should still work
|
||
despite of these test failures. If you want the working copy without any
|
||
test failure, you can request it from us. SLU - 2011/01/26
|
||
|
||
* If parallel gmake (e.g., gmake -j 4) is used, the "gmake clean" command
|
||
sometimes fails in the perform directory due to the attempt to remove the
|
||
executable of h5perf or h5perf_serial by two "parallel" commands. This error
|
||
has no consequence on the functionality of the HDF5 library or install. It
|
||
is fixed in the next release. AKC - 2011/01/25
|
||
|
||
* While working on the 1.8.6 release of HDF5, a bug was discovered that can
|
||
occur when reading from a dataset in parallel shortly after it has been
|
||
written to collectively. The issue was exposed by a new test in the parallel
|
||
HDF5 test suite, but had existed before that. We believe the problem lies with
|
||
certain MPI implementations and/or filesystems.
|
||
|
||
We have provided a pure MPI test program, as well as a standalone HDF5
|
||
program, that can be used to determine if this is an issue on your system.
|
||
They should be run across multiple nodes with a varying number of processes.
|
||
These programs can be found at:
|
||
http://www.hdfgroup.org/ftp/HDF5/examples/known_problems/
|
||
|
||
* The h5diff tool can display garbage values when variable-length strings in
|
||
a compound type dataset are compared. This also occurs with variable-length
|
||
string arrays in a compound type dataset. See bug #1989. This will be fixed
|
||
in the next release. JKM - 2010/11/05
|
||
|
||
* The AIX --enable-shared setting does not quite work. It can produce a shared
|
||
library, but there cannot be more than one shared library that is
|
||
interlinked. This means that the high level APIs will not work which is not
|
||
very useful. We hope to have a solution in the next release.
|
||
(AKC - 2010/10/15)
|
||
|
||
* H5Eset_auto can cause a seg fault for a library API call if the application
|
||
compiles with -DH5_USE_16_API (see bug 1707). It will be fixed in the
|
||
next release. SLU - 2010/10/5
|
||
|
||
* The library's test dt_arith.c showed a compiler's rounding problem on
|
||
Cygwin when converting an unsigned long long to a long double. The
|
||
library's own conversion works fine. We defined a macro for Cygwin to
|
||
skip this test until we can solve the problem. Please see bug #1813.
|
||
SLU - 2010/5/5
|
||
|
||
* All the VFL drivers aren't backwardly compatible. In H5FDpublic.h, the
|
||
structure H5FD_class_t changed in 1.8. A new parameter was added to the
|
||
get_eoa and set_eoa callback functions, and a new callback function
|
||
get_type_map was added. The public function H5FDrealloc was taken out in
|
||
1.8. The problem only happens when users define their own driver for 1.6
|
||
and try to plug in a 1.8 library. This will be fixed in 1.10. SLU - 2010/2/2
|
||
|
||
* MinGW has a missing libstdc++.dll.a library file and will not successfully link
|
||
C++ applications/tests. Do not use the enable-cxx configure option. Read all of
|
||
the INSTALL_MINGW.txt file for all restrictions. ADB - 2009/11/11
|
||
|
||
* The PathScale MPI implementation, accessing a Panasas file system, would
|
||
cause H5Fcreate() with H5F_ACC_EXCL to fail even when the file does not
|
||
exist. This is due to the MPI_File_open() call failing if the amode has
|
||
the MPI_MODE_EXCL bit set. (See bug 1468 for details.) AKC - 2009/8/11
|
||
|
||
* Parallel tests failed with 16 processes with data inconsistency at testphdf5
|
||
/ dataset_readAll. Parallel tests also failed with 32 and 64 processes with
|
||
collective abort of all ranks at t_posix_compliant / allwrite_allread_blocks
|
||
with MPI IO. CMC - 2009/04/28
|
||
|
||
* For Red Storm, a Cray XT3 system, the tools/h5ls/testh5ls.sh and
|
||
tools/h5copy/testh5copy.sh will fail some of their sub-tests. These
|
||
sub-tests are expected to fail and should exit with a non-zero code but
|
||
the yod command does not propagate the exit code of the executables. Yod
|
||
always returns 0 if it can launch the executable. The test suite shell
|
||
expects a non-zero for this particular test. Therefore, it concludes the
|
||
test has failed when it receives 0 from yod. To skip all the "failing"
|
||
tests for now, change them as shown below.
|
||
|
||
======== Original tools/h5ls/testh5ls.sh =========
|
||
TOOLTEST tgroup-1.ls 1 -w80 -r -g tgroup.h5
|
||
======== Change to ===============================
|
||
echo SKIP TOOLTEST tgroup-1.ls 1 -w80 -r -g tgroup.h5
|
||
==================================================
|
||
|
||
======== Original tools/h5copy/testh5copy.sh =========
|
||
TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d grp_rename
|
||
TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d /grp_rename/grp_dsets
|
||
TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_dsets -d /E/F/grp_dsets
|
||
TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_nested -d /G/H/grp_nested
|
||
H5LSTEST $FILEOUT
|
||
======== Change to ===============================
|
||
echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d grp_rename
|
||
echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d /grp_rename/grp_dsets
|
||
echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_dsets -d /E/F/grp_dsets
|
||
echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_nested -d /G/H/grp_nested
|
||
echo SKIP H5LSTEST $FILEOUT
|
||
==================================================
|
||
AKC - 2008/11/10
|
||
|
||
* For Red Storm, a Cray XT3 system, the yod command sometimes gives the
|
||
message "yod allocation delayed for node recovery." This interferes
|
||
with test suites that do not expect to see this message. See the "Red Storm"
|
||
section in file INSTALL_parallel for a way to deal with this problem.
|
||
AKC - 2008/05/28
|
||
|
||
* On an Intel 64 Linux cluster (RH 4, Linux 2.6.9) with Intel 10.0 compilers,
|
||
use the -mp -O1 compilation flags to build the libraries. A higher level
|
||
of optimization causes failures in several HDF5 library tests.
|
||
|
||
* On mpich 1.2.5 and 1.2.6 on a system using four processors, if more than
|
||
two processes contribute no I/O and the application asks to do collective
|
||
I/O, we have found that a simple collective write will sometimes hang. This
|
||
can be verified with the t_mpi test under testpar.
|
||
|
||
* A dataset created or rewritten with a v1.6.3 or later library cannot be
|
||
read with the v1.6.2 or earlier library when the Fletcher32 EDC filter
|
||
is enabled. There was a bug in the calculation of the Fletcher32 checksum
|
||
in the library before v1.6.3; the checksum value was not consistent
|
||
between big-endian and little-endian systems. This bug was fixed in
|
||
Release 1.6.3. However, after fixing the bug, the checksum value was no
|
||
longer the same as before on little-endian system. Library releases after
|
||
1.6.4 can still read datasets created or rewritten with an HDF5 library of
|
||
v1.6.2 or earlier. SLU - 2005/6/30
|
||
|
||
* On IBM AIX systems, parallel HDF5 mode will fail some tests with error
|
||
messages like "INFO: 0031-XXX ...". This is from the command `poe'. To
|
||
work around this, set the environment variable MP_INFOLEVEL to 0 to
|
||
minimize the messages and run the tests again. The tests may fail with
|
||
messages like "The socket name is already in use", but HDF5 does not use
|
||
sockets. This failure is due to problems with the poe command trying to
|
||
set up the debug socket. To resolve this problem, check to see whether
|
||
there are any old /tmp/s.pedb.* files around. These are sockets used by
|
||
the poe command and left behind if the command failed at some point. To
|
||
resolve this, ask your system administrator to remove the
|
||
old/tmp/s.pedb.* files, and then ask IBM to provide a means to run poe
|
||
without the debug socket.
|
||
|
||
* The --enable-static-exec configure flag will only statically link
|
||
libraries if the static version of that library is present. If only the
|
||
shared version of a library exists (i.e., most system libraries on
|
||
Solaris, AIX, and Mac, for example, only have shared versions), the flag
|
||
should still result in a successful compilation, but note that the
|
||
installed executables will not be fully static. Thus, the only guarantee
|
||
on these systems is that the executable is statically linked with just
|
||
the HDF5 library.
|
||
|
||
* On an SGI Altix SMP ia64 system, the Intel compiler version 10.1 (which
|
||
is the default on that system) does not work properly and results in
|
||
failures during the make check (in a static build) and the make
|
||
installcheck (in a shared build). This appears to be a compiler
|
||
optimization problem. Reducing the optimization by setting CFLAGS to
|
||
-O1 or below resolves the issue. Using a newer version of the compiler
|
||
(11.0) avoids the issue. MAM - 2010/06/01
|
||
|
||
* On solaris systems, when running the examples with the scripts installed in
|
||
.../share/hdf5_examples, two of the c tests, h5_extlink and h5_elink_unix2win
|
||
may fail or generate HDF5 errors because the script commands in c/run-c-ex.sh
|
||
fail to create test directories red, blue, and u2w. Moving the '!' in lines
|
||
67, 70, 73 of run-c-ex.sh will fix the problem. For example the script command
|
||
"if ! test -d red; then" will work on solaris if changed to
|
||
"if test ! -d red; then".
|
||
|
||
|
||
%%%%1.8.5%%%%
|
||
|
||
|
||
HDF5 version 1.8.5 released on Fri Jun 4 13:27:31 CDT 2010
|
||
================================================================================
|
||
|
||
INTRODUCTION
|
||
============
|
||
|
||
This document describes the differences between HDF5-1.8.4 and HDF5 1.8.5, and
|
||
contains information on the platforms tested and known problems in HDF5-1.8.5.
|
||
For more details, see the files HISTORY-1_0-1_8_0_rc3.txt and HISTORY-1_8.txt
|
||
in the release_docs/ directory of the HDF5 source.
|
||
|
||
Links to the HDF5 1.8.5 source code, documentation, and additional materials
|
||
can be found on the HDF5 web page at:
|
||
|
||
http://www.hdfgroup.org/products/hdf5/
|
||
|
||
The HDF5 1.8.5 release can be obtained from:
|
||
|
||
http://www.hdfgroup.org/HDF5/release/obtain5.html
|
||
|
||
User documentation for 1.8.5 can be accessed directly at this location:
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/
|
||
|
||
New features in the HDF5-1.8.x release series, including brief general
|
||
descriptions of some new and modified APIs, are described in the "What's New
|
||
in 1.8.0?" document:
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/ADGuide/WhatsNew180.html
|
||
|
||
All new and modified APIs are listed in detail in the "HDF5 Software Changes
|
||
from Release to Release" document, in the section "Release 1.8.5 (current
|
||
release) versus Release 1.8.4":
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/ADGuide/Changes.html
|
||
|
||
If you have any questions or comments, please send them to the HDF Help Desk:
|
||
|
||
help@hdfgroup.org
|
||
|
||
|
||
CONTENTS
|
||
========
|
||
|
||
- New Features
|
||
- Support for New Platforms, Languages, and Compilers
|
||
- Bug Fixes since HDF5-1.8.4
|
||
- Platforms Tested
|
||
- Supported Configuration Features Summary
|
||
- Known Problems
|
||
|
||
|
||
New Features
|
||
============
|
||
|
||
Configuration
|
||
-------------
|
||
- CMake Early Access: This release adds support for building HDF5 using
|
||
the CMake system. Initial work has targeted Windows, but other platforms
|
||
can be used. See the CMake.TXT file for more information. Version
|
||
2.8.1 of CMake is required.
|
||
- Configure now adds appropriate defines for supporting large (64-bit)
|
||
files on all systems, where supported, by default, instead of only Linux.
|
||
This large file support is controllable with the --enable-largefile
|
||
configure option. The Linux-specific --enable-linux-lfs option has been
|
||
deprecated in favor of this new option. Please note that specifying
|
||
--disable-large does NOT attempt to "turn off" largefile support if it
|
||
is natively supported by the compiler, but rather just disables
|
||
configure from actively trying to add any additional compiler flags.
|
||
(MAM - 2010/05/05 - Bug # 1772/1434)
|
||
- Fixed an signal handling mask error in H5detect that might result in
|
||
SIGBUS or SIGSEGV failures in some platforms such as Linux on Sparc.
|
||
(AKC - 2010/4/28 - Bug # 1764)
|
||
- Fixed various "strict aliasing" problems, allowing higher levels
|
||
of compiler optimization (in particular, allowing '-O3' to work
|
||
with recent versions of GCC). (QAK - 2010/04/26)
|
||
- Upgraded versions of autotools used to generate configuration suite.
|
||
We now use Automake 1.11.1, Autoconf 2.65, and Libtool 2.2.6b.
|
||
(MAM - 2010/04/15)
|
||
- Added the xlc-* and mpcc_r-* BASENAME patterns to be recognized as IBM
|
||
compilers so that the IBM compiler options can be added properly. This
|
||
allows non-system-default compiler command names (e.g. xlc-m.n.k.l) be
|
||
recognized. (AKC - 2009/11/26)
|
||
|
||
Library
|
||
-------
|
||
- Performance is substantially improved when extending a dataset with early
|
||
allocation. (NAF - 2010/03/24 - Bug # 1637)
|
||
- Added support for filtering densely stored groups. Many of the API
|
||
functions related to filters have been extended to support dense groups
|
||
as well as datasets. Pipeline messages can now be stored in a group's
|
||
object header. (NAF/QAK - 2009/11/3)
|
||
|
||
Parallel Library
|
||
----------------
|
||
- None
|
||
|
||
Tools
|
||
-----
|
||
- h5dump: Added the new packed bits feature which prints packed bits stored
|
||
in an integer dataset. (AKC/ADB - 2010/5/7)
|
||
- h5diff: Fixed incorrect behavior (hang) in parallel mode when specifying
|
||
invalid options (ex: -v and -q). (JKM - 2010/02/17)
|
||
- h5diff: Added new flag --no-dangling-links (see --help for details).
|
||
(JKM - 2010/02/10)
|
||
- h5diff: Added new flag --follow-symlinks (see --help for details).
|
||
(JKM - 2010/01/25)
|
||
- h5diff: Added a fix to correct the display of garbage values when
|
||
displaying big-endian data on a little-endian machine. (JKM - 2009/11/20)
|
||
|
||
High-Level APIs
|
||
---------------
|
||
- None
|
||
|
||
F90 API
|
||
-------
|
||
- None
|
||
|
||
C++ API
|
||
-------
|
||
- New member functions
|
||
+ Overloaded CommonFG::getObjnameByIdx to take char* for name.
|
||
+ Overloaded CommonFG::getObjTypeByIdx to return type name as a char*.
|
||
(BMR - 2010/05/10)
|
||
+ Added DataSet::getInMemDataSize() to simplify getting the dataset's
|
||
data size in memory. (BMR - 2009/07/26)
|
||
|
||
|
||
Support for New Platforms, Languages, and Compilers
|
||
===================================================
|
||
- AIX 6.1 has been added. (AKC - 2010/1/4)
|
||
|
||
|
||
Bug Fixes since HDF5-1.8.4
|
||
==========================
|
||
|
||
Configuration
|
||
-------------
|
||
- Fixed various "strict aliasing" problems, allowing higher levels
|
||
of compiler optimization (in particular, allowing '-O3' to work
|
||
with recent versions of GCC). (QAK - 2010/04/26)
|
||
|
||
Library
|
||
-------
|
||
- Fixed a file corruption bug that could happen when shrinking a compressed
|
||
dataset. (NAF - 2010/05/20)
|
||
- Fixed some memory leaks in VL datatype conversion when strings are
|
||
used as fill values. (MAM - 2010/05/12 - Bug # 1826)
|
||
- Fixed an H5Rcreate failure when passing in a -1 for the dataspace
|
||
identifier. (ADB - 2010/4/28)
|
||
- Fixed a bug when copying objects with NULL references with the
|
||
H5O_COPY_EXPAND_REFERENCE_FLAG flag set. (NAF - 2010/04/08 - Bug # 1815)
|
||
- Added a mechanism to the H5I interface to save returned object identifier
|
||
structures for immediate re-use if needed. This addresses a potential
|
||
performance issue by delaying the case when the next identifier to be
|
||
registered has grown so large that it wraps around and needs to be
|
||
checked to see whether it is available for distribution.
|
||
(MAM - 2010/03/15 - Bug # 1730)
|
||
- Files can now be concurrently opened more than once using the core file
|
||
driver, as long as the backing store is used. (NAF - 2010/03/09)
|
||
- Added support for H5O_COPY_EXPAND_EXT_LINK_FLAG to H5Ocopy. External
|
||
links will now be expanded if this flag is set.
|
||
(NAF - 2010/03/05 - Bug # 1733)
|
||
- Fixed a bug where the library, when traversing an external link, would
|
||
reopen the source file if nothing else worked. (NAF - 2010/03/05)
|
||
- Fixed a bug where fractal heap identifiers for attributes and shared
|
||
object header messages could be incorrectly encoded in the file for
|
||
files created on big-endian platforms.
|
||
Please see http://www.hdfgroup.org/HDF5/release/known_problems if you
|
||
suspect you have a file with this problem.
|
||
(QAK - 2010/02/23 - Bug # 1755)
|
||
- Fixed an intermittent bug in the b-tree code which could be triggered
|
||
by expanding and shrinking chunked datasets in certain ways.
|
||
(NAF - 2010/02/16)
|
||
- H5Tdetect_class said a VL string is a string type. But when it's in
|
||
a compound type, it said it's a VL type. THis has been fixed to be
|
||
consistent; it now always returns a string type.
|
||
(SLU - 2009/12/10 - Bug # 1584)
|
||
- Allow "child" files from external links to be correctly located when
|
||
relative to a "parent" file that is opened through a symbolic link.
|
||
(QAK - 2009/12/01)
|
||
|
||
Parallel Library
|
||
----------------
|
||
- Parallel mode in AIX will fail some of the testcheck_version.sh tests
|
||
where it treats "exit(134) the same as if process 0 had received an abort
|
||
signal. Fixed. (AKC - 2009/11/3)
|
||
|
||
Tools
|
||
-----
|
||
- Fixed h5ls to return exit code 1 (error) when a non-existent file is
|
||
specified. (JKM - 2010/04/27 - Bug # 1793)
|
||
- Fixed h5copy failure when copying a dangling link that is specified
|
||
directly. (JKM - 2010/04/22 - Bug # 1817)
|
||
- Fixed an h5repack failure that lost attributes from a dataset of
|
||
reference type. (JKM - 2010/3/25 - Bug # 1726)
|
||
- Fixed h5repack error that set NULL for object reference values for
|
||
datasets, groups, or named datatypes. (JKM - 2010/03/19 - Bug # 1814)
|
||
|
||
F90 API
|
||
------
|
||
- None
|
||
|
||
C++ API
|
||
------
|
||
- The constructor PropList::PropList(id) was fixed to act properly
|
||
according to the nature of 'id'. When 'id' is a property class
|
||
identifier, a new property list will be created. When 'id' is a
|
||
property list identifier, a copy of the property list will be made.
|
||
(BMR - 2010/5/9)
|
||
- The parameters 'size' and 'bufsize' in CommonFG::getLinkval and
|
||
CommonFG::getComment, respectively, now have default values for the
|
||
user's convenience. (BMR - 2009/10/23)
|
||
- NULL pointer accessing was fixed. (BMR - 2009/10/05 - Bug # 1061)
|
||
- Read/write methods of DataSet and Attribute classes were fixed
|
||
to handle string correctly. (BMR - 2009/07/26)
|
||
|
||
High-Level APIs:
|
||
------
|
||
- Fixed a bug in H5DSattach_scale, H5DSis_attached, and H5DSdetach_scale
|
||
caused by using the H5Tget_native_type function to determine the native
|
||
type for reading the REFERENCE_LIST attribute. This bug was exposed
|
||
on Mac PPC. (EIP - 2010/05/22 - Bug # 1851)
|
||
- Fixed a bug in the H5DSdetach_scale function when 0 bytes were
|
||
allocated after the last reference to a dimension scale was removed
|
||
from the list of references in a VL element of the DIMENSION_LIST
|
||
attribute. Modified the function to comply with the specification:
|
||
the DIMENSION_LIST attribute is now deleted when no dimension scales
|
||
are left attached. (EIP - 2010/05/14 - Bug # 1822)
|
||
|
||
Fortran High-Level APIs:
|
||
------
|
||
- None
|
||
|
||
|
||
Platforms Tested
|
||
================
|
||
The following platforms and compilers have been tested for this release.
|
||
|
||
AIX 5.3 xlc 7.0.0.9, 8.0.0.20, 9.0.0.4
|
||
(LLNL Up) xlC 7.0.0.9, 8.0.0.20, 9.0.0.4
|
||
xlf 9.1.0.9, 10.1.0.9, 11.1.0.7
|
||
mpcc_r 7.0.0.9
|
||
mpxlf_r 09.01.0000.0008
|
||
|
||
AIX 6.1 xlc 10.1.0.6
|
||
(NCSA BP) xlC 10.1.0.6
|
||
xlf 12.1.0.7
|
||
|
||
Cray XT3 (2.1.56) cc (pgcc) 10.0-0
|
||
(SNL red storm) ftn (pgf90) 10.0-0
|
||
CC (pgCC) 10.0-0
|
||
|
||
FreeBSD 6.3-STABLE i386 gcc 3.4.6 [FreeBSD] 20060305
|
||
(duty) g++ 3.4.6 [FreeBSD] 20060305
|
||
gcc 4.3.4 20090419
|
||
g++ 4.3.4 20090419
|
||
gfortran 4.3.4 20090419
|
||
|
||
FreeBSD 6.3-STABLE amd64 gcc 3.4.6 [FreeBSD] 20060305
|
||
(liberty) g++ 3.4.6 [FreeBSD] 20060305
|
||
gcc 4.4.1 20090421
|
||
g++ 4.4.1 20090421
|
||
gfortran 4.4.1 20090421
|
||
|
||
Linux 2.6.18-128.1.6.el5xen gcc (GCC) 4.1.2 20080704 and 4.4.2
|
||
#1 SMP i686 i686 i386 GNU Fortran (GCC) 4.1.2 20080704 and 4.4.2
|
||
(jam) g++ (GCC) 4.1.2 20080704 and 4.4.2
|
||
G95 (GCC 4.0.3 (g95 0.93!) Apr 21 2010)
|
||
Absoft 32-bit Fortran 95 10.0.7
|
||
PGI C, Fortran, C++ 10.4-0 32-bit
|
||
Intel(R) C, C++, Fortran Compilers for 32-bit
|
||
applications, Version 11.1 Build 20090827
|
||
MPICH mpich2-1.0.8 compiled with
|
||
gcc 4.1.2 and GNU Fortran (GCC) 4.1.2
|
||
|
||
Linux 2.6.18-164.el5 #1 SMP gcc 4.1.2 20080704 and gcc 4.4.2
|
||
x86_64 GNU/Linux GNU Fortran (GCC) 4.1.2 20080704 and 4.4.2
|
||
(amani) g++ (GCC) 4.1.2 20080704 and 4.4.2
|
||
G95 (GCC 4.0.3 (g95 0.93!) Apr 21 2010)
|
||
Intel(R) C, C++, Fortran Compilers for
|
||
applications running on Intel(R) 64,
|
||
Version 11.1 Build 20090827.
|
||
PGI C, Fortran, C++ Version 10.4-0
|
||
for 32 & 64-bit target on x86-64
|
||
MPICH mpich2-1.0.8 compiled with
|
||
gcc 4.1.2 and GNU Fortran (GCC) 4.1.2
|
||
|
||
Linux 2.6.16.54-0.2.5 #1 Intel(R) C++ Version 11.0.074
|
||
SGI Altix SMP ia64 Intel(R) Fortran Itanium(R) Version 11.0.074
|
||
(cobalt) SGI MPI 1.38
|
||
|
||
SunOS 5.10 32- and 64-bit Sun C 5.9 SunOS_sparc Patch 124867-14
|
||
(linew) Sun Fortran 95 8.3 SunOS_sparc
|
||
Patch 127000-13
|
||
Sun C++ 5.9 SunOS_sparc Patch 124863-23
|
||
|
||
Intel Xeon Linux 2.6.18- Intel(R) C++ Version 10.0.026
|
||
92.1.10.el5_lustre.1.6.6smp- Intel(R) Fortran Compiler Version 10.0.026
|
||
perfctr #7 SMP Open MPI 1.2.2
|
||
(abe) MVAPICH2-0.9.8p28p2patched-intel-ofed-1.2
|
||
compiled with icc v10.0.026 and ifort 10.0.026
|
||
|
||
Linux 2.6.18-76chaos #1 SMP Intel(R) C, C++, Fortran Compilers for
|
||
SMP x86_64 GNU/Linux applications running on Intel(R) 64,
|
||
(SNL Glory) Versions 11.1.
|
||
|
||
Windows XP Visual Studio 2008 w/ Intel Fortran 10.1
|
||
Cygwin(1.7.5 native gcc(4.3.4) compiler and
|
||
gfortran)
|
||
|
||
Windows XP x64 Visual Studio 2008 w/ Intel Fortran 10.1
|
||
|
||
Windows Vista Visual Studio 2008 w/ Intel Fortran 10.1
|
||
|
||
Windows Vista x64 Visual Studio 2008 w/ Intel Fortran 10.1
|
||
|
||
MAC OS 10.6.3 (Intel) i686-apple-darwin10-gcc-4.2.1 (GCC) 4.2.1
|
||
(pahra) GNU Fortran (GCC) 4.5.0 20090910
|
||
i686-apple-darwin10-g++-4.2.1 (GCC) 4.2.1
|
||
Intel C, C++ and Fortran compilers 11.1
|
||
|
||
MAC OS 10.5.8 (Intel) i686-apple-darwin9-gcc-4.0.1 (GCC) 4.0.1
|
||
(tejeda)
|
||
|
||
MAC OS 10.5 (PPC) powerpc-apple-darwin9-gcc-4.0.1 (GCC) 4.0.1
|
||
(juniper-w)
|
||
|
||
OpenVMS Alpha V8.3 HP C V7.3-009
|
||
HP C++ V7.3-009
|
||
HP Fortran V8.0-1-104669-48GBT
|
||
|
||
Supported Configuration Features Summary
|
||
========================================
|
||
|
||
In the tables below
|
||
y = tested and supported
|
||
n = not supported or not tested in this release
|
||
C = Cluster
|
||
W = Workstation
|
||
x = not working in this release
|
||
dna = does not apply
|
||
( ) = footnote appears below second table
|
||
<blank> = testing incomplete on this feature or platform
|
||
|
||
Platform C F90 F90 C++ zlib SZIP
|
||
parallel parallel
|
||
Solaris2.10 32-bit n y n y y y
|
||
Solaris2.10 64-bit n y n y y y
|
||
Windows XP n y(4) n(4) y y y
|
||
Windows XP x64 n y(4) n(4) y y y
|
||
Windows Vista n y(4) n(4) y y y
|
||
Windows Vista x64 n y(4) n(4) y y y
|
||
Mac OS X 10.5 PPC n n n n y n
|
||
Mac OS X 10.5 Intel n y n y y y
|
||
Mac OS X 10.6 Intel n y n y y y
|
||
AIX 5.3 32- and 64-bit n y n y y n
|
||
AIX 6.1 32- and 64-bit n y n y y n
|
||
FreeBSD 6.3-STABLE 32&64 bit n y n y y y
|
||
RedHat EL4 2.6.9-42 i686 GNU (1) W y y y y y y
|
||
RedHat EL5 2.6.18-128 i686 GNU (1)W y y(2) y y y y
|
||
RedHat EL5 2.6.18-128 i686 Intel W n y n y y n
|
||
RedHat EL5 2.6.18-128 i686 PGI W n y n y y n
|
||
SuSe Linux 2.6.16 x86_64 GNU (1) W y y(3) y y y y
|
||
SuSe Linux 2.6.16 x86_64 Intel W n y n y y n
|
||
SuSe Linux 2.6.16 x86_64 PGI W n y n y y y
|
||
SuSe Linux 2.6.16 SGI Altix ia64 C y y y y y y
|
||
RedHat EL4 2.6.18 Xeon Lustre C y y y y y n
|
||
Cray XT3 2.1.56 y y y y y n
|
||
OpenVMS Alpha V8.3 n y n y y n
|
||
|
||
Platform Shared Shared Shared Thread-
|
||
C libs F90 libs C++ libs safe
|
||
Solaris2.10 32-bit y y y y
|
||
Solaris2.10 64-bit y y y y
|
||
Windows XP y y(4) y n
|
||
Windows XP x64 y y(4) y n
|
||
Windows Vista y y(4) y n
|
||
Windows Vista x64 y y(4) y n
|
||
Mac OS X 10.5 PPC y n n n
|
||
Mac OS X 10.5 (Intel) y(5) n y n
|
||
Mac OS X 10.6 (Intel) y(5) n y n
|
||
AIX 5.3 32- and 64-bit n n n n
|
||
AIX 6.1 32- and 64-bit n n n n
|
||
FreeBSD 6.3-STABLE 32&64 bit y n y y
|
||
RedHat EL4 2.6.9-42 i686 GNU (1) W y y y y
|
||
RedHat EL5 2.6.18-128 i686 GNU (1)W y y(2) y y
|
||
RedHat EL5 2.6.18-128 i686 Intel W y y y n
|
||
RedHat EL5 2.6.18-128 i686 PGI W y y y n
|
||
SuSe Linux 2.6.16 x86_64 GNU (1) W y y y y
|
||
SuSe Linux 2.6.16 x86_64 Intel W y y y n
|
||
SuSe Linux 2.6.16 x86_64 PGI W y y y n
|
||
SuSe Linux 2.6.16 SGI Altix ia64 C y n
|
||
RedHat EL4 2.6.18 Xeon Lustre C y y y n
|
||
Cray XT3 2.1.56 n n n n
|
||
OpenVMS Alpha V8.3 n n n n
|
||
|
||
(1) Fortran compiled with g95.
|
||
(2) With PGI and Absoft compilers.
|
||
(3) With PGI compiler for Fortran.
|
||
(4) Using Visual Studio 2008. (Cygwin shared libraries are not
|
||
supported.)
|
||
(5) Shared C and C++ are disabled when Fortran is configured in.
|
||
Compiler versions for each platform are listed in the preceding
|
||
"Platforms Tested" table.
|
||
|
||
|
||
Known Problems
|
||
==============
|
||
* The library's test dt_arith.c exposed a compiler's rounding problem on
|
||
Cygwin when converting from unsigned long long to long double. The
|
||
library's own conversion works correctly. A macro is defined for Cygwin
|
||
to skip this test until we can solve the problem. (Please see bug #1813.)
|
||
SLU - 2010/5/5
|
||
|
||
* All the VFL drivers aren't backward compatible. In H5FDpublic.h, the
|
||
structure H5FD_class_t changed in 1.8. There is a new parameter added to
|
||
get_eoa and set_eoa callback functions. A new callback function
|
||
get_type_map was added. The public function H5FDrealloc was taken
|
||
out in 1.8. The problem only happens when users define their own driver
|
||
for 1.6 and try to plug it into a 1.8 library. This affects a very small
|
||
number of users. (See bug report #1279.) SLU - 2010/2/2
|
||
|
||
* MinGW has a missing libstdc++.dll.a library file and will not successfully
|
||
link C++ applications/tests. Do not use the enable-cxx configure option.
|
||
Read all of the INSTALL_MINGW.txt file for all restrictions.
|
||
ADB - 2009/11/11
|
||
|
||
* Some tests in tools/h5repack may fail in AIX systems when -q32 mode is used.
|
||
The error is due to insufficient memory requested. Request a large amount
|
||
of runtime memory by setting the following environment variable for more
|
||
memory.
|
||
LDR_CNTRL=MAXDATA=0x20000000@DSA
|
||
AKC - 2009/10/31
|
||
|
||
* The PathScale MPI implementation, accessing a Panasas file system, would
|
||
cause H5Fcreate() with H5F_ACC_EXCL to fail even when the file is not
|
||
existing. This is due to the MPI_File_open() call failing if the amode has
|
||
the MPI_MODE_EXCL bit set. (See bug 1468 for details.) AKC - 2009/8/11
|
||
|
||
* Parallel tests failed with 16 processes with data inconsistency at testphdf5
|
||
/ dataset_readAll. Parallel tests also failed with 32 and 64 processes with
|
||
collective abort of all ranks at t_posix_compliant / allwrite_allread_blocks
|
||
with MPI IO. CMC - 2009/04/28
|
||
|
||
* For gcc v4.3 and v4.4, with production mode, if -O3 is used, H5Tinit.c
|
||
would fail to compile. Actually bad H5Tinit.c is produced. If -O (same
|
||
as -O1) is used, H5Tinit.c compiled okay but test/dt_arith would fail.
|
||
When -O0 (no optimizatio) is used, H5Tinit.c compilete okay and all
|
||
tests passed. Therefore, -O0 is imposed for v4.3 and v4.4 of gcc.
|
||
AKC - 2009/04/20
|
||
|
||
* For Red Storm, a Cray XT3 system, the tools/h5ls/testh5ls.sh and
|
||
tools/h5copy/testh5copy.sh will fail some of its sub-tests. These sub-tests
|
||
are expected to fail and should exit with a non-zero code but the yod
|
||
command does not propagate the exit code of the executables. Yod always
|
||
returns 0 if it can launch the executable. The test suite shell expects
|
||
a non-zero for this particular test, therefore it concludes the test has
|
||
failed when it receives 0 from yod. Skip all the "failing" test for now
|
||
by changing them as following.
|
||
|
||
======== Original tools/h5ls/testh5ls.sh =========
|
||
TOOLTEST tgroup-1.ls 1 -w80 -r -g tgroup.h5
|
||
======== Change to ===============================
|
||
echo SKIP TOOLTEST tgroup-1.ls 1 -w80 -r -g tgroup.h5
|
||
==================================================
|
||
|
||
======== Original tools/h5copy/testh5copy.sh =========
|
||
TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d grp_rename
|
||
TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d /grp_rename/grp_dsets
|
||
TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_dsets -d /E/F/grp_dsets
|
||
TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_nested -d /G/H/grp_nested
|
||
H5LSTEST $FILEOUT
|
||
======== Change to ===============================
|
||
echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d grp_rename
|
||
echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d /grp_rename/grp_dsets
|
||
echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_dsets -d /E/F/grp_dsets
|
||
echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_nested -d /G/H/grp_nested
|
||
echo SKIP H5LSTEST $FILEOUT
|
||
==================================================
|
||
AKC - 2008/11/10
|
||
|
||
* For Red Storm, a Cray XT3 system, the yod command sometimes gives the
|
||
message, "yod allocation delayed for node recovery". This interferes with
|
||
test suites that do not expect seeing this message. See the section of "Red
|
||
Storm" in file INSTALL_parallel for a way to deal with this problem.
|
||
AKC - 2008/05/28
|
||
|
||
* On Intel 64 Linux cluster (RH 4, Linux 2.6.9) with Intel 10.0 compilers,
|
||
use -mp -O1 compilation flags to build the libraries. A higher level of
|
||
optimization causes failures in several HDF5 library tests.
|
||
|
||
* On mpich 1.2.5 and 1.2.6, if more than two processes contribute no IO and
|
||
the application asks to do collective IO, we have found that when using 4
|
||
processors, a simple collective write will sometimes be hung. This can be
|
||
verified with t_mpi test under testpar.
|
||
|
||
* A dataset created or rewritten with a v1.6.3 library or after cannot be read
|
||
with the v1.6.2 library or before when the Fletcher32 EDC filter is enabled.
|
||
There was a bug in the calculation of the Fletcher32 checksum in the
|
||
library before v1.6.3; the checksum value was not consistent between big-
|
||
endian and little-endian systems. This bug was fixed in Release 1.6.3.
|
||
However, after fixing the bug, the checksum value was no longer the same as
|
||
before on little-endian system. Library releases after 1.6.4 can still read
|
||
datasets created or rewritten with an HDF5 library of v1.6.2 or before.
|
||
SLU - 2005/6/30
|
||
|
||
* On IBM AIX systems, parallel HDF5 mode will fail some tests with error
|
||
messages like "INFO: 0031-XXX ...". This is from the command `poe'.
|
||
Set the environment variable MP_INFOLEVEL to 0 to minimize the messages
|
||
and run the tests again.
|
||
|
||
The tests may fail with messages like "The socket name is already in use,"
|
||
but HDF5 does not use sockets. This failure is due to problems with the
|
||
poe command trying to set up the debug socket. To resolve this problem,
|
||
check to see whether there are many old /tmp/s.pedb.* files staying around.
|
||
These are sockets used by the poe command and left behind due to failed
|
||
commands. First, ask your system administrator to clean them out.
|
||
Lastly, request IBM to provide a means to run poe without the debug socket.
|
||
|
||
* The --enable-static-exec configure flag will only statically link libraries
|
||
if the static version of that library is present. If only the shared version
|
||
of a library exists (i.e., most system libraries on Solaris, AIX, and Mac,
|
||
for example, only have shared versions), the flag should still result in a
|
||
successful compilation, but note that the installed executables will not be
|
||
fully static. Thus, the only guarantee on these systems is that the
|
||
executable is statically linked with just the HDF5 library.
|
||
|
||
* There is also a configure error on Altix machines that incorrectly reports
|
||
when a version of Szip without an encoder is being used.
|
||
|
||
* On FREE-BSD systems when shared libraries are disabled, make install fails
|
||
in install-examples with the error '"Makefile", line 635: Need an operator'.
|
||
When this error occurs removing or commenting out the line "export
|
||
LD_LIBRARY_PATH=$(LL_PATH)" (line 635 in examples/Makefile) will allow make
|
||
install to finish installing examples. The problem will be fixed in the
|
||
next release. LRK - 2010/05/26
|
||
|
||
* On cobalt, an SGI Altix SMP ia64 system, Intel compiler version 10.1 (which
|
||
is the default on that system) does not work properly and results in
|
||
failures during make check (in a static build) and make installcheck (during
|
||
a shared build). This appears to be a compiler optimization problem.
|
||
Reducing optimization by setting CFLAGS to -O1 or below resolves the issue.
|
||
Alternatively, using a newer version of the compiler (11.0) also works as
|
||
intended. MAM - 2010/06/01
|
||
|
||
|
||
%%%%1.8.4%%%%
|
||
|
||
|
||
HDF5 version 1.8.4 released on Tue Nov 10 15:33:14 CST 2009
|
||
================================================================================
|
||
|
||
INTRODUCTION
|
||
============
|
||
|
||
This document describes the differences between HDF5-1.8.3 and
|
||
HDF5 1.8.4, and contains information on the platforms tested and
|
||
known problems in HDF5-1.8.4
|
||
For more details, see the files HISTORY-1_0-1_8_0_rc3.txt
|
||
and HISTORY-1_8.txt in the release_docs/ directory of the HDF5 source.
|
||
|
||
Links to the HDF5 1.8.4 source code, documentation, and additional materials
|
||
can be found on the HDF5 web page at:
|
||
|
||
http://www.hdfgroup.org/products/hdf5/
|
||
|
||
The HDF5 1.8.4 release can be obtained from:
|
||
|
||
http://www.hdfgroup.org/HDF5/release/obtain5.html
|
||
|
||
User documentation for 1.8.4 can be accessed directly at this location:
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/
|
||
|
||
New features in the HDF5-1.8.x release series, including brief general
|
||
descriptions of some new and modified APIs, are described in the "What's New
|
||
in 1.8.0?" document:
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/ADGuide/WhatsNew180.html
|
||
|
||
All new and modified APIs are listed in detail in the "HDF5 Software Changes
|
||
from Release to Release" document, in the section "Release 1.8.4 (current
|
||
release) versus Release 1.8.3":
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/ADGuide/Changes.html
|
||
|
||
If you have any questions or comments, please send them to the HDF Help Desk:
|
||
|
||
help@hdfgroup.org
|
||
|
||
|
||
CONTENTS
|
||
========
|
||
|
||
- New Features
|
||
- Support for New Platforms, Languages, and Compilers
|
||
- Bug Fixes since HDF5-1.8.3
|
||
- Platforms Tested
|
||
- Supported Configuration Features Summary
|
||
- Known Problems
|
||
|
||
|
||
New Features
|
||
============
|
||
|
||
Configuration
|
||
-------------
|
||
- Configuration suite now uses Automake 1.11 and Autoconf 2.64.
|
||
MAM 2009/08/31.
|
||
- Changed default Gnu fortran compiler from g95 to gfortran since
|
||
gfortran is more likely installed with gcc now. -AKC 2009/07/19-
|
||
|
||
Library
|
||
-------
|
||
- The embedded library information is displayed by H5check_version() if a
|
||
version mismatch is detected. Also changed H5check_version() to
|
||
suppress the warning message totally if $HDF5_DISABLE_VERSION_CHECK is 2
|
||
or higher. (Old behavior treated 3 or higher the same as 1, that is
|
||
print a warning and allows the program to continue. (AKC - 2009/9/28)
|
||
- If a user does not care for the extra library information insert
|
||
in the executables, he may turn it off by --disable-embedded-libinfo
|
||
during configure. (AKC - 2009/9/15)
|
||
|
||
Parallel Library
|
||
----------------
|
||
- None
|
||
|
||
Tools
|
||
-----
|
||
- h5diff: h5diff treats two INFINITY values different. Fixed by checking
|
||
(value==expect) before call ABS(...) at h5diff_array.c. This will make
|
||
that (INF==INF) is true (INF is treated as an number instead of NaN)
|
||
(PC -- 2009/07/28)
|
||
- h5diff: add option "--use-system-epsilon" to print difference if
|
||
(|a-b| > EPSILON).
|
||
Change default to use strict equality (PC -- 2009/09/12)
|
||
|
||
High-Level APIs
|
||
---------------
|
||
- None
|
||
|
||
F90 API
|
||
-------
|
||
- Added H5Oopen_by_addr_f MSB - 9/14/09
|
||
|
||
C++ API
|
||
-------
|
||
- None
|
||
|
||
|
||
Support for New Platforms, Languages, and Compilers
|
||
===================================================
|
||
- PathScale compilers are recognized and can build the HDF5 library
|
||
properly. AKC - 2009/7/28 -
|
||
|
||
|
||
Bug Fixes since HDF5-1.8.3
|
||
==========================
|
||
|
||
Configuration
|
||
-------------
|
||
- Removed the following config files, as we no longer support them:
|
||
config/dec-osf*, config/hpux11.00, config/irix5.x,
|
||
config/powerpc-ibm-aix4.x config/rs6000-ibm-aix5.x config/unicos*
|
||
MAM - 2009/10/08
|
||
- Modified configure and make process to properly preserve user's CFLAGS
|
||
(and company) environment variables. Build will now properly use
|
||
automake's AM_CFLAGS for any compiler flags set by the configure
|
||
process. Configure will no longer modify CFLAGS directly, nor will
|
||
setting CFLAGS during make completely replace what configure has set up.
|
||
MAM - 2009/10/08
|
||
- Support for TFLOPS, config/intel-osf1, is removed since the TFLOPS
|
||
machine has long retired. AKC - 2009/10/06.
|
||
- Added $(EXEEXT) extension to H5detect when it's executed in the
|
||
src/Makefile to generate H5Tinit.c so it works correctly on platforms
|
||
that require the full extension when running executables.
|
||
MAM - 2009/10/01 - BZ #1613
|
||
- Configure will now set FC and CXX to "no" when fortran and c++
|
||
are not being compiled, respectively, so configure will not run
|
||
some of the compiler tests for these languages when they are not
|
||
being used. MAM - 2009/10/01
|
||
- The --enable-static-exec flag will now properly place the -static flag
|
||
on the link line of all installed executables. This will force the
|
||
executable to link with static libraries over shared libraries, provided
|
||
the static libraries are available. MAM - 2009/08/31 - BZ #1583
|
||
- The PathScale compiler (v3.2) was mistaken as gcc v4.2.0 but it fails to
|
||
recognize some gcc options. Fixed. (see bug 1301). AKC - 2009/7/28 -
|
||
|
||
Library
|
||
-------
|
||
- Fixed a bug where writing and deleting many global heap objects (i.e.
|
||
variable length data) would render the file unreadable. Previously
|
||
created files exhibiting this problem should now be readable.
|
||
NAF - 2009/10/27 - 1483
|
||
- Fixed error in library's internal caching mechanisms which could cause
|
||
an assertion failure (and attendent core dump) when encountering an
|
||
unusually formatted file. (QAK - 2009/10/13)
|
||
- Fixed incorrect return value for H5Pget_preserve. AKC - 2009/10/08 - 1628
|
||
- Fixed an assertion failure that occurred when H5Ocopy was called on a
|
||
dataset using a vlen inside a compound. NAF - 2009/10/02 - 1597
|
||
- Fixed incorrect return value for H5Pget_filter_by_id1/2 in H5Ppublic.h.
|
||
NAF - 2009/09/25 - 1620
|
||
- Fixed a bug where properties weren't being compared with the registered
|
||
compare callback. NAF - 2009/09/25 - 1555
|
||
- Corrected problem where library would re-write the superblock in a file
|
||
opened for R/W access, even when no changes were made to the file.
|
||
(QAK - 2009/08/20, Bz#1473)
|
||
- Fixed a bug where H5Pget_filter_by_id would succeed when called for a
|
||
filter that wasn't present. NAF - 2009/06/25 - 1250
|
||
- Fixed an issue with committed compound datatypes containing a vlen. Also
|
||
fixed memory leaks involving committed datatypes. NAF - 2009/06/10 - 1593
|
||
|
||
Parallel Library
|
||
----------------
|
||
- None
|
||
|
||
Tools
|
||
-----
|
||
- h5dump/h5ls display buffer resize fixed in tools library.
|
||
ADB - 2009/7/21 - 1520
|
||
- perf_serial test added to Windows projects and check batch file.
|
||
ADB - 2009/06/11 -1504
|
||
|
||
|
||
F90 API
|
||
------
|
||
- Fixed bug in h5lget_info_by_idx_f by adding missing arguments,
|
||
consequently changing the API. New API is:
|
||
|
||
SUBROUTINE h5lget_info_by_idx_f(loc_id, group_name, index_field, order, n, &
|
||
link_type, f_corder_valid, corder, cset, address, val_size, hdferr, lapl_id)
|
||
|
||
MSB - 2009/9/17 - 1652
|
||
|
||
- Corrected the values for the H5L_flags FORTRAN constants:
|
||
H5L_LINK_ERROR_F, H5L_LINK_HARD_F, H5L_LINK_SOFT_F, H5L_LINK_EXTERNAL_F
|
||
MSB - 2009-09-17 - 1653
|
||
|
||
- Added FORTRAN equivalent of C constant H5T_ORDER_NONE: H5T_ORDER_NONE_F
|
||
MSB - 2009-9-24 - 1471
|
||
|
||
C++ API
|
||
------
|
||
- None
|
||
|
||
High-Level APIs:
|
||
------
|
||
- Fixed a bug where the H5TB API would forget the order of fields when added
|
||
out of offset order. NAF - 2009/10/27 - 1582
|
||
- H5DSis_attached failed to account for different platform types. Added a
|
||
get native type call. ADB - 2009/9/29 - 1562
|
||
|
||
Fortran High-Level APIs:
|
||
------
|
||
- Lite: the h5ltread_dataset_string_f and h5ltget_attribute_string_f functions
|
||
had memory problems with the g95 fortran compiler. (PVN <20> 5/13/2009) 1522
|
||
|
||
|
||
|
||
Platforms Tested
|
||
================
|
||
The following platforms and compilers have been tested for this release.
|
||
|
||
AIX 5.3 xlc 7.0.0.8
|
||
(LLNL Up) xlf 09.01.0000.0008
|
||
xlC 7.0.0.8
|
||
mpcc_r 7.0.0.8
|
||
mpxlf_r 09.01.0000.0008
|
||
|
||
Cray XT3 (2.0.41) cc (pgcc) 7.1-4
|
||
(SNL red storm) ftn (pgf90) 7.1-4
|
||
CC (pgCC) 7.1-4
|
||
|
||
FreeBSD 6.3-STABLE i386 gcc 3.4.6 [FreeBSD] 20060305
|
||
(duty) g++ 3.4.6 [FreeBSD] 20060305
|
||
gcc 4.3.5 20091004
|
||
g++ 4.3.5 20091004
|
||
gfortran 4.3.5 20091004
|
||
|
||
FreeBSD 6.3-STABLE amd64 gcc 3.4.6 [FreeBSD] 20060305
|
||
(liberty) g++ 3.4.6 [FreeBSD] 20060305
|
||
gcc 4.4.2 20091006
|
||
g++ 4.4.2 20091006
|
||
gfortran 4.4.2 20091006
|
||
|
||
Linux 2.6.18-164.el5 gcc (GCC) 4.1.2 20080704
|
||
#1 SMP i686 i686 i386 G95 (GCC 4.0.3 (g95 0.92!) Jun 24 2009)
|
||
(jam) GNU Fortran (GCC) 4.1.2 20080704
|
||
(Red Hat 4.1.2-46)
|
||
PGI C, Fortran, C++ 8.0-5 32-bit
|
||
PGI C, Fortran, C++ 8.0-1 32-bit
|
||
Intel(R) C Compiler for 32-bit
|
||
applications, Versions 11.0, 11.1
|
||
Intel(R) C++ Compiler for 32-bit
|
||
applications, Version 11.0, 11.1
|
||
Intel(R) Fortran Compiler for 32-bit
|
||
applications, Version 11.0, 11.1
|
||
Absoft 32-bit Fortran 95 10.0.7
|
||
MPICH mpich2-1.0.8 compiled with
|
||
gcc (GCC) 4.1.2 and G95
|
||
(GCC 4.0.3 (g95 0.92!)
|
||
|
||
Linux 2.6.18-164.el5 #1 SMP gcc 4.1.2 20080704
|
||
x86_64 GNU/Linux G95 (GCC 4.0.3 (g95 0.92!) Jun 24 2009)
|
||
(amani) tested for both 32- and 64-bit binaries
|
||
Intel(R) C, C++, Fortran Compilers for
|
||
applications running on Intel(R) 64,
|
||
Versions 11.1.
|
||
PGI C, Fortran, C++ Version 9.0-4
|
||
for 64-bit target on x86-64
|
||
gcc 4.1.2 and G95 (GCC 4.0.3 (g95 0.92!)
|
||
MPICH mpich2-1.0.8 compiled with
|
||
gcc 4.1.2 and G95 (GCC 4.0.3 (g95 0.92!)
|
||
GNU Fortran (GCC) 4.1.2 20080704
|
||
(Red Hat 4.1.2-46)
|
||
|
||
|
||
Linux 2.6.16.60-0.42.5 #1 Intel(R) C++ Version 10.1.017
|
||
SGI Altix SMP ia64 Intel(R) Fortran Itanium(R) Version 10.1.017
|
||
(cobalt) SGI MPI 1.38
|
||
|
||
SunOS 5.10 32- and 64-bit Sun C 5.9 SunOS_sparc Patch 124867-11 2009/04/30
|
||
(linew) Sun Fortran 95 8.3 SunOS_sparc
|
||
Patch 127000-11 2009/10/06
|
||
Sun C++ 5.9 SunOS_sparc
|
||
Patch 124863-16 2009/09/15
|
||
|
||
Intel Xeon Linux 2.6.18- Intel(R) C++ Version 10.0.026
|
||
92.1.10.el5_lustre.1.6.6smp- Intel(R) Fortran Compiler Version 10.0.026
|
||
perfctr #6 SMP Open MPI 1.2.2
|
||
(abe) MVAPICH2-0.9.8p28p2patched-intel-ofed-1.2
|
||
compiled with icc v10.0.026 and ifort 10.0.026
|
||
|
||
IA-64 Linux 2.4.21-309.tg1 gcc (GCC) 3.2.2
|
||
#1 SMP ia64 Intel(R) C++ Version 8.1.037
|
||
(NCSA tg-login) Intel(R) Fortran Compiler Version 8.1.033
|
||
mpich-gm-1.2.7p1..16-intel-8.1.037-r1
|
||
|
||
Linux 2.6.9-55.0.9.EL_lustre Intel(R) C, C++, Fortran Compilers for
|
||
.1.4.11.1smp #1 SMP applications running on Intel(R) 64,
|
||
SMP x86_64 GNU/Linux Versions 10.1.
|
||
(SNL Thunderbird)
|
||
|
||
Linux 2.6.18-76chaos #1 SMP Intel(R) C, C++, Fortran Compilers for
|
||
SMP x86_64 GNU/Linux applications running on Intel(R) 64,
|
||
(SNL Glory) Versions 10.1.
|
||
|
||
Windows XP Visual Studio 2005 w/ Intel Fortran 9.1
|
||
Cygwin(native gcc compiler and g95)
|
||
|
||
Windows XP x64 Visual Studio 2005 w/ Intel Fortran 9.1
|
||
|
||
Windows Vista Visual Studio 2005 w/ Intel Fortran 9.1
|
||
|
||
Windows Vista x64 Visual Studio 2005 w/ Intel Fortran 9.1
|
||
|
||
MAC OS 10.5.6 (Intel) i686-apple-darwin9-gcc-4.0.1 (GCC) 4.0.1
|
||
GNU Fortran (GCC) 4.3.0 20070810
|
||
G95 (GCC 4.0.3 (g95 0.91!) Apr 24 2008)
|
||
Intel C, C++ and Fortran compilers 10.1
|
||
|
||
|
||
Supported Configuration Features Summary
|
||
========================================
|
||
|
||
In the tables below
|
||
y = tested and supported
|
||
n = not supported or not tested in this release
|
||
C = Cluster
|
||
W = Workstation
|
||
x = not working in this release
|
||
dna = does not apply
|
||
( ) = footnote appears below second table
|
||
<blank> = testing incomplete on this feature or platform
|
||
|
||
Platform C F90 F90 C++ zlib SZIP
|
||
parallel parallel
|
||
Solaris2.10 32-bit n y n y y y
|
||
Solaris2.10 64-bit n y n y y y
|
||
Windows XP n y(4) n(4) y y y
|
||
Windows XP x64 n y(4) n(4) y y y
|
||
Windows Vista n n n y y y
|
||
Mac OS X 10.5 Intel n y n y y y
|
||
AIX 5.3 32- and 64-bit n y n y y n
|
||
FreeBSD 6.3-STABLE 32&64 bit n y n y y y
|
||
RedHat EL5 2.6.18-164 i686 GNU (1)W y y(2) y y y y
|
||
RedHat EL5 2.6.18-164 i686 Intel W n y n y y n
|
||
RedHat EL5 2.6.18-164 i686 PGI W n y n y y n
|
||
RedHat EL5 2.6.18-164 x86_64 GNU(1)W y y(3) y y y y
|
||
RedHat EL5 2.6.18-164 x86_64 IntelW n y n y y n
|
||
RedHat EL5 2.6.18-164 x86_64 PGI W n y n y y y
|
||
SuSe Linux 2.6.16 SGI Altix ia64 C y y y y y y
|
||
RedHat EL4 2.6.18 Xeon Lustre C y y y y y n
|
||
SuSe Linux 2.4.21 ia64 Intel C y y y y y n
|
||
Cray XT3 2.0.62 y y y y y n
|
||
|
||
|
||
Platform Shared Shared Shared Thread-
|
||
C libs F90 libs C++ libs safe
|
||
Solaris2.10 32-bit y y y y
|
||
Solaris2.10 64-bit y y y y
|
||
Windows XP y y(4) y y
|
||
Windows XP x64 y y(4) y y
|
||
Windows Vista y n n y
|
||
Mac OS X 10.5 y n y n
|
||
AIX 5.3 32- and 64-bit n n n n
|
||
FreeBSD 6.3-STABLE 32&64 bit y y y y
|
||
RedHat EL5 2.6.18-164 i686 GNU (1)W y y(2) y y
|
||
RedHat EL5 2.6.18-164 i686 Intel W y y y n
|
||
RedHat EL5 2.6.18-164 i686 PGI W y y y n
|
||
RedHat EL5 2.6.18-164 x86_64 GNU(1)W y y y y
|
||
RedHat EL5 2.6.18-164 x86_64 IntelW y y y n
|
||
RedHat EL5 2.6.18-164 x86_64 PGI W y y y n
|
||
SuSe Linux 2.6.16 SGI Altix ia64 C y n
|
||
RedHat EL4 2.6.18 Xeon Lustre C y y y n
|
||
SuSe Linux 2.4.21 ia64 Intel C y y y n
|
||
Cray XT3 2.0.62 n n n n
|
||
|
||
(1) Fortran compiled with g95.
|
||
(2) With PGI and Absoft compilers.
|
||
(3) With PGI compiler for Fortran.
|
||
(4) Using Visual Studio 2005 or Cygwin
|
||
Compiler versions for each platform are listed in the preceding
|
||
"Platforms Tested" table.
|
||
|
||
|
||
Known Problems
|
||
==============
|
||
* Parallel mode in AIX will fail some of the testcheck_version.sh tests where
|
||
it treats "exit(134) the same as if process 0 had received an abort signal.
|
||
This is fixed and will be available in the next release. AKC - 2009/11/3
|
||
|
||
* Some tests in tools/h5repack may fail in AIX systems when -q32 mode is used.
|
||
The error is due to insufficient memory requested. Request a large amount
|
||
of runtime memory by setting the following environment variable for more
|
||
memory.
|
||
LDR_CNTRL=MAXDATA=0x20000000@DSA
|
||
AKC - 2009/10/31
|
||
|
||
* The PathScale MPI implementation, accessing a Panasas file system, would
|
||
cause H5Fcreate() with H5F_ACC_EXCL to fail even when the file is not
|
||
existing. This is due to the MPI_File_open() call failing if the amode has
|
||
the MPI_MODE_EXCL bit set. (See bug 1468 for details.) AKC - 2009/8/11
|
||
|
||
* Parallel tests failed with 16 processes with data inconsistency at testphdf5
|
||
/ dataset_readAll. Parallel tests also failed with 32 and 64 processes with
|
||
collective abort of all ranks at t_posix_compliant / allwrite_allread_blocks
|
||
with MPI IO. CMC - 2009/04/28
|
||
|
||
* There is a known issue in which HDF5 will change the timestamp on a file
|
||
simply by opening it with read/write permissions, even if the file is not
|
||
modified in any way. This is due to the way in which HDF5 manages the file
|
||
superblock. A fix is currently underway and should be included in the 1.8.4
|
||
release of HDF5. MAM - 2009/04/28
|
||
|
||
* For gcc v4.3 and v4.4, with production mode, if -O3 is used, H5Tinit.c
|
||
would fail to compile. Actually bad H5Tinit.c is produced. If -O (same
|
||
as -O1) is used, H5Tinit.c compiled okay but test/dt_arith would fail.
|
||
When -O0 (no optimizatio) is used, H5Tinit.c compilete okay and all
|
||
tests passed. Therefore, -O0 is imposed for v4.3 and v4.4 of gcc.
|
||
AKC - 2009/04/20
|
||
|
||
* For Red Storm, a Cray XT3 system, the tools/h5ls/testh5ls.sh and
|
||
tools/h5copy/testh5copy.sh will fail some of its sub-tests. These sub-tests
|
||
are expected to fail and should exit with a non-zero code but the yod
|
||
command does not propagate the exit code of the executables. Yod always
|
||
returns 0 if it can launch the executable. The test suite shell expects
|
||
a non-zero for this particular test, therefore it concludes the test has
|
||
failed when it receives 0 from yod. Skip all the "failing" test for now
|
||
by changing them as following.
|
||
|
||
======== Original tools/h5ls/testh5ls.sh =========
|
||
TOOLTEST tgroup-1.ls 1 -w80 -r -g tgroup.h5
|
||
======== Change to ===============================
|
||
echo SKIP TOOLTEST tgroup-1.ls 1 -w80 -r -g tgroup.h5
|
||
==================================================
|
||
|
||
======== Original tools/h5copy/testh5copy.sh =========
|
||
TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d grp_rename
|
||
TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d /grp_rename/grp_dsets
|
||
TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_dsets -d /E/F/grp_dsets
|
||
TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_nested -d /G/H/grp_nested
|
||
H5LSTEST $FILEOUT
|
||
======== Change to ===============================
|
||
echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d grp_rename
|
||
echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d /grp_rename/grp_dsets
|
||
echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_dsets -d /E/F/grp_dsets
|
||
echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_nested -d /G/H/grp_nested
|
||
echo SKIP H5LSTEST $FILEOUT
|
||
==================================================
|
||
AKC - 2008/11/10
|
||
|
||
* For Red Storm, a Cray XT3 system, the yod command sometimes gives the
|
||
message, "yod allocation delayed for node recovery". This interferes with
|
||
test suites that do not expect seeing this message. See the section of "Red
|
||
Storm" in file INSTALL_parallel for a way to deal with this problem.
|
||
AKC - 2008/05/28
|
||
|
||
* On Intel 64 Linux cluster (RH 4, Linux 2.6.9) with Intel 10.0 compilers,
|
||
use -mp -O1 compilation flags to build the libraries. A higher level of
|
||
optimization causes failures in several HDF5 library tests.
|
||
|
||
* On mpich 1.2.5 and 1.2.6, if more than two processes contribute no IO and
|
||
the application asks to do collective IO, we have found that when using 4
|
||
processors, a simple collective write will sometimes be hung. This can be
|
||
verified with t_mpi test under testpar.
|
||
|
||
* A dataset created or rewritten with a v1.6.3 library or after cannot be read
|
||
with the v1.6.2 library or before when the Fletcher32 EDC filter is enabled.
|
||
There was a bug in the calculation of the Fletcher32 checksum in the
|
||
library before v1.6.3; the checksum value was not consistent between big-
|
||
endian and little-endian systems. This bug was fixed in Release 1.6.3.
|
||
However, after fixing the bug, the checksum value was no longer the same as
|
||
before on little-endian system. Library releases after 1.6.4 can still read
|
||
datasets created or rewritten with an HDF5 library of v1.6.2 or before.
|
||
SLU - 2005/6/30
|
||
|
||
* On IBM AIX systems, parallel HDF5 mode will fail some tests with error
|
||
messages like "INFO: 0031-XXX ...". This is from the command `poe'.
|
||
Set the environment variable MP_INFOLEVEL to 0 to minimize the messages
|
||
and run the tests again.
|
||
|
||
The tests may fail with messages like "The socket name is already in use",
|
||
but HDF5 does not use sockets. This failure is due to problems with the
|
||
poe command trying to set up the debug socket. To resolve this problem,
|
||
check to see whether there are many old /tmp/s.pedb.* files staying around.
|
||
These are sockets used by the poe command and left behind due to failed
|
||
commands. First, ask your system administrator to clean them out.
|
||
Lastly, request IBM to provide a means to run poe without the debug socket.
|
||
|
||
* The --enable-static-exec configure flag will only statically link libraries
|
||
if the static version of that library is present. If only the shared version
|
||
of a library exists (i.e., most system libraries on Solaris, AIX, and Mac,
|
||
for example, only have shared versions), the flag should still result in a
|
||
successful compilation, but note that the installed executables will not be
|
||
fully static. Thus, the only guarantee on these systems is that the
|
||
executable is statically linked with just the HDF5 library.
|
||
|
||
* There is also a configure error on Altix machines that incorrectly reports
|
||
when a version of Szip without an encoder is being used.
|
||
|
||
%%%%1.8.3%%%%
|
||
|
||
|
||
HDF5 version 1.8.3 released on Mon May 4 09:21:00 CDT 2009
|
||
================================================================================
|
||
|
||
INTRODUCTION
|
||
============
|
||
|
||
This document describes the differences between HDF5-1.8.2 and
|
||
HDF5 1.8.3, and contains information on the platforms tested and
|
||
known problems in HDF5-1.8.3.
|
||
For more details, see the files HISTORY-1_0-1_8_0_rc3.txt
|
||
and HISTORY-1_8.txt in the release_docs/ directory of the HDF5 source.
|
||
|
||
Links to the HDF5 1.8.3 source code, documentation, and additional materials
|
||
can be found on the HDF5 web page at:
|
||
|
||
http://www.hdfgroup.org/products/hdf5/
|
||
|
||
The HDF5 1.8.3 release can be obtained from:
|
||
|
||
http://www.hdfgroup.org/HDF5/release/obtain5.html
|
||
|
||
User documentation for 1.8.3 can be accessed directly at this location:
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/
|
||
|
||
New features in the HDF5-1.8.x release series, including brief general
|
||
descriptions of some new and modified APIs, are described in the "What's New
|
||
in 1.8.0?" document:
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/ADGuide/WhatsNew180.html
|
||
|
||
All new and modified APIs are listed in detail in the "HDF5 Software Changes
|
||
from Release to Release" document, in the section "Release 1.8.3 (current
|
||
release) versus Release 1.8.2":
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/ADGuide/Changes.html
|
||
|
||
If you have any questions or comments, please send them to the HDF Help Desk:
|
||
|
||
help@hdfgroup.org
|
||
|
||
|
||
CONTENTS
|
||
========
|
||
|
||
- New Features
|
||
- Support for New Platforms, Languages, and Compilers
|
||
- Bug Fixes since HDF5-1.8.2
|
||
- Platforms Tested
|
||
- Supported Configuration Features Summary
|
||
- Known Problems
|
||
|
||
|
||
New Features
|
||
============
|
||
|
||
Configuration
|
||
-------------
|
||
- Added libtool version numbers to generated c++, fortran, and
|
||
hl libraries. MAM 2009/04/19.
|
||
- Regenerated Makefile.ins using Automake 1.10.2. MAM 2009/04/19.
|
||
- Added a Make target of check-all-install to test the correctness of
|
||
installing via the prefix= or $DESTDIR options. AKC - 2009/04/14
|
||
|
||
Library
|
||
-------
|
||
- Embed the content of libhdf5.settings into the hdf5 executables
|
||
so that an "orphaned" executables can display (via the Unix
|
||
strings command, for example) the library settings used to build
|
||
the executables. This is a prototype implementation. Improvement will
|
||
be added in next release. AKC - 2009/04/20
|
||
- Separated "factory" free list class from block free lists. These free
|
||
lists are dynamically created and manage blocks of a fixed size.
|
||
H5set_free_list_limits() will use the same settings specified for block
|
||
free lists for factory free lists. NAF - 2009/04/08
|
||
- Added support for dense attributes to H5Ocopy. XCao/NAF - 2009/01/29
|
||
- Added H5Pset_elink_cb and H5Pget_elink_cb functions to support a
|
||
user-defined callback function for external link traversal.
|
||
NAF - 2009/01/08
|
||
- Added H5Pset_elink_acc_flags and H5Pget_elink_acc_flags functions to
|
||
allow the user to specify the file access flags used to open the target
|
||
file of an external link. NAF - 2009/01/08
|
||
- Added H5Pset_chunk_cache() and H5Pget_chunk_cache() functions to allow
|
||
individual rdcc configuration for each dataset. Added
|
||
H5Dget_access_plist() function to retrieve a dataset access property
|
||
list from a dataset. NAF - 2008/11/12
|
||
- Added H5Iis_valid() function to check if an id is valid without
|
||
producing an error message. NAF - 2008/11/5
|
||
- Added code to maintain a min_clean_fraction in the metadata cache when
|
||
in serial mode. MAM - 2009/01/9
|
||
|
||
Parallel Library
|
||
----------------
|
||
- Modified parallel tests to run with arbitrary number of processes. The
|
||
modified tests are testphdf5 (parallel dataset access), t_chunk_alloc
|
||
(chunk allocation), and t_posix_compliant (posix compliance). The rest of
|
||
the parallel tests already use in the code the number of processes
|
||
available in the communicator. (CMC - 2009/04/28)
|
||
|
||
Tools
|
||
-----
|
||
- h5diff new flag, -c, --compare, list objects that are not comparable.
|
||
PVN - 2009/4/2 - 1368
|
||
- h5diff new flag, -N, --nan, avoids NaNs detection. PVN - 2009/4/2
|
||
- h5dump correctly specifies XML dtd / schema urls ADB - 2009/4/3 - 1519
|
||
- h5repack now handles group creation order. PVN - 2009/4/2 - 1402
|
||
- h5repack: When user doesn't specify a chunk size, h5repack now
|
||
defines a default chunk size as the same size of the size of the
|
||
hyperslab used to read the chunks. The size of the hyperslabs are
|
||
defined as the size of each dimension or a predefined constant,
|
||
whatever is smaller. This assures that the chunk read fits in the
|
||
chunk cache. PVN - 2008/11/21
|
||
|
||
High-Level APIs
|
||
---------------
|
||
- Table: In version 3.0 of Table, the writing of the "NROWS" attribute
|
||
(used to store number of records) was deprecated. PVN - 2008/11/24
|
||
|
||
F90 API
|
||
-------
|
||
- Added for the C APIs the Fortran wrappers:
|
||
h5dget_access_plist_f
|
||
h5iis_valid_f
|
||
h5pset_chunk_cache_f
|
||
h5pget_chunk_cache_f
|
||
MSB - 2009/04/17
|
||
|
||
C++ API
|
||
-------
|
||
- None
|
||
|
||
|
||
Support for New Platforms, Languages, and Compilers
|
||
===================================================
|
||
|
||
|
||
Bug Fixes since HDF5-1.8.2
|
||
==========================
|
||
|
||
Configuration
|
||
-------------
|
||
- The --includedir=DIR configuration option now works as intended, and
|
||
can be used to specify the location to install C header files. The
|
||
default location remains unchanged, residing at ${prefix}/include.
|
||
MAM - 2009/03/10 - BZ #1381
|
||
- Configure no longer removes the '-g' flag from CFLAGS when in production
|
||
mode if it has been explicitly set in the CFLAGS environment variable
|
||
prior to configuration. MAM - 2009/03/09 - BZ #1401
|
||
|
||
Library
|
||
-------
|
||
- Added versioning to H5Z_class_t struct to allow compatibility with 1.6
|
||
API. NAF - 2009/04/20 - 1533
|
||
- Fixed a problem with using data transforms with non-native types in the
|
||
file. NAF - 2009/04/20 - 1548
|
||
- Added direct.h include file to windows section of H5private.h
|
||
to fix _getcwd() warning. ADB - 2009/04/14 - 1536
|
||
- Fixed a bug that prevented external links from working after calling
|
||
H5close(). NAF - 2009/04/10 - 1539
|
||
- Modified library to write cached symbol table information to the
|
||
superblock, to allow library versions 1.3.0 to 1.6.3 to read files created
|
||
by this version. NAF - 2009/04/08 - 1423
|
||
- Changed skip lists to use a deterministic algorithm. The library should
|
||
now never call rand() or srand(). NAF - 2009/04/08 - 503
|
||
- Fixed a bug where H5Lcopy and H5Lmove wouldn't create intermediate groups
|
||
when that property was set. NAF - 2009/04/07 - 1526
|
||
- Fixed a bug that caused files with a user block to grow by the size of the
|
||
user block every time they were opened. NAF - 2009/03/26 - 1499
|
||
- Fixed a rare problem that could occur with files using the old (pre 1.4)
|
||
array datatype. NAF - 2009/03/23
|
||
- Modified library to be able to open files with corrupt root group symbol
|
||
table messages, and correct these errors if they are found. Such files
|
||
can only be successfully opened with write access. NAF - 2009/03/23 - 1189
|
||
- Removed the long_long #define and replaced all instances with
|
||
"long long". This caused problems with third party products. All
|
||
currently supported compliers support the type. ADB - 2009/03/05
|
||
- Fixed various bugs that could prevent the fill value from being written
|
||
in certain rare cases. NAF - 2009/02/26 - 1469
|
||
- Fixed a bug that prevented more than one dataset chunk from being cached
|
||
at a time. NAF - 2009/02/12 - 1015
|
||
- Fixed an assertion failure caused by opening an attribute multiple times
|
||
through multiple file handles. NAF - 2009/02/12 - 1420
|
||
- Fixed a problem that could prevent the user from adding attributes (or any
|
||
object header message) in some circumstances. NAF - 2009/02/12 - 1427
|
||
- Fixed a bug that could cause problems when an attribute was added to a
|
||
committed datatype using the committed datatype's datatype.
|
||
NAF - 2009/02/12
|
||
- Fixed a bug that could cause problems when copying an object with a shared
|
||
message in its own object header. NAF - 2009/01/29
|
||
- Changed H5Tset_order to properly reject H5T_ORDER_NONE for most datatypes.
|
||
NAF - 2009/01/27 - 1443
|
||
- Fixed a bug where H5Tpack wouldn't remove trailing space from an otherwise
|
||
packed compound type. NAF - 2009/01/14
|
||
- Fixed up some old v2 btree assertions that get run in debug mode that
|
||
were previously failing on compilation, and removed some of the
|
||
more heavily outdated and non-rewritable ones. MAM - 2008/12/15
|
||
- Fixed a bug that could cause problems when "automatically" unmounting
|
||
multiple files. NAF - 2008/11/17
|
||
- H5Dset_extent: when shrinking dimensions, some chunks were not deleted.
|
||
PVN - 2009/01/8
|
||
|
||
Parallel Library
|
||
----------------
|
||
- None
|
||
|
||
Tools
|
||
-----
|
||
- Fixed many problems that could occur when using h5repack with named
|
||
datatypes. NAF - 2009/4/20 - 1516/1466
|
||
- h5dump, h5diff, h5repack were not reading (by hyperslabs) datasets
|
||
that have a datatype datum size greater than H5TOOLS_BUFSIZE, a constant
|
||
defined as 1024Kb, such as array types with large dimensions.
|
||
PVN - 2009/4/1 - 1501
|
||
- h5import: By selecting a compression type, a big endian byte order
|
||
was being selected. PVN - 2009/3/11 - 1462
|
||
- zip_perf.c had missing argument on one of the open() calls. Fixed.
|
||
AKC - 2008/12/9
|
||
|
||
F90 API
|
||
------
|
||
- None
|
||
|
||
C++ API
|
||
------
|
||
- None
|
||
|
||
High-Level APIs:
|
||
------
|
||
- Dimension scales: The scale index return value in H5DSiterate_scales
|
||
was not always incremented. PVN - 2009/4/8 - 1538
|
||
|
||
Fortran High-Level APIs:
|
||
------
|
||
- Lite: The h5ltget_dataset_info_f function (gets information about
|
||
a dataset) was not correctly returning the dimension array
|
||
PVN - 2009/3/23
|
||
|
||
|
||
Platforms Tested
|
||
================
|
||
The following platforms and compilers have been tested for this release.
|
||
|
||
AIX 5.3 xlc 7.0.0.8
|
||
(LLNL Up) xlf 09.01.0000.0008
|
||
xlC 7.0.0.8
|
||
mpcc_r 7.0.0.8
|
||
mpxlf_r 09.01.0000.0008
|
||
|
||
Cray XT3 (2.0.41) cc (pgcc) 7.1-4
|
||
(SNL red storm) ftn (pgf90) 7.1-4
|
||
CC (pgCC) 7.1-4
|
||
|
||
FreeBSD 6.3-STABLE i386 gcc 3.4.6 [FreeBSD] 20060305
|
||
(duty) g++ 3.4.6 [FreeBSD] 20060305
|
||
gcc 4.3.4 20090419
|
||
g++ 4.3.4 20090419
|
||
gfortran 4.3.4 20090419
|
||
|
||
FreeBSD 6.3-STABLE amd64 gcc 3.4.6 [FreeBSD] 20060305
|
||
(liberty) g++ 3.4.6 [FreeBSD] 20060305
|
||
gcc 4.4.1 20090421
|
||
g++ 4.4.1 20090421
|
||
gfortran 4.4.1 20090421
|
||
|
||
IRIX64 6.5 (64 & n32) MIPSpro cc 7.4.4m
|
||
F90 MIPSpro 7.4.4m
|
||
C++ MIPSpro cc 7.4.4m
|
||
|
||
Linux 2.6.18-128.1.6.el5xen gcc (GCC) 4.1.2
|
||
#1 SMP i686 i686 i386 G95 (GCC 4.0.3 (g95 0.92!) Feb 4 2009)
|
||
(jam) PGI C, Fortran, C++ 7.2-1 32-bit
|
||
PGI C, Fortran, C++ 8.0-1 32-bit
|
||
Intel(R) C Compiler for 32-bit
|
||
applications, Versions 10.1, 11.0
|
||
Intel(R) C++ Compiler for 32-bit
|
||
applications, Version 10.1, 11.0
|
||
Intel(R) Fortran Compiler for 32-bit
|
||
applications, Version 10.1, 11.0
|
||
Absoft 32-bit Fortran 95 10.0.7
|
||
MPICH mpich2-1.0.8 compiled with
|
||
gcc 4.1.2 and G95 (GCC 4.0.3 (g95 0.92!)
|
||
|
||
Linux 2.6.9-42.0.10.ELsmp #1 gcc (GCC) 3.4.6
|
||
SMP i686 i686 i386 G95 (GCC 4.0.3 (g95 0.92!) Feb 4 2009)
|
||
(kagiso) MPICH mpich2-1.0.8 compiled with
|
||
gcc 3.4.6 and G95 (GCC 4.0.3 (g95 0.92!)
|
||
|
||
Linux 2.6.16.60-0.37-smp #1 gcc 4.1.2
|
||
SMP x86_64 GNU/Linux G95 (GCC 4.0.3 (g95 0.92!) Feb 4 2009)
|
||
(smirom) Intel(R) C, C++, Fortran Compilers for
|
||
applications running on Intel(R) 64,
|
||
Versions 10.1, 11.0.
|
||
PGI C, Fortran, C++ Version 7.2-1, 8.0-1
|
||
for 64-bit target on x86-64
|
||
gcc 4.1.2 and G95 (GCC 4.0.3 (g95 0.92!)
|
||
MPICH mpich2-1.0.8 compiled with
|
||
gcc 4.1.2 and G95 (GCC 4.0.3 (g95 0.92!)
|
||
tested for both 32- and 64-bit binaries
|
||
|
||
Linux 2.6.16.54-0.2.5 #1 Intel(R) C++ Version 10.1.017
|
||
SGI Altix SMP ia64 Intel(R) Fortran Itanium(R) Version 10.1.017
|
||
(cobalt) SGI MPI 1.38
|
||
|
||
SunOS 5.10 32- and 64-bit Sun WorkShop 6 update 2 C 5.9 Patch 124867-09
|
||
(linew) Sun WorkShop 6 update 2 Fortran 95 8.3
|
||
Patch 127000-07
|
||
Sun WorkShop 6 update 2 C++ 5.8
|
||
Patch 124863-11
|
||
|
||
Intel Xeon Linux 2.6.18- gcc 3.4.6 20060404
|
||
92.1.10.el5_lustre.1.6.6smp- Intel(R) C++ Version 10.0.026
|
||
perfctr #2 SMP Intel(R) Fortran Compiler Version 10.0.026
|
||
(abe) Open MPI 1.2.2
|
||
MVAPICH2-0.9.8p28p2patched-intel-ofed-1.2
|
||
compiled with icc v10.0.026 and ifort 10.0.026
|
||
|
||
IA-64 Linux 2.4.21-309.tg1 gcc (GCC) 3.2.2
|
||
#1 SMP ia64 Intel(R) C++ Version 8.1.037
|
||
(NCSA tg-login) Intel(R) Fortran Compiler Version 8.1.033
|
||
mpich-gm-1.2.7p1..16-intel-8.1.037-r1
|
||
|
||
Linux 2.6.9-55.0.9.EL_lustre Intel(R) C, C++, Fortran Compilers for
|
||
.1.4.11.1smp #1 SMP applications running on Intel(R) 64,
|
||
SMP x86_64 GNU/Linux Versions 9.1.
|
||
(SNL Spirit)
|
||
|
||
Linux 2.6.9-55.0.9.EL_lustre Intel(R) C, C++, Fortran Compilers for
|
||
.1.4.11.1smp #1 SMP applications running on Intel(R) 64,
|
||
SMP x86_64 GNU/Linux Versions 10.1.
|
||
(SNL Thunderbird)
|
||
|
||
Linux 2.6.18-63chaos #1 SMP Intel(R) C, C++, Fortran Compilers for
|
||
SMP x86_64 GNU/Linux applications running on Intel(R) 64,
|
||
(SNL Glory) Versions 10.1.
|
||
|
||
Linux 2.6.18-63chaos #1 SMP Intel(R) C, C++, Fortran Compilers for
|
||
SMP x86_64 GNU/Linux applications running on Intel(R) 64,
|
||
(LLNL Zeus) Versions 9.1.
|
||
gcc/gfortran/g++ (GCC) 4.1.2.
|
||
|
||
Windows XP Visual Studio .NET
|
||
Visual Studio 2005 w/ Intel Fortran 9.1
|
||
Cygwin(native gcc compiler and g95)
|
||
|
||
Windows XP x64 Visual Studio 2005 w/ Intel Fortran 9.1
|
||
|
||
Windows Vista Visual Studio 2005
|
||
|
||
MAC OS 10.5.6 (Intel) i686-apple-darwin9-gcc-4.0.1 (GCC) 4.0.1
|
||
GNU Fortran (GCC) 4.3.0 20070810
|
||
G95 (GCC 4.0.3 (g95 0.91!) Apr 24 2008)
|
||
Intel C, C++ and Fortran compilers 10.1
|
||
|
||
|
||
Supported Configuration Features Summary
|
||
========================================
|
||
|
||
In the tables below
|
||
y = tested and supported
|
||
n = not supported or not tested in this release
|
||
C = Cluster
|
||
W = Workstation
|
||
x = not working in this release
|
||
dna = does not apply
|
||
( ) = footnote appears below second table
|
||
<blank> = testing incomplete on this feature or platform
|
||
|
||
Platform C F90 F90 C++ zlib SZIP
|
||
parallel parallel
|
||
Solaris2.10 32-bit n y n y y y
|
||
Solaris2.10 64-bit n y n y y y
|
||
IRIX64_6.5 32-bit n n n n y y
|
||
IRIX64_6.5 64-bit n y y y y y
|
||
Windows XP n y(4) n(4) y y y
|
||
Windows XP x64 n y(4) n(4) y y y
|
||
Windows Vista n n n y y y
|
||
Mac OS X 10.5 Intel n y n y y y
|
||
AIX 5.3 32- and 64-bit n y n y y n
|
||
FreeBSD 6.3-STABLE 32&64 bit n y n y y y
|
||
RedHat EL4 2.6.9-42 i686 GNU (1) W y y y y y y
|
||
RedHat EL5 2.6.18-128 i686 GNU (1)W y y(2) y y y y
|
||
RedHat EL5 2.6.18-128 i686 Intel W n y n y y n
|
||
RedHat EL5 2.6.18-128 i686 PGI W n y n y y n
|
||
SuSe Linux 2.6.16 x86_64 GNU (1) W y y(3) y y y y
|
||
SuSe Linux 2.6.16 x86_64 Intel W n y n y y n
|
||
SuSe Linux 2.6.16 x86_64 PGI W n y n y y y
|
||
SuSe Linux 2.6.16 SGI Altix ia64 C y y y y y y
|
||
RedHat EL4 2.6.18 Xeon Lustre C y y y y y n
|
||
SuSe Linux 2.4.21 ia64 Intel C y y y y y n
|
||
Cray XT3 2.0.41 y y y y y n
|
||
|
||
|
||
Platform Shared Shared Shared Thread-
|
||
C libs F90 libs C++ libs safe
|
||
Solaris2.10 32-bit y y y y
|
||
Solaris2.10 64-bit y y y y
|
||
IRIX64_6.5 32-bit y dna y y
|
||
IRIX64_6.5 64-bit y y n y
|
||
Windows XP y y(4) y y
|
||
Windows XP x64 y y(4) y y
|
||
Windows Vista y n n y
|
||
Mac OS X 10.5 y n y n
|
||
AIX 5.3 32- and 64-bit n n n n
|
||
FreeBSD 6.3-STABLE 32&64 bit y n y y
|
||
RedHat EL4 2.6.9-42 i686 GNU (1) W y y y y
|
||
RedHat EL5 2.6.18-128 i686 GNU (1)W y y(2) y y
|
||
RedHat EL5 2.6.18-128 i686 Intel W y y y n
|
||
RedHat EL5 2.6.18-128 i686 PGI W y y y n
|
||
SuSe Linux 2.6.16 x86_64 GNU (1) W y y y y
|
||
SuSe Linux 2.6.16 x86_64 Intel W y y y n
|
||
SuSe Linux 2.6.16 x86_64 PGI W y y y n
|
||
SuSe Linux 2.6.16 SGI Altix ia64 C y n
|
||
RedHat EL4 2.6.18 Xeon Lustre C y y y n
|
||
SuSe Linux 2.4.21 ia64 Intel C y y y n
|
||
Cray XT3 2.0.41 n n n n
|
||
|
||
(1) Fortran compiled with g95.
|
||
(2) With PGI and Absoft compilers.
|
||
(3) With PGI compiler for Fortran.
|
||
(4) Using Visual Studio 2005 or Cygwin
|
||
Compiler versions for each platform are listed in the preceding
|
||
"Platforms Tested" table.
|
||
|
||
|
||
Known Problems
|
||
==============
|
||
* Parallel tests failed with 16 processes with data inconsistency at testphdf5
|
||
/ dataset_readAll. Parallel tests also failed with 32 and 64 processes with
|
||
collective abort of all ranks at t_posix_compliant / allwrite_allread_blocks
|
||
with MPI IO. CMC - 2009/04/28
|
||
|
||
* There is a known issue in which HDF5 will change the timestamp on a file
|
||
simply by opening it with read/write permissions, even if the file is not
|
||
modified in any way. This is due to the way in which HDF5 manages the file
|
||
superblock. A fix is currently underway and should be included in the 1.8.4
|
||
release of HDF5. MAM - 2009/04/28
|
||
|
||
* For gcc v4.3 and v4.4, with production mode, if -O3 is used, H5Tinit.c
|
||
would fail to compile. Actually bad H5Tinit.c is produced. If -O (same
|
||
as -O1) is used, H5Tinit.c compiled okay but test/dt_arith would fail.
|
||
When -O0 (no optimizatio) is used, H5Tinit.c compilete okay and all
|
||
tests passed. Therefore, -O0 is imposed for v4.3 and v4.4 of gcc.
|
||
AKC - 2009/04/20
|
||
|
||
* For Red Storm, a Cray XT3 system, the tools/h5ls/testh5ls.sh and
|
||
tools/h5copy/testh5copy.sh will fail some of its sub-tests. These sub-tests
|
||
are expected to fail and should exit with a non-zero code but the yod
|
||
command does not propagate the exit code of the executables. Yod always
|
||
returns 0 if it can launch the executable. The test suite shell expects
|
||
a non-zero for this particular test, therefore it concludes the test has
|
||
failed when it receives 0 from yod. Skip all the "failing" test for now
|
||
by changing them as following.
|
||
|
||
======== Original tools/h5ls/testh5ls.sh =========
|
||
TOOLTEST tgroup-1.ls 1 -w80 -r -g tgroup.h5
|
||
======== Change to ===============================
|
||
echo SKIP TOOLTEST tgroup-1.ls 1 -w80 -r -g tgroup.h5
|
||
==================================================
|
||
|
||
======== Original tools/h5copy/testh5copy.sh =========
|
||
TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d grp_rename
|
||
TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d /grp_rename/grp_dsets
|
||
TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_dsets -d /E/F/grp_dsets
|
||
TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_nested -d /G/H/grp_nested
|
||
H5LSTEST $FILEOUT
|
||
======== Change to ===============================
|
||
echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d grp_rename
|
||
echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d /grp_rename/grp_dsets
|
||
echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_dsets -d /E/F/grp_dsets
|
||
echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_nested -d /G/H/grp_nested
|
||
echo SKIP H5LSTEST $FILEOUT
|
||
==================================================
|
||
AKC - 2008/11/10
|
||
|
||
* For Red Storm, a Cray XT3 system, the yod command sometimes gives the
|
||
message, "yod allocation delayed for node recovery". This interferes with
|
||
test suites that do not expect seeing this message. See the section of "Red
|
||
Storm" in file INSTALL_parallel for a way to deal with this problem.
|
||
AKC - 2008/05/28
|
||
|
||
* We have discovered two problems when running collective IO parallel HDF5
|
||
tests with chunking storage on the ChaMPIon MPI compiler on tungsten, a
|
||
Linux cluster at NCSA.
|
||
|
||
Under some complex selection cases:
|
||
1) MPI_Get_element returns the wrong value.
|
||
2) MPI_Type_struct also generates the wrong derived datatype and corrupt
|
||
data may be generated.
|
||
These issues arise only when turning on collective IO with chunking storage
|
||
with some complex selections. We have not found these problems on other
|
||
MPI-IO compilers. If you encounter these problems, you may use independent
|
||
IO instead.
|
||
|
||
To avoid this behavior, change the following line in your code
|
||
H5Pset_dxpl_mpio(xfer_plist, H5FD_MPIO_COLLECTIVE);
|
||
to
|
||
H5Pset_dxpl_mpio(xfer_plist, H5FD_MPIO_INDEPENDENT);
|
||
KY - 2007/08/24
|
||
|
||
* On Intel 64 Linux cluster (RH 4, Linux 2.6.9) with Intel 10.0 compilers,
|
||
use -mp -O1 compilation flags to build the libraries. A higher level of
|
||
optimization causes failures in several HDF5 library tests.
|
||
|
||
* For LLNL, uP: both serial and parallel tests pass.
|
||
Zeus: Serial tests pass but parallel tests fail with a known problem in MPI.
|
||
ubgl: Serial tests pass but parallel tests fail.
|
||
|
||
* On mpich 1.2.5 and 1.2.6, if more than two processes contribute no IO and
|
||
the application asks to do collective IO, we have found that when using 4
|
||
processors, a simple collective write will sometimes be hung. This can be
|
||
verified with t_mpi test under testpar.
|
||
|
||
* On IRIX6.5, when the C compiler version is greater than 7.4, complicated
|
||
MPI derived datatype code will work. However, the user should increase
|
||
the value of the MPI_TYPE_MAX environment variable to some appropriate value
|
||
to use collective irregular selection code. For example, the current
|
||
parallel HDF5 test needs to raise MPI_TYPE_MAX to 200,000 to pass the test.
|
||
|
||
* A dataset created or rewritten with a v1.6.3 library or after cannot be read
|
||
with the v1.6.2 library or before when the Fletcher32 EDC filter is enabled.
|
||
There was a bug in the calculation of the Fletcher32 checksum in the
|
||
library before v1.6.3; the checksum value was not consistent between big-
|
||
endian and little-endian systems. This bug was fixed in Release 1.6.3.
|
||
However, after fixing the bug, the checksum value was no longer the same as
|
||
before on little-endian system. Library releases after 1.6.4 can still read
|
||
datasets created or rewritten with an HDF5 library of v1.6.2 or before.
|
||
SLU - 2005/6/30
|
||
|
||
* On IBM AIX systems, parallel HDF5 mode will fail some tests with error
|
||
messages like "INFO: 0031-XXX ...". This is from the command `poe'.
|
||
Set the environment variable MP_INFOLEVEL to 0 to minimize the messages
|
||
and run the tests again.
|
||
|
||
The tests may fail with messages like "The socket name is already in use",
|
||
but HDF5 does not use sockets. This failure is due to problems with the
|
||
poe command trying to set up the debug socket. To resolve this problem,
|
||
check to see whether there are many old /tmp/s.pedb.* files staying around.
|
||
These are sockets used by the poe command and left behind due to failed
|
||
commands. First, ask your system administrator to clean them out.
|
||
Lastly, request IBM to provide a means to run poe without the debug socket.
|
||
|
||
* The --enable-static-exec configure flag fails to compile for Solaris
|
||
platforms. This is due to the fact that not all of the system libraries on
|
||
Solaris are available in a static format.
|
||
|
||
The --enable-static-exec configure flag also fails to correctly compile
|
||
on IBM SP2 platforms for serial mode. The parallel mode works fine with
|
||
this option.
|
||
|
||
It is suggested that you do not use this option on these platforms
|
||
during configuration.
|
||
|
||
* There is also a configure error on Altix machines that incorrectly reports
|
||
when a version of Szip without an encoder is being used.
|
||
|
||
* Information about building with PGI and Intel compilers is available in
|
||
the INSTALL file sections 4.7 and 4.8.
|
||
|
||
|
||
%%%%1.8.2%%%%
|
||
|
||
|
||
HDF5 version 1.8.2 released on Mon Nov 10 15:43:09 CST 2008
|
||
================================================================================
|
||
|
||
INTRODUCTION
|
||
============
|
||
|
||
This document describes the differences between HDF5-1.8.1 and HDF5 1.8.2,
|
||
and contains information on the platforms tested and known problems in
|
||
HDF5-1.8.2. For more details, see the files HISTORY-1_0-1_8_0_rc3.txt
|
||
and HISTORY-1_8.txt in the release_docs/ directory of the HDF5 source.
|
||
|
||
Links to the HDF5 1.8.2 source code, documentation, and additional materials
|
||
can be found on the HDF5 web page at:
|
||
|
||
http://www.hdfgroup.org/products/hdf5/
|
||
|
||
The HDF5 1.8.2 release can be obtained from:
|
||
|
||
http://www.hdfgroup.org/HDF5/release/obtain5.html
|
||
|
||
User documentation for 1.8.2 can be accessed directly at this location:
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/
|
||
|
||
New features in the HDF5-1.8.x release series, including brief general
|
||
descriptions of some new and modified APIs, are described in the "What's New
|
||
in 1.8.0?" document:
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/ADGuide/WhatsNew180.html
|
||
|
||
All new and modified APIs are listed in detail in the "HDF5 Software Changes
|
||
from Release to Release" document, in the section "Release 1.8.2 (current
|
||
release) versus Release 1.8.1":
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/ADGuide/Changes.html
|
||
|
||
If you have any questions or comments, please send them to the HDF Help Desk:
|
||
|
||
help@hdfgroup.org
|
||
|
||
|
||
CONTENTS
|
||
========
|
||
|
||
- New Features
|
||
- Support for new platforms and languages
|
||
- Bug Fixes since HDF5-1.8.1
|
||
- Platforms Tested
|
||
- Supported Configuration Features Summary
|
||
- Known Problems
|
||
|
||
|
||
New Features
|
||
============
|
||
|
||
Configuration
|
||
-------------
|
||
- Upgraded libtool to version 2.2.6a. (MAM - 2008/10/15).
|
||
|
||
Library
|
||
-------
|
||
- Added two new public routines: H5Pget_elink_fapl() and
|
||
H5Pset_elink_fapl(). (see bug #1247) (VC - 2008/10/13)
|
||
- Improved free space tracking in file to be faster. (QAK - 2008/10/06)
|
||
- Added 'mounted' field to H5G_info_t struct. (QAK - 2008/07/15)
|
||
|
||
Parallel Library
|
||
----------------
|
||
- None
|
||
|
||
Tools
|
||
-----
|
||
- h5repack: added new options -u and -b to add a userblock to an HDF5
|
||
file during the repack. (PVN - 2008/08/26)
|
||
- h5repack: added options -t and -a to call H5Pset_alignment while
|
||
creating a repacked file. (PVN - 2008/08/29)
|
||
- h5ls: added capability to traverse through external links when the -r
|
||
(recursive) flag is given. (NAF - 2008/09/16)
|
||
- h5ls: added -E option to enable traversal of external links.
|
||
h5ls will not traverse external links without this flag being set.
|
||
(NAF - 2008/10/06)
|
||
- h5dump: when -b flag is used without a keyword after it, binary
|
||
output defaults to NATIVE. MEMORY keyword was deprecated
|
||
and replaced by NATIVE keyword. (PVN - 2008/10/30)
|
||
- h5diff: returns 1 when file graphs differ by any object.
|
||
Error return code was changed to 2 from -1. (PVN - 2008/10/30)
|
||
- h5import: TEXTFPE (scientific format) was deprecated. Use TEXTFP
|
||
instead (PVN - 2008/10/30)
|
||
|
||
|
||
|
||
F90 API
|
||
------
|
||
- Added optional parameter 'mounted' to H5Gget_info_f,
|
||
H5Gget_info_by_idx_f, H5Gget_info_by_name_f (MSB - 2008/09/24)
|
||
- Added H5Tget_native_type_f (MSB - 2008/09/30)
|
||
|
||
|
||
C++ API
|
||
------
|
||
- These member functions were added as wrapper for H5Rdereference to
|
||
replace the incorrect IdComponent::dereference().
|
||
void H5Object::dereference(H5Object& obj, void* ref,
|
||
H5R_type_t ref_type=H5R_OBJECT)
|
||
void H5Object::dereference(H5File& h5file, void* ref,
|
||
H5R_type_t ref_type=H5R_OBJECT)
|
||
void H5Object::dereference(Attribute& obj, void* ref,
|
||
H5R_type_t ref_type=H5R_OBJECT)
|
||
|
||
In addition, these constructors were added to create the associated
|
||
objects by way of dereference:
|
||
DataSet(H5Object& obj, void* ref, H5R_type_t ref_type=H5R_OBJECT)
|
||
DataSet(H5File& file, void* ref, H5R_type_t ref_type=H5R_OBJECT)
|
||
DataSet(Attribute& attr, void* ref, H5R_type_t ref_type=H5R_OBJECT)
|
||
Group(H5Object& obj, void* ref, H5R_type_t ref_type=H5R_OBJECT)
|
||
Group(H5File& obj, void* ref, H5R_type_t ref_type=H5R_OBJECT)
|
||
Group(Attribute& attr, void* ref, H5R_type_t ref_type=H5R_OBJECT)
|
||
DataType(H5Object& obj, void* ref, H5R_type_t ref_type=H5R_OBJECT)
|
||
DataType(H5File& file, void* ref, H5R_type_t ref_type=H5R_OBJECT)
|
||
DataType(Attribute& attr, void* ref, H5R_type_t ref_type=H5R_OBJECT)
|
||
(BMR - 2008/10/29)
|
||
|
||
|
||
Support for New Platforms, Languages, and Compilers
|
||
===================================================
|
||
- Intel 10.1 is supported on Mac OS X 10.5.4.
|
||
Note:
|
||
When Fortran is enabled, configure automatically
|
||
disables the build of shared libraries (i.e., only
|
||
static C and C++ HDF5 libraries will be built
|
||
along with the static HDF5 Fortran library).
|
||
Intel 10.1 C and C++ compilers require
|
||
"-no-multibyte-chars" compilation flag due to the known
|
||
bug in the compilers.
|
||
(EIP - 2008/10/30)
|
||
|
||
|
||
Bug Fixes since HDF5-1.8.1
|
||
==========================
|
||
|
||
Configuration
|
||
-------------
|
||
- Fixed error with 'make check install' failing due to h5dump
|
||
needing other tools built first. (MAM - 2008/10/15).
|
||
- When using shared szip, it is no longer necessary to specify
|
||
the path to the shared szip libraries in LD_LIBRARY_PATH.
|
||
(MAM - 2008/10/15).
|
||
- The file libhdf5_fortran.settings is not installed since its content
|
||
is included in libhdf5.settings now. (AKC - 2008/10/21)
|
||
- "make DESTDIR=xxx install" failed to install some tools and files
|
||
(e.g., h5cc and fortran modules). Fixed. (AKC - 2008/10/8).
|
||
|
||
Library
|
||
-------
|
||
- H5Ovisit and H5Ovisit_by_name will now properly terminate when the
|
||
callback function returns a positive value on the starting object.
|
||
(NAF - 2008/11/03)
|
||
- Fixed an error where a null message could be created that was larger
|
||
than could be written to the file. (NAF - 2008/10/23)
|
||
- Corrected error with family/split/multi VFD not updating driver info
|
||
when "latest" version of the file format used. (QAK - 2008/10/14)
|
||
- Corrected alignment+threshold errors to work correctly when metadata
|
||
aggregation is enabled. (QAK - 2008/10/06)
|
||
- Changed H5Fget_obj_count and H5Fget_obj_ids to ignore objects
|
||
registered by the library for internal library use.
|
||
(NAF - 2008/10/06)
|
||
- Fixed potential memory leak during compound conversion.
|
||
(NAF - 2008/10/06)
|
||
- Changed the return value of H5Fget_obj_count from INT to SSIZE_T.
|
||
Also changed the return value of H5Fget_obj_ids from HERR_T to
|
||
SSIZE_T and the type of the parameter MAX_OBJS from INT to SIZE_T.
|
||
(SLU - 2008/09/26)
|
||
- Fixed an issue that could cause data to be improperly overwritten
|
||
during compound type conversion. (NAF - 2008/09/19)
|
||
- Fixed pointer alignment violations that could occur during vlen
|
||
conversion. (NAF - 2008/09/16)
|
||
- Fixed problem where library could cause a segmentation fault when
|
||
an invalid location ID was given to H5Giterate(). (QAK - 2008/08/19)
|
||
- Fixed improper shutdown when objects have reference count > 1. The
|
||
library now tracks reference count due to the application separately
|
||
from that due to internal library routines. (NAF - 2008/08/19)
|
||
- Fixed assertion failure caused by incorrect array datatype version.
|
||
(NAF - 2008/08/08)
|
||
- Fixed an issue where mount point traversal would fail when using
|
||
multiple handles for the child. (NAF - 2008/08/07)
|
||
- Fixed an issue where mount points were inaccessible when using
|
||
multiple file handles for the parent. The mount table is now in
|
||
the shared file structure (the parent pointer is still in the
|
||
top structure). (NAF - 2008/08/07)
|
||
- Fixed assertion failure caused by incorrect array datatype version.
|
||
(NAF - 2008/08/04)
|
||
- Fixed issue where a group could have a file mounted on it twice.
|
||
(QAK - 2008/07/15)
|
||
- When an attribute was opened twice and data was written with
|
||
one of the handles, the file didn't have the data. It happened
|
||
because each handle had its own object structure, and the empty
|
||
one overwrote the data with fill value. This is fixed by making
|
||
some attribute information like the data be shared in the
|
||
attribute structure. (SLU - 2008/07/07)
|
||
- Fixed a Windows-specific issue in the ohdr test which was causing
|
||
users in some timezones to get false errors. This a deficiency in
|
||
the Windows mktime() function, and has been handled properly.
|
||
(SJW - 2008/06/19)
|
||
|
||
Parallel Library
|
||
----------------
|
||
- None
|
||
|
||
Tools
|
||
-----
|
||
- h5dump now checks for uniqueness of committed datatypes.
|
||
(NAF - 2008/10/15)
|
||
- Fixed unnecessary indentation of committed datatypes in h5dump.
|
||
(NAF - 2008/10/15)
|
||
- Fixed bugs in h5stat: segmemtation fault when printing groups and
|
||
print warning message when traversal of objects is unsuccessful.
|
||
(see bug #1253) (VC- 2008/10/13)
|
||
- Fixed bug in h5ls that prevented relative group listings (like
|
||
"h5ls foo.h5/bar") from working correctly (QAK - 2008/06/03)
|
||
- h5dump: when doing binary output (-b), the stdout printing of
|
||
attributes was done incorrectly. Removed printing of attributes
|
||
when doing binary output. (PVN - 2008/06/05)
|
||
|
||
|
||
F90 API
|
||
------
|
||
- h5sselect_elements_f: Added additional operators H5S_SELECT_APPEND
|
||
and H5S_SELECT_PREPEND (MSB - 2008/09/30)
|
||
- h5sget_select_elem_pointlist: Fixed list of returned points by
|
||
rearranging the point list correctly by accounting for C
|
||
conventions. (MSB - 2008/09/30)
|
||
- h5sget_select_hyper_blocklist_f: Fixed error in transposed dimension
|
||
of arrays.(MSB - 2008/9/30)
|
||
- h5sget_select_bounds_f: Swapped array bounds to account for C and
|
||
Fortran reversed array notation (MSB - 2008/9/30)
|
||
- Changed to initializing string to a blank character instead of a
|
||
null type in tH5P.f90 to fix compiling error using AIX 5.3.0
|
||
(MSB - 2008/7/29)
|
||
- Fixed missing commas in H5test_kind.f90 detected by NAG compiler
|
||
(MSB - 2008/7/29)
|
||
- Fixed passing and array to a scalar in tH5A_1_8.f90 detected by
|
||
NAG compiler (MSB - 2008/7/29)
|
||
- Added the ability of the test programs to use the status of
|
||
HDF5_NOCLEANUP to determine if the *.h5 files should be removed
|
||
or not after the tests are completed (MSB - 2008/10/1)
|
||
- In nh5tget_offset_c: (MSB 9/12/2008)
|
||
If offset was equal to 0 it returned the error code of -1,
|
||
this was changed to return an error code of -1 when the offset
|
||
value is < 0.
|
||
- Uses intrinsic Fortran function SIZEOF if available when detecting
|
||
type of INTEGERs and REALs in H5test_kind.f90 (MSB - 2008/9/3)
|
||
- Put the DOUBLE PRECISION interfaces in a separate module and
|
||
added a USE statement for the module. The interfaces are
|
||
included/excluded depending on the state of FORTRAN_DEFAULT_REAL
|
||
is DBLE_F which detects if the default REAL is DOUBLE PRECISION.
|
||
This allows the library to be compiled with -r8 Fortran flag
|
||
without the user needing to edit the source code.
|
||
(MSB - 200/8/27)
|
||
- Enable building shared library for fortran by adding the flag -fPIC
|
||
to the compile flags for versions of Intel Fortran compiler >=9
|
||
(MSB - 2008/8/26)
|
||
|
||
C++ API
|
||
------
|
||
- Fixed a design bug which allowed an Attribute object to create/modify
|
||
attributes (bugzilla #1068). The API class hierarchy was revised
|
||
to address the problem. Classes AbstractDS and Attribute are moved
|
||
out of H5Object. Class Attribute now multiply inherits from
|
||
IdComponent and AbstractDs and class DataSet from H5Object and
|
||
AbstractDs. In addition, the data member IdComponent::id was
|
||
moved into subclasses: Attribute, DataSet, DataSpace, DataType,
|
||
H5File, Group, and PropList. (BMR - 2008/05/20)
|
||
- IdComponent::dereference was incorrect and replaced as described
|
||
in "New Features" section.
|
||
(BMR - 2008/10/29)
|
||
|
||
|
||
Platforms Tested
|
||
================
|
||
The following platforms and compilers have been tested for this release.
|
||
|
||
AIX 5.3 xlc 7.0.0.8
|
||
xlf 09.01.0000.0008
|
||
xlC 7.0.0.8
|
||
mpcc_r 7.0.0.8
|
||
mpxlf_r 09.01.0000.0008
|
||
|
||
Cray XT3 (2.0.41) cc (pgcc) 7.1-4
|
||
(red storm) ftn (pgf90) 7.1-4
|
||
CC (pgCC) 7.1-4
|
||
|
||
FreeBSD 6.3-STABLE i386 gcc 3.4.6 [FreeBSD] 20060305
|
||
(duty) g++ 3.4.6 [FreeBSD] 20060305
|
||
gcc 4.2.5 20080702
|
||
g++ 4.2.5 20080702
|
||
gfortran 4.2.5 20080702
|
||
|
||
FreeBSD 6.3-STABLE amd64 gcc 3.4.6 [FreeBSD] 20060305
|
||
(liberty) g++ 3.4.6 [FreeBSD] 20060305
|
||
gcc 4.2.5 20080702
|
||
g++ 4.2.5 20080702
|
||
gfortran 4.2.5 20080702
|
||
|
||
IRIX64 6.5 (64 & n32) MIPSpro cc 7.4.4m
|
||
F90 MIPSpro 7.4.4m
|
||
C++ MIPSpro cc 7.4.4m
|
||
|
||
Linux 2.6.9-42.0.10.ELsmp #1 gcc (GCC) 3.4.6
|
||
SMP i686 i386 G95 (GCC 4.0.3 (g95 0.92!) April 18 2007)
|
||
(kagiso) PGI C, Fortran, C++ 7.2-1 32-bit
|
||
Intel(R) C Compiler for 32-bit
|
||
applications, Version 10.1
|
||
Intel(R) C++ Compiler for 32-bit
|
||
applications, Version 10.1
|
||
Intel(R) Fortran Compiler for 32-bit
|
||
applications, Version 10.1
|
||
Absoft 32-bit Fortran 95 10.0.4
|
||
MPICH mpich-1.2.7 compiled with
|
||
gcc 3.4.6 and G95 (GCC 4.0.3 (g95 0.92!)
|
||
MPICH mpich2-1.0.6p1 compiled with
|
||
gcc 3.4.6 and G95 (GCC 4.0.3 (g95 0.92!)
|
||
|
||
Linux 2.6.16.46-0.14-smp #1 Intel(R) C++ for Intel(R) EM64T
|
||
SMP x86_64 GNU/Linux Ver. 10.1.013
|
||
(smirom) Intel(R) Fortran Intel(R) EM64T
|
||
Ver. 10.1.013
|
||
PGI C, Fortran, C++ Version 7.2-1
|
||
for 64-bit target on x86-64
|
||
MPICH mpich-1.2.7 compiled with
|
||
gcc 4.1.2 and G95 (GCC 4.0.3 (g95 0.92!)
|
||
MPICH mpich2-1.0.7 compiled with
|
||
gcc 4.1.2 and G95 (GCC 4.0.3 (g95 0.92!)
|
||
tested for both 32- and 64-bit binaries
|
||
|
||
Linux 2.6.16.54-0.2.5 #1 Intel(R) C++ Version 10.1.017
|
||
Altix SMP ia64 Intel(R) Fortran Itanium(R) Version 10.1.017
|
||
(cobalt) SGI MPI 1.16
|
||
|
||
SunOS 5.10 32- and 64-bit Sun WorkShop 6 update 2 C 5.8
|
||
(linew) Sun WorkShop 6 update 2 Fortran 95 8.2
|
||
Sun WorkShop 6 update 2 C++ 5.8
|
||
Patch 121019-06
|
||
|
||
Xeon Linux 2.6.9-42.0.10.EL_lustre-1.4.10.1smp
|
||
(abe) Intel(R) C++ Version 10.0.026
|
||
Intel(R) Fortran Compiler Version 10.0.026
|
||
Open MPI 1.2.2
|
||
MVAPICH2-0.9.8p28p2patched-intel-ofed-1.2
|
||
compiled with icc v10.0.026 and
|
||
ifort 10.0.026
|
||
|
||
IA-64 Linux 2.4.21-309.tg1 #1 SMP
|
||
ia64 gcc (GCC) 3.2.2
|
||
(NCSA tg-login) Intel(R) C++ Version 8.1.037
|
||
Intel(R) Fortran Compiler Version 8.1.033
|
||
mpich-gm-1.2.7p1..16-intel-8.1.037-r1
|
||
|
||
Intel 64 Linux 2.6.9-42.0.10.EL_lustre-1.4.10.1smp
|
||
(abe) gcc 3.4.6 20060404
|
||
Intel(R) C++ Version 10.0
|
||
Intel (R) Fortran Compiler Version 10.0
|
||
mvapich2-0.9.8p2patched-intel-ofed-1.2
|
||
|
||
Windows XP Visual Studio .NET
|
||
Visual Studio 2005 w/ Intel Fortran 9.1
|
||
Cygwin(native gcc compiler and g95)
|
||
|
||
Windows XP x64 Visual Studio 2005 w/ Intel Fortran 9.1
|
||
|
||
Windows Vista Visual Studio 2005
|
||
|
||
MAC OS 10.5.4 (Intel) i686-apple-darwin9-gcc-4.0.1 (GCC) 4.0.1
|
||
GNU Fortran (GCC) 4.3.0 20070810
|
||
G95 (GCC 4.0.3 (g95 0.91!) Apr 24 2008)
|
||
Intel C, C++ and Fortran compilers 10.1
|
||
|
||
|
||
Supported Configuration Features Summary
|
||
========================================
|
||
|
||
In the tables below
|
||
y = tested and supported
|
||
n = not supported or not tested in this release
|
||
x = not working in this release
|
||
dna = does not apply
|
||
( ) = footnote appears below second table
|
||
<blank> = testing incomplete on this feature or platform
|
||
|
||
Platform C F90 F90 C++ zlib SZIP
|
||
parallel parallel
|
||
Solaris2.10 32-bit n y n y y y
|
||
Solaris2.10 64-bit n y n y y y
|
||
IRIX64_6.5 32-bit n n n n y y
|
||
IRIX64_6.5 64-bit n y y y y y
|
||
Windows XP n y(15) n(15) y y y
|
||
Windows XP x64 n y(15) n(15) y y y
|
||
Windows Vista n n n y y y
|
||
Mac OS X 10.5 Intel n y n y y y
|
||
AIX 5.3 32- and 64-bit n y n y y n
|
||
FreeBSD 6.3-STABLE
|
||
32&64 bit n y n y y y
|
||
RedHat EL4 (3) W y(1) y(10) y(1) y y y
|
||
RedHat EL4 Intel (3) W n y n y y n
|
||
RedHat EL4 PGI (3) W n y n y y n
|
||
SuSe x86_64 gcc(3,12) W y(2) y(11) y(2) y y y
|
||
SuSe x86_64 Int(3,12) W n y(13) n y y n
|
||
SuSe x86_64 PGI(3,12) W n y(8) n y y y
|
||
Linux 2.6 SuSE ia64 C
|
||
Intel (3,7) y y y y y n
|
||
Linux 2.6 SGI Altix
|
||
ia64 Intel (3) y y y y y y
|
||
Linux 2.6 RHEL C
|
||
Lustre Intel (5) y(4) y y(4) y y n
|
||
Cray XT3 2.0.41 y y y y y n
|
||
|
||
|
||
Platform Shared Shared Shared Thread-
|
||
C libs F90 libs C++ libs safe
|
||
Solaris2.10 32-bit y y y y
|
||
Solaris2.10 64-bit y y y y
|
||
IRIX64_6.5 32-bit y dna y y
|
||
IRIX64_6.5 64-bit y y n y
|
||
Windows XP y y(15) y y
|
||
Windows XP x64 y y(15) y y
|
||
Windows Vista y n n y
|
||
Mac OS X 10.5 y n y n
|
||
AIX 5.3 32- and 64-bit n n n n
|
||
FreeBSD 6.2 32&64 bit y n y y
|
||
RedHat EL4 (3) W y y(10) y y
|
||
RedHat EL4 Intel (3) W y y y n
|
||
RedHat EL4 PGI (3) W y y y n
|
||
SuSe x86_64 GNU(3,12) W y y y y
|
||
SuSe x86_64 Int(3,12) W y y y n
|
||
SuSe x86_64 PGI(3,12) W y y y n
|
||
Linux 2.4 SuSE C
|
||
ia64 C Intel (7) y y y n
|
||
Linux 2.4 SGI Altix C
|
||
ia64 Intel y n
|
||
Linux 2.6 RHEL C
|
||
Lustre Intel (5) y y y n
|
||
Cray XT3 2.0.41 n n n n
|
||
|
||
Notes: (1) Using mpich2 1.0.6.
|
||
(2) Using mpich2 1.0.7.
|
||
(3) Linux 2.6 with GNU, Intel, and PGI compilers, as indicated.
|
||
W or C indicates workstation or cluster, respectively.
|
||
(4) Using mvapich2 0.9.8.
|
||
(5) Linux 2.6.9-42.0.10. Xeon cluster with ELsmp_perfctr_lustre
|
||
and Intel compilers
|
||
(6) Linux 2.4.21-32.0.1. Xeon cluster with ELsmp_perfctr_lustre
|
||
and Intel compilers
|
||
(7) Linux 2.4.21, SuSE_292.till. Ia64 cluster with Intel compilers
|
||
(8) pgf90
|
||
(9) With Compaq Visual Fortran 6.6c compiler.
|
||
(10) With PGI and Absoft compilers.
|
||
(11) PGI and Intel compilers for both C and Fortran
|
||
(12) AMD Opteron x86_64
|
||
(13) ifort
|
||
(14) Yes with C and Fortran, but not with C++
|
||
(15) Using Visual Studio 2005 or Cygwin
|
||
(16) Not tested for this release.
|
||
Compiler versions for each platform are listed in the preceding
|
||
"Platforms Tested" table.
|
||
|
||
|
||
Known Problems
|
||
==============
|
||
* For Red Storm, a Cray XT3 system, the tools/h5ls/testh5ls.sh and
|
||
tools/h5copy/testh5copy.sh will fail some of its sub-tests. These sub-tests
|
||
are expected to fail and should exit with a non-zero code but the yod
|
||
command does not propagate the exit code of the executables. Yod always
|
||
returns 0 if it can launch the executable. The test suite shell expects
|
||
a non-zero for this particular test, therefore it concludes the test has
|
||
failed when it receives 0 from yod. Skip all the "failing" test for now
|
||
by changing them as following.
|
||
|
||
======== Original tools/h5ls/testh5ls.sh =========
|
||
TOOLTEST tgroup-1.ls 1 -w80 -r -g tgroup.h5
|
||
======== Change to ===============================
|
||
echo SKIP TOOLTEST tgroup-1.ls 1 -w80 -r -g tgroup.h5
|
||
==================================================
|
||
|
||
======== Original tools/h5copy/testh5copy.sh =========
|
||
TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d grp_rename
|
||
TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d /grp_rename/grp_dsets
|
||
TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_dsets -d /E/F/grp_dsets
|
||
TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_nested -d /G/H/grp_nested
|
||
H5LSTEST $FILEOUT
|
||
======== Change to ===============================
|
||
echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d grp_rename
|
||
echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d /grp_rename/grp_dsets
|
||
echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_dsets -d /E/F/grp_dsets
|
||
echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_nested -d /G/H/grp_nested
|
||
echo SKIP H5LSTEST $FILEOUT
|
||
==================================================
|
||
AKC - 2008/11/10
|
||
|
||
* For Red Storm, a Cray XT3 system, the yod command sometimes gives the
|
||
message, "yod allocation delayed for node recovery". This interferes with
|
||
test suites that do not expect seeing this message. See the section of "Red
|
||
Storm" in file INSTALL_parallel for a way to deal with this problem.
|
||
AKC - 2008/05/28
|
||
|
||
* We have discovered two problems when running collective IO parallel HDF5
|
||
tests with chunking storage on the ChaMPIon MPI compiler on tungsten, a
|
||
Linux cluster at NCSA.
|
||
|
||
Under some complex selection cases:
|
||
1) MPI_Get_element returns the wrong value.
|
||
2) MPI_Type_struct also generates the wrong derived datatype and corrupt
|
||
data may be generated.
|
||
These issues arise only when turning on collective IO with chunking storage
|
||
with some complex selections. We have not found these problems on other
|
||
MPI-IO compilers. If you encounter these problems, you may use independent
|
||
IO instead.
|
||
|
||
To avoid this behavior, change the following line in your code
|
||
H5Pset_dxpl_mpio(xfer_plist, H5FD_MPIO_COLLECTIVE);
|
||
to
|
||
H5Pset_dxpl_mpio(xfer_plist, H5FD_MPIO_INDEPENDENT);
|
||
|
||
KY - 2007/08/24
|
||
|
||
* On Intel 64 Linux cluster (RH 4, Linux 2.6.9) with Intel 10.0 compilers,
|
||
use -mp -O1 compilation flags to build the libraries. A higher level of
|
||
optimization causes failures in several HDF5 library tests.
|
||
|
||
* For LLNL, uP: both serial and parallel tests pass.
|
||
Zeus: Serial tests pass but parallel tests fail with a known problem in MPI.
|
||
ubgl: Serial tests pass but parallel tests fail.
|
||
|
||
* On mpich 1.2.5 and 1.2.6, if more than two processes contribute no IO and
|
||
the application asks to do collective IO, we have found that when using 4
|
||
processors, a simple collective write will sometimes be hung. This can be
|
||
verified with t_mpi test under testpar.
|
||
|
||
* On IRIX6.5, when the C compiler version is greater than 7.4, complicated
|
||
MPI derived datatype code will work. However, the user should increase
|
||
the value of the MPI_TYPE_MAX environment variable to some appropriate value
|
||
to use collective irregular selection code. For example, the current
|
||
parallel HDF5 test needs to raise MPI_TYPE_MAX to 200,000 to pass the test.
|
||
|
||
* A dataset created or rewritten with a v1.6.3 library or after cannot be read
|
||
with the v1.6.2 library or before when the Fletcher32 EDC filter is enabled.
|
||
There was a bug in the calculation of the Fletcher32 checksum in the
|
||
library before v1.6.3; the checksum value was not consistent between big-
|
||
endian and little-endian systems. This bug was fixed in Release 1.6.3.
|
||
However, after fixing the bug, the checksum value was no longer the same as
|
||
before on little-endian system. Library releases after 1.6.4 can still read
|
||
datasets created or rewritten with an HDF5 library of v1.6.2 or before.
|
||
SLU - 2005/6/30
|
||
|
||
* On IBM AIX systems, parallel HDF5 mode will fail some tests with error
|
||
messages like "INFO: 0031-XXX ...". This is from the command `poe'.
|
||
Set the environment variable MP_INFOLEVEL to 0 to minimize the messages
|
||
and run the tests again.
|
||
|
||
The tests may fail with messages like "The socket name is already in use",
|
||
but HDF5 does not use sockets. This failure is due to problems with the
|
||
poe command trying to set up the debug socket. To resolve this problem,
|
||
check to see whether there are many old /tmp/s.pedb.* files staying around.
|
||
These are sockets used by the poe command and left behind due to failed
|
||
commands. First, ask your system administrator to clean them out.
|
||
Lastly, request IBM to provide a means to run poe without the debug socket.
|
||
|
||
* The --enable-static-exec configure flag fails to compile for Solaris
|
||
platforms. This is due to the fact that not all of the system libraries on
|
||
Solaris are available in a static format.
|
||
|
||
The --enable-static-exec configure flag also fails to correctly compile
|
||
on IBM SP2 platforms for serial mode. The parallel mode works fine with
|
||
this option.
|
||
|
||
It is suggested that you do not use this option on these platforms
|
||
during configuration.
|
||
|
||
* There is also a configure error on Altix machines that incorrectly reports
|
||
when a version of Szip without an encoder is being used.
|
||
|
||
* Information about building with PGI and Intel compilers is available in
|
||
the INSTALL file sections 4.7 and 4.8.
|
||
|
||
|
||
|
||
|
||
%%%%1.8.1%%%%
|
||
|
||
|
||
HDF5 version 1.8.1 released on Thu May 29 15:28:55 CDT 2008
|
||
================================================================================
|
||
|
||
INTRODUCTION
|
||
============
|
||
|
||
This document describes the differences between the HDF5-1.8.1 release
|
||
and HDF5 1.8.0, and contains information on the platforms tested and known
|
||
problems in HDF5-1.8.1. For more details, see the files
|
||
HISTORY-1_0-1_8_0_rc3.txt and HISTORY-1_8.txt in the release_docs/ directory
|
||
of the HDF5 source.
|
||
|
||
Links to the HDF5 1.8.1 source code, documentation, and additional materials
|
||
can be found on the HDF5 web page at:
|
||
|
||
http://www.hdfgroup.org/products/hdf5/
|
||
|
||
The HDF5 1.8.1 release can be obtained from:
|
||
|
||
http://www.hdfgroup.org/HDF5/release/obtain5.html
|
||
|
||
User documentation for 1.8.1 can be accessed directly at this location:
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/
|
||
|
||
New features in the HDF5-1.8.x release series, including brief general
|
||
descriptions of some new and modified APIs, are described in the "What's New
|
||
in 1.8.0?" document:
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/ADGuide/WhatsNew180.html
|
||
|
||
All new and modified APIs are listed in detail in the "HDF5 Software Changes
|
||
from Release to Release" document, in the section "Release 1.8.1 (current
|
||
release) versus Release 1.8.0":
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/ADGuide/Changes.html
|
||
|
||
If you have any questions or comments, please send them to the HDF Help Desk:
|
||
|
||
help@hdfgroup.org
|
||
|
||
|
||
CONTENTS
|
||
========
|
||
|
||
- New Features
|
||
- Support for new platforms and languages
|
||
- Bug Fixes since HDF5-1.8.0
|
||
- Platforms Tested
|
||
- Supported Configuration Features Summary
|
||
- Known Problems
|
||
|
||
|
||
New Features
|
||
============
|
||
|
||
Configuration
|
||
-------------
|
||
- The lib/libhdf5.settings file contains much more configure
|
||
information. (AKC - 2008/05/18)
|
||
|
||
- The new configure option "--disable-sharedlib-rpath" disables
|
||
embedding the '-Wl,-rpath' information into executables when
|
||
shared libraries are produced, and instead solely relies on the
|
||
information in LD_LIBRARY_PATH. (MAM - 2008/05/15)
|
||
|
||
- Configuration suite now uses Autoconf 2.61, Automake 1.10.1, and
|
||
Libtool 2.2.2 (MAM - 2008/05/01)
|
||
|
||
Source code distribution
|
||
========================
|
||
|
||
Library
|
||
-------
|
||
- None
|
||
|
||
Parallel Library
|
||
----------------
|
||
- None
|
||
|
||
Tools
|
||
-----
|
||
- h5repack: Reinstated the -i and -o command line flags to specify
|
||
input and output files. h5repack now understands both the old
|
||
syntax (with -i and -o) and the new syntax introduced in Release
|
||
1.8.0. (PVN - 2008/05/23)
|
||
- h5dump: Added support for external links, displaying the object that
|
||
an external link points to. (PVN - 2008/05/12)
|
||
- h5dump: Added an option, -m, to allow user-defined formatting in the
|
||
output of floating point numbers. (PVN - 2008/05/06)
|
||
- h5dump, in output of the -p option: Added effective data compression
|
||
ratio to the dataset storage layout output when a compression filter
|
||
has been applied to a dataset. (PVN - 2008/05/01)
|
||
|
||
F90 API
|
||
------
|
||
New H5A, H5G, H5L, H5O, and H5P APIs to enable 1.8 features were
|
||
added. See "Release 1.8.1 (current release) versus Release 1.8.0" in
|
||
the document "HDF5 Software Changes from Release to Release"
|
||
(http://hdfgroup.org/HDF5/doc/ADGuide/Changes.html) for the
|
||
complete list of the new APIs.
|
||
|
||
C++ API
|
||
------
|
||
- None
|
||
|
||
|
||
Support for New Platforms, Languages, and Compilers
|
||
===================================================
|
||
- Both serial and parallel HDF5 are supported for the Red Storm machine
|
||
which is a Cray XT3 system.
|
||
|
||
- The Fortran library will work correctly if compiled with the -i8
|
||
flag. This has been tested with the g95, PGI and Intel Fortran
|
||
compilers.
|
||
|
||
|
||
Bug Fixes since HDF5-1.8.0
|
||
==========================
|
||
|
||
Configuration
|
||
-------------
|
||
- None
|
||
|
||
Source code distribution
|
||
========================
|
||
|
||
Library
|
||
-------
|
||
- Chunking: Chunks greater than 4GB are disallowed.
|
||
(QAK - 2008/05/16)
|
||
- Fixed the problem with searching for a target file when following
|
||
an external link. The search pattern will depend on whether the
|
||
target file's pathname is an absolute or a relative path.
|
||
Please see the H5Lcreate_external description in the "HDF5
|
||
Reference Manual" (http://hdfgroup.org/HDF5/doc/RM/RM_H5L.html).
|
||
(VC - 2008/04/08)
|
||
- Fixed possible file corruption bug when encoding datatype
|
||
descriptions for compound datatypes whose size was between
|
||
256 and 511 bytes and the file was opened with the "use the
|
||
latest format" property enabled (with H5Pset_libver_bounds).
|
||
(QAK - 2008/03/13)
|
||
- Fixed bug in H5Aget_num_attrs() routine to correctly handle an
|
||
invalid location identifier. (QAK - 2008/03/11)
|
||
|
||
Parallel Library
|
||
----------------
|
||
- None
|
||
|
||
Tools
|
||
-----
|
||
- Fixed bug in h5diff that prevented datasets and attributes with
|
||
variable-length string elements from comparing correctly.
|
||
(QAK - 2008/02/28)
|
||
- Fixed bug in h5dump that caused binary output to be made only for
|
||
the first dataset, when several datasets were requested.
|
||
(PVN - 2008/04/07)
|
||
|
||
F90 API
|
||
------
|
||
- The h5tset(get)_fields subroutines were missing the parameter to
|
||
specify a sign position; fixed. (EIP - 2008/05/23)
|
||
- Many APIs were fixed to work with the 8-byte integers in Fortran vs.
|
||
4-byte integers in C. This change is trasparent to user applications.
|
||
|
||
C++ API
|
||
------
|
||
- The class hierarchy was revised to address the problem reported
|
||
in bugzilla #1068, Attribute should not be derived from base
|
||
class H5Object. Classes AbstractDS was moved out of H5Object.
|
||
Class Attribute now multiply inherits from IdComponent and
|
||
AbstractDs and class DataSet from H5Object and AbstractDs.
|
||
In addition, data member IdComponent::id was moved into subclasses:
|
||
Attribute, DataSet, DataSpace, DataType, H5File, Group, and PropList.
|
||
(BMR - 2008/05/20)
|
||
- IdComponent::dereference was incorrect; it was changed from:
|
||
void IdComponent::dereference(IdComponent& obj, void* ref)
|
||
to:
|
||
void H5Object::dereference(H5File& h5file, void* ref)
|
||
void H5Object::dereference(H5Object& obj, void* ref)
|
||
(BMR - 2008/05/20)
|
||
- Revised Attribute::write and Attribute::read wrappers to handle
|
||
memory allocation/deallocation properly. (bugzilla 1045)
|
||
(BMR - 2008/05/20)
|
||
|
||
|
||
Platforms Tested
|
||
================
|
||
The following platforms and compilers have been tested for this release.
|
||
|
||
Cray XT3 (2.0.41) cc (pgcc) 7.1-4
|
||
(red storm) ftn (pgf90) 7.1-4
|
||
CC (pgCC) 7.1-4
|
||
mpicc 1.0.2
|
||
mpif90 1.0.2
|
||
|
||
FreeBSD 6.2-STABLE i386 gcc 3.4.6 [FreeBSD] 20060305
|
||
(duty) g++ 3.4.6 [FreeBSD] 20060305
|
||
gcc 4.2.1 20080123
|
||
g++ 4.2.1 20080123
|
||
gfortran 4.2.1 20070620
|
||
|
||
FreeBSD 6.2-STABLE amd64 gcc 3.4.6 [FreeBSD] 20060305
|
||
(liberty) g++ 3.4.6 [FreeBSD] 20060305
|
||
gcc 4.2.1 20080123
|
||
g++ 4.2.1 20080123
|
||
gfortran 4.2.1 20080123
|
||
|
||
IRIX64 6.5 (64 & n32) MIPSpro cc 7.4.4m
|
||
F90 MIPSpro 7.4.4m
|
||
C++ MIPSpro cc 7.4.4m
|
||
|
||
Linux 2.6.9 (RHEL4) Intel 10.0 compilers
|
||
(abe.ncsa.uiuc.edu)
|
||
|
||
Linux 2.4.21-47 gcc 3.2.3 20030502
|
||
(osage)
|
||
|
||
Linux 2.6.9-42.0.10 gcc,g++ 3.4.6 20060404, G95 (GCC 4.0.3)
|
||
(kagiso) PGI 7.1-6 (pgcc, pgf90, pgCC)
|
||
Intel 9.1 (icc, ifort, icpc)
|
||
|
||
Linux 2.6.16.27 x86_64 AMD gcc 4.1.0 (SuSE Linux), g++ 4.1.0,
|
||
(smirom) g95 (GCC 4.0.3)
|
||
PGI 7.1-6 (pgcc, pgf90, pgCC)
|
||
Intel 9.1 (icc, ifort, icpc)
|
||
|
||
Linux 2.6.5-7.252.1-rtgfx #1 Intel(R) C++ Version 9.0
|
||
SMP ia64 Intel(R) Fortran Itanium(R) Version 9.0
|
||
(cobalt) SGI MPI
|
||
|
||
SunOS 5.8 32,46 Sun WorkShop 6 update 2 C 5.3
|
||
(Solaris 2.8) Sun WorkShop 6 update 2 Fortran 95 6.2
|
||
Sun WorkShop 6 update 2 C++ 5.3
|
||
|
||
SunOS 5.10 cc: Sun C 5.8
|
||
(linew) f90: Sun Fortran 95 8.2
|
||
CC: Sun C++ 5.8
|
||
|
||
Xeon Linux 2.4.21-32.0.1.ELsmp-perfctr-lustre
|
||
(tungsten) gcc 3.2.2 20030222
|
||
Intel(R) C++ Version 9.0
|
||
Intel(R) Fortran Compiler Version 9.0
|
||
|
||
IA-64 Linux 2.4.21.SuSE_309.tg1 ia64
|
||
(NCSA tg-login) gcc 3.2.2
|
||
Intel(R) C++ Version 8.1
|
||
Intel(R) Fortran Compiler Version 8.1
|
||
mpich-gm-1.2.6..14b-intel-r2
|
||
|
||
Intel 64 Linux 2.6.9-42.0.10.EL_lustre-1.4.10.1smp
|
||
(abe) gcc 3.4.6 20060404
|
||
Intel(R) C++ Version 10.0
|
||
Intel (R) Fortran Compiler Version 10.0
|
||
mvapich2-0.9.8p2patched-intel-ofed-1.2
|
||
|
||
Windows XP Visual Studio .NET
|
||
Visual Studio 2005 w/ Intel Fortran 9.1
|
||
Cygwin(native gcc compiler and g95)
|
||
MinGW(native gcc compiler and g95)
|
||
|
||
Windows XP x64 Visual Studio 2005 w/ Intel Fortran 9.1
|
||
|
||
Windows Vista Visual Studio 2005
|
||
|
||
MAC OS 10.5.2 (Intel) i686-apple-darwin9-gcc-4.0.1 (GCC) 4.0.1
|
||
GNU Fortran (GCC) 4.3.0 20070810
|
||
G95 (GCC 4.0.3 (g95 0.91!) Apr 24 2008)
|
||
|
||
|
||
Supported Configuration Features Summary
|
||
========================================
|
||
|
||
In the tables below
|
||
y = tested and supported
|
||
n = not supported or not tested in this release
|
||
x = not working in this release
|
||
dna = does not apply
|
||
( ) = footnote appears below second table
|
||
<blank> = testing incomplete on this feature or platform
|
||
|
||
Platform C F90 F90 C++ zlib SZIP
|
||
parallel parallel
|
||
SunOS5.10 64-bit n y n y y y
|
||
SunOS5.10 32-bit n y n y y y
|
||
IRIX64_6.5 64-bit n y y y y y
|
||
IRIX64_6.5 32-bit n n n n y y
|
||
Windows XP n y(15) n(15) y y y
|
||
Windows XP x64 n y(15) n(15) y y y
|
||
Windows Vista n n n y y y
|
||
Mac OS X 10.5 Intel n y n y y y
|
||
FreeBSD 4.11 n n n y y y
|
||
RedHat EL3 W (3) y(1) y(10) y(1) y y y
|
||
RedHat EL3 W Intel (3) n y n y y n
|
||
RedHat EL3 W PGI (3) n y n y y n
|
||
SuSe x86_64 gcc (3,12) y(2) y(11) y(2) y y y
|
||
SuSe x86_64 Int (3,12) n y(13) n y y n
|
||
SuSe x86_64 PGI (3,12) n y(8) n y y y
|
||
Linux 2.4 Xeon C
|
||
Lustre Intel (3,6) n y n y y n
|
||
Linux 2.6 SuSE ia64 C
|
||
Intel (3,7) y y y y y n
|
||
Linux 2.6 SGI Altix
|
||
ia64 Intel (3) y y y y y y
|
||
Linux 2.6 RHEL C
|
||
Lustre Intel (5) y(4) y y(4) y y n
|
||
Cray XT3 2.0.41 y y y y y n
|
||
|
||
|
||
Platform Shared Shared Shared Thread-
|
||
C libs F90 libs C++ libs safe
|
||
Solaris2.10 64-bit y y y y
|
||
Solaris2.10 32-bit y y y y
|
||
IRIX64_6.5 64-bit y y n y
|
||
IRIX64_6.5 32-bit y dna y y
|
||
Windows XP y y(15) y y
|
||
Windows XP x64 y y(15) y y
|
||
Windows Vista y n n y
|
||
Mac OS X 10.3 y n
|
||
FreeBSD 4.11 y n y y
|
||
RedHat EL3 W (3) y y(10) y y
|
||
RedHat EL3 W Intel (3) y y y n
|
||
RedHat EL3 W PGI (3) y y y n
|
||
SuSe x86_64 W GNU (3,12) y y y y
|
||
SuSe x86_64 W Int (3,12) y y y n
|
||
SuSe x86_64 W PGI (3,12) y y y n
|
||
Linux 2.4 Xeon C
|
||
Lustre Intel (6) y y y n
|
||
Linux 2.4 SuSE
|
||
ia64 C Intel (7) y y y n
|
||
Linux 2.4 SGI Altix
|
||
ia64 Intel y n
|
||
Linux 2.6 RHEL C
|
||
Lustre Intel (5) y y y n
|
||
Cray XT3 2.0.41 n n n n n
|
||
|
||
Notes: (1) Using mpich2 1.0.6.
|
||
(2) Using mpich2 1.0.7.
|
||
(3) Linux 2.6 with GNU, Intel, and PGI compilers, as indicated.
|
||
W or C indicates workstation or cluster, respectively.
|
||
(4) Using mvapich2 0.9.8.
|
||
(5) Linux 2.6.9-42.0.10. Xeon cluster with ELsmp_perfctr_lustre
|
||
and Intel compilers
|
||
(6) Linux 2.4.21-32.0.1. Xeon cluster with ELsmp_perfctr_lustre
|
||
and Intel compilers
|
||
(7) Linux 2.4.21, SuSE_292.till. Ia64 cluster with Intel compilers
|
||
(8) pgf90
|
||
(9) With Compaq Visual Fortran 6.6c compiler.
|
||
(10) With PGI and Absoft compilers.
|
||
(11) PGI and Intel compilers for both C and Fortran
|
||
(12) AMD Opteron x86_64
|
||
(13) ifort
|
||
(14) Yes with C and Fortran, but not with C++
|
||
(15) Using Visual Studio 2005 or Cygwin
|
||
(16) Not tested for this release.
|
||
Compiler versions for each platform are listed in the preceding
|
||
"Platforms Tested" table.
|
||
|
||
|
||
Known Problems
|
||
==============
|
||
* For Red Storm, a Cray XT3 system, the yod command sometimes gives the
|
||
message, "yod allocation delayed for node recovery". This interferes with
|
||
test suites that do not expect seeing this message. See the section of "Red
|
||
Storm" in file INSTALL_parallel for a way to deal with this problem.
|
||
AKC - 2008/05/28
|
||
|
||
* For Red Storm, a Cray XT3 system, the tools/h5ls/testh5ls.sh will fail on
|
||
the test "Testing h5ls -w80 -r -g tgroup.h5" fails. This test is
|
||
expected to fail and exit with a non-zero code but the yod command does
|
||
not propagate the exit code of the executables. Yod always returns 0 if it
|
||
can launch the executable. The test suite shell expects a non-zero for
|
||
this particular test, therefore it concludes the test has failed when it
|
||
receives 0 from yod. To bypass this problem for now, change the following
|
||
lines in the tools/h5ls/testh5ls.sh.
|
||
======== Original =========
|
||
# The following combination of arguments is expected to return an error message
|
||
# and return value 1
|
||
TOOLTEST tgroup-1.ls 1 -w80 -r -g tgroup.h5
|
||
======== Skip the test =========
|
||
echo SKIP TOOLTEST tgroup-1.ls 1 -w80 -r -g tgroup.h5
|
||
======== end of bypass ========
|
||
AKC - 2008/05/28
|
||
|
||
* We have discovered two problems when running collective IO parallel HDF5
|
||
tests with chunking storage on the ChaMPIon MPI compiler on tungsten, a
|
||
Linux cluster at NCSA.
|
||
|
||
Under some complex selection cases:
|
||
1) MPI_Get_element returns the wrong value.
|
||
2) MPI_Type_struct also generates the wrong derived datatype and corrupt
|
||
data may be generated.
|
||
These issues arise only when turning on collective IO with chunking storage
|
||
with some complex selections. We have not found these problems on other
|
||
MPI-IO compilers. If you encounter these problems, you may use independent
|
||
IO instead.
|
||
|
||
To avoid this behavior, change the following line in your code
|
||
H5Pset_dxpl_mpio(xfer_plist, H5FD_MPIO_COLLECTIVE);
|
||
to
|
||
H5Pset_dxpl_mpio(xfer_plist, H5FD_MPIO_INDEPENDENT);
|
||
|
||
KY - 2007/08/24
|
||
|
||
* For SNL, spirit/liberty/thunderbird: The serial tests pass but parallel
|
||
tests failed with MPI-IO file locking message. AKC - 2007/6/25
|
||
|
||
* On Intel 64 Linux cluster (RH 4, Linux 2.6.9) with Intel 10.0 compilers,
|
||
use -mp -O1 compilation flags to build the libraries. A higher level of
|
||
optimization causes failures in several HDF5 library tests.
|
||
|
||
* For LLNL, uP: both serial and parallel tests pass.
|
||
Zeus: Serial tests pass but parallel tests fail with a known problem in MPI.
|
||
ubgl: Serial tests pass but parallel tests fail.
|
||
|
||
* Configuring with --enable-debug=all produces compiler errors on most
|
||
platforms: Users who want to run HDF5 in debug mode should use
|
||
--enable-debug rather than --enable-debug=all to enable debugging
|
||
information on most modules.
|
||
|
||
* On Mac OS 10.4, test/dt_arith.c has some errors in conversion from long
|
||
double to (unsigned) long long and from (unsigned) long long to long double.
|
||
|
||
* On Altix SGI with Intel 9.0, testmeta.c would not compile with -O3
|
||
optimization flag.
|
||
|
||
* On VAX, the Scaleoffset filter is not supported. The Scaleoffset filter
|
||
supports only the IEEE standard for floating-point data; it cannot be applied
|
||
to HDF5 data generated on VAX.
|
||
|
||
* On Cray X1, a lone colon on the command line of h5dump --xml (as in
|
||
the testh5dumpxml.sh script) is misinterpereted by the operating system
|
||
and causes an error.
|
||
|
||
* On mpich 1.2.5 and 1.2.6, if more than two processes contribute no IO and
|
||
the application asks to do collective IO, we have found that when using 4
|
||
processors, a simple collective write will sometimes be hung. This can be
|
||
verified with t_mpi test under testpar.
|
||
|
||
* On IRIX6.5, when the C compiler version is greater than 7.4, complicated
|
||
MPI derived datatype code will work. However, the user should increase
|
||
the value of the MPI_TYPE_MAX environment variable to some appropriate value
|
||
to use collective irregular selection code. For example, the current
|
||
parallel HDF5 test needs to raise MPI_TYPE_MAX to 200,000 to pass the test.
|
||
|
||
* A dataset created or rewritten with a v1.6.3 library or after cannot be read
|
||
with the v1.6.2 library or before when the Fletcher32 EDC filter is enabled.
|
||
There was a bug in the calculation of the Fletcher32 checksum in the
|
||
library before v1.6.3; the checksum value was not consistent between big-
|
||
endian and little-endian systems. This bug was fixed in Release 1.6.3.
|
||
However, after fixing the bug, the checksum value was no longer the same as
|
||
before on little-endian system. Library releases after 1.6.4 can still read
|
||
datasets created or rewritten with an HDF5 library of v1.6.2 or before.
|
||
SLU - 2005/6/30
|
||
|
||
* For version 6 (6.02 and 6.04) of the Portland Group compiler on the AMD
|
||
Opteron processor, there is a bug in the compiler for optimization(-O2).
|
||
The library failed in several tests, all related to the MULTI driver.
|
||
The problem has been reported to the vendor.
|
||
|
||
* On IBM AIX systems, parallel HDF5 mode will fail some tests with error
|
||
messages like "INFO: 0031-XXX ...". This is from the command `poe'.
|
||
Set the environment variable MP_INFOLEVEL to 0 to minimize the messages
|
||
and run the tests again.
|
||
|
||
The tests may fail with messages like "The socket name is already in use",
|
||
but HDF5 does not use sockets. This failure is due to problems with the
|
||
poe command trying to set up the debug socket. To resolve this problem,
|
||
check to see whether there are many old /tmp/s.pedb.* files staying around.
|
||
These are sockets used by the poe command and left behind due to failed
|
||
commands. First, ask your system administrator to clean them out.
|
||
Lastly, request IBM to provide a means to run poe without the debug socket.
|
||
|
||
* The --enable-static-exec configure flag fails to compile for Solaris
|
||
platforms. This is due to the fact that not all of the system libraries on
|
||
Solaris are available in a static format.
|
||
|
||
The --enable-static-exec configure flag also fails to correctly compile
|
||
on IBM SP2 platforms for serial mode. The parallel mode works fine with
|
||
this option.
|
||
|
||
It is suggested that you do not use this option on these platforms
|
||
during configuration.
|
||
|
||
* With the gcc 2.95.2 compiler, HDF5 uses the `-ansi' flag during
|
||
compilation. The ANSI version of the compiler complains about not being
|
||
able to handle the `long long' datatype with the warning:
|
||
|
||
warning: ANSI C does not support `long long'
|
||
|
||
This warning is innocuous and can be safely ignored.
|
||
|
||
* The ./dsets tests fail on the TFLOPS machine if the test program,
|
||
dsets.c, is compiled with the -O option. The HDF5 library still works
|
||
correctly with the -O option. The test program works fine if it is
|
||
compiled with -O1 or -O0. Only -O (same as -O2) causes the test
|
||
program to fail.
|
||
|
||
* Not all platforms behave correctly with Szip's shared libraries. Szip is
|
||
disabled in these cases, and a message is relayed at configure time. Static
|
||
libraries should be working on all systems that support Szip and should be
|
||
used when shared libraries are unavailable.
|
||
|
||
There is also a configure error on Altix machines that incorrectly reports
|
||
when a version of Szip without an encoder is being used.
|
||
|
||
* On some platforms that use Intel and Absoft compilers to build the HDF5
|
||
Fortran library, compilation may fail for fortranlib_test.f90, fflush1.f90
|
||
and fflush2.f90 complaining about the exit subroutine. Comment out the line
|
||
IF (total_error .ne. 0) CALL exit (total_error).
|
||
|
||
* Information about building with PGI and Intel compilers is available in
|
||
the INSTALL file sections 4.7 and 4.8.
|
||
|
||
* On at least one system, SDSC DataStar, the scheduler (in this case
|
||
LoadLeveler) sends job status updates to standard error when you run
|
||
any executable that was compiled with the parallel compilers.
|
||
|
||
This causes problems when running "make check" on parallel builds, as
|
||
many of the tool tests function by saving the output from test runs,
|
||
and comparing it to an exemplar.
|
||
|
||
The best solution is to reconfigure the target system so it no longer
|
||
inserts the extra text. However, this may not be practical.
|
||
|
||
In such cases, one solution is to "setenv HDF5_Make_Ignore yes" prior to
|
||
the configure and build. This will cause "make check" to continue after
|
||
detecting errors in the tool tests. However, in the case of SDSC DataStar,
|
||
it also leaves you with some 150 "failed" tests to examine by hand.
|
||
|
||
A second solution is to write a script to run serial tests and filter
|
||
out the text added by the scheduler. A sample script used on SDSC
|
||
DataStar is given below, but you will probably have to customize it
|
||
for your installation.
|
||
|
||
Observe that the basic idea is to insert the script as the first item
|
||
on the command line which executes the the test. The script then
|
||
executes the test and filters out the offending text before passing
|
||
it on.
|
||
|
||
#!/bin/csh
|
||
|
||
set STDOUT_FILE=~/bin/serial_filter.stdout
|
||
set STDERR_FILE=~/bin/serial_filter.stderr
|
||
|
||
rm -f $STDOUT_FILE $STDERR_FILE
|
||
|
||
($* > $STDOUT_FILE) >& $STDERR_FILE
|
||
|
||
set RETURN_VALUE=$status
|
||
|
||
cat $STDOUT_FILE
|
||
|
||
tail +3 $STDERR_FILE
|
||
|
||
exit $RETURN_VALUE
|
||
|
||
You get the HDF5 make files and test scipts to execute your filter script
|
||
by setting the environment variable "RUNSERIAL" to the full path of the
|
||
script prior to running configure for parallel builds. Remember to
|
||
"unsetenv RUNSERIAL" before running configure for a serial build.
|
||
|
||
Note that the RUNSERIAL environment variable exists so that we can
|
||
prefix serial runs as necessary on the target system. On DataStar,
|
||
no prefix is necessary. However on an MPICH system, the prefix might
|
||
have to be set to something like "/usr/local/mpi/bin/mpirun -np 1" to
|
||
get the serial tests to run at all.
|
||
|
||
In such cases, you will have to include the regular prefix in your
|
||
filter script.
|
||
|
||
* H5Ocopy() does not copy reg_ref attributes correctly when shared-message
|
||
is turn on. The value of the reference in the destination attriubte is
|
||
wrong. This H5Ocopy problem will affect the h5copy tool.
|
||
|
||
* In the C++ API, it appears that there are bugs in Attribute::write/read
|
||
and DataSet::write/read for fixed- and variable-len strings. The problems
|
||
are being worked on and a patch will be provided when the fixes are
|
||
available.
|
||
|
||
|
||
%%%%1.8.0%%%%
|
||
|
||
|
||
HDF5 version 1.8.0 released on Tue Feb 12 20:41:19 CST 2008
|
||
================================================================================
|
||
|
||
INTRODUCTION
|
||
============
|
||
|
||
This document describes the differences between the HDF5-1.6.x release series
|
||
and HDF5 1.8.0, and contains information on the platforms tested and known
|
||
problems in HDF5-1.8.0. For more details, see the HISTORY-1_0-1_8_0_rc3.txt
|
||
file in the
|
||
release_docs/ directory of the HDF5 source.
|
||
|
||
Links to the HDF5 1.8.0 source code, documentation, and additional materials
|
||
can be found on the HDF5 web page at:
|
||
|
||
http://www.hdfgroup.org/products/hdf5/
|
||
|
||
The HDF5 1.8.0 release can be obtained from:
|
||
|
||
http://www.hdfgroup.org/HDF5/release/obtain5.html
|
||
|
||
User documentation for 1.8.0 can be accessed directly at this location:
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/
|
||
|
||
New features in 1.8.0, including brief general descriptions of some new
|
||
and modified APIs, are described in the "What's New in 1.8.0?" document:
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/ADGuide/WhatsNew180.html
|
||
|
||
All new and modified APIs are listed in detail in the "HDF5 Software Changes
|
||
from Release to Release" document, in the section "Release 1.8.0 (current
|
||
release) versus Release 1.6.x":
|
||
|
||
http://www.hdfgroup.org/HDF5/doc/ADGuide/Changes.html
|
||
|
||
If you have any questions or comments, please send them to the HDF Help Desk:
|
||
|
||
help@hdfgroup.org
|
||
|
||
|
||
CONTENTS
|
||
========
|
||
|
||
- New Features
|
||
- Removed Feature
|
||
- Support for new platforms and languages
|
||
- Bug Fixes since HDF5-1.6.0
|
||
- Platforms Tested
|
||
- Supported Configuration Features Summary
|
||
- Known Problems
|
||
|
||
|
||
New Features
|
||
============
|
||
|
||
HDF5 Release 1.8.0 is a major release with many changes and new features.
|
||
|
||
New format and interface features discussed in the "What's New in
|
||
HDF5 1.8.0" document include the following:
|
||
|
||
Enhanced group object management
|
||
Enhanced attribute management and more efficient meta data handling
|
||
Expanded datatype features
|
||
Creation order tracking and indexing
|
||
Improved meta data caching and cache control
|
||
UTF-8 encoding
|
||
New I/O filters: n-bit and scale+offset compression
|
||
New link (H5L) and object (H5O) interfaces and features
|
||
External and user-defined links
|
||
New high-level APIs:
|
||
HDF5 Packet Table (H5PT) and HDF5 Dimension Scale (H5DS)
|
||
C++ and Fortran interfaces for older high-level APIs:
|
||
H5Lite (H5LT), H5Image (H5IM), and H5Table (H5TB)
|
||
New and improved tools
|
||
And more...
|
||
|
||
http://hdfgroup.org/HDF5/doc/ADGuide/WhatsNew180.html
|
||
|
||
|
||
New APIs associated with these features, other interface changes
|
||
(e.g., ENUM and struct definitions), and new library configuration flags
|
||
are listed in the "Release 1.8.0 (current release) versus Release 1.6.x"
|
||
section of "HDF5 Software Changes from Release to Release."
|
||
|
||
http://hdfgroup.org/HDF5/doc/ADGuide/Changes.html
|
||
|
||
Compatibility
|
||
-------------
|
||
Many HDF5 users and user communities have existing applications that
|
||
they may wish to port to Release 1.8.0. Alternatively, some users may
|
||
wish to take advantage of Release 1.8.0's improved performance without
|
||
having to port such applications. To facilitate managing application
|
||
compatibility and porting applications from release to release, the HDF
|
||
Team has implemented the following features:
|
||
Individually-configurable macros that selectively map common
|
||
interface names to the old and new interfaces
|
||
Library configuration options to configure the macro mappings
|
||
|
||
Two related documents accompany this release:
|
||
"API Compatibility Macros in HDF5" discusses the specifics of the
|
||
new individually-configurable macros and library configuration
|
||
options.
|
||
http://hdfgroup.org/HDF5/doc/RM/APICompatMacros.html
|
||
|
||
"New Features in HDF5 Release 1.8.0 and Backward/Forward Format
|
||
Compatibility Issues" discusses each new feature with regard to
|
||
its impact on format compatibility.
|
||
http://hdfgroup.org/HDF5/doc/ADGuide/CompatFormat180.html
|
||
|
||
Referenced documents
|
||
--------------------
|
||
http://hdfgroup.org/HDF5/doc/ADGuide/WhatsNew180.html
|
||
"What's New in HDF5 1.8.0"
|
||
|
||
http://hdfgroup.org/HDF5/doc/ADGuide/Changes.html
|
||
The "Release 1.8.0 (current release) versus Release 1.6.x "
|
||
section in "HDF5 Software Changes from Release to Release"
|
||
|
||
http://hdfgroup.org/HDF5/doc/RM/APICompatMacros.html
|
||
"API Compatibility Macros in HDF5"
|
||
|
||
http://hdfgroup.org/HDF5/doc/ADGuide/CompatFormat180.html
|
||
"New Features in HDF5 Release 1.8.0 and Backward/Forward Format
|
||
Compatibility Issues"
|
||
|
||
|
||
Removed Feature
|
||
===============
|
||
The stream virtual file driver (H5FD_STREAM) have been removed in this
|
||
release. This affects the functions H5Pset_fapl_stream and H5Pget_fapl_stream
|
||
and the constant H5FD_STREAM.
|
||
|
||
This virtual file driver will be available at
|
||
http://hdf5-addons.origo.ethz.ch/. Note that at the time of this release,
|
||
the transition is still in progress; the necessary integration tools may
|
||
not be available when HDF5 Release 1.8.0 first comes out.
|
||
|
||
|
||
Support for New Platforms, Languages, and Compilers
|
||
===================================================
|
||
- Support for Open VMS 7.3 was added.
|
||
|
||
|
||
Bug Fixes since HDF5-1.6.0
|
||
==========================
|
||
This release contains numerous bug fixes. For details, see the
|
||
"Changes from 1.6.0 to 1.8.0-rc3" section of the HISTORY.txt file for
|
||
this release.
|
||
|
||
|
||
Platforms Tested
|
||
================
|
||
The following platforms and compilers have been tested for for this release.
|
||
|
||
AIX 5.2 (32/64 bit) xlc 8.0.0.11
|
||
xlC 8.0
|
||
xlf 10.01.0000.0
|
||
mpcc_r 6.0.0.8
|
||
mpxlf_r 8.1.1.7
|
||
|
||
FreeBSD 6.2-STABLE i386 gcc 3.4.6 [FreeBSD] 20060305
|
||
(duty) g++ 3.4.6 [FreeBSD] 20060305
|
||
gcc 4.2.1 20080123
|
||
g++ 4.2.1 20080123
|
||
gfortran 4.2.1 20070620
|
||
|
||
FreeBSD 6.2-STABLE amd64 gcc 3.4.6 [FreeBSD] 20060305
|
||
(liberty) g++ 3.4.6 [FreeBSD] 20060305
|
||
gcc 4.2.1 20080123
|
||
g++ 4.2.1 20080123
|
||
gfortran 4.2.1 20080123
|
||
|
||
IRIX64 6.5 (64 & n32) MIPSpro cc 7.4.4m
|
||
F90 MIPSpro 7.4.4m
|
||
C++ MIPSpro cc 7.4.4m
|
||
|
||
Linux 2.6.9 (RHEL4) Intel 10.0 compilers
|
||
(abe.ncsa.uiuc.edu)
|
||
|
||
Linux 2.4.21-47 gcc 3.2.3 20030502
|
||
(osage)
|
||
|
||
Linux 2.6.9-42.0.10 gcc 3.4.6 20060404
|
||
(kagiso) PGI 7.0-7 (pgcc, pgf90, pgCC)
|
||
Intel 9.1 (icc, ifort, icpc)
|
||
|
||
Linux 2.6.16.27 x86_64 AMD gcc 4.1.0 (SuSE Linux), g++ 4.1.0,
|
||
(smirom) g95 (GCC 4.0.3)
|
||
PGI 6.2-5 (pgcc, pgf90, pgCC)
|
||
Intel 9.1 (icc, iort, icpc)
|
||
|
||
Linux 2.6.5-7.252.1-rtgfx #1 Intel(R) C++ Version 9.0
|
||
SMP ia64 Intel(R) Fortran Itanium(R) Version 9.0
|
||
(cobalt) SGI MPI
|
||
|
||
SunOS 5.8 32,46 Sun WorkShop 6 update 2 C 5.3
|
||
(Solaris 2.8) Sun WorkShop 6 update 2 Fortran 95 6.2
|
||
Sun WorkShop 6 update 2 C++ 5.3
|
||
|
||
SunOS 5.10 cc: Sun C 5.8
|
||
(linew) f90: Sun Fortran 95 8.2
|
||
CC: Sun C++ 5.8
|
||
|
||
Xeon Linux 2.4.21-32.0.1.ELsmp-perfctr-lustre
|
||
(tungsten) gcc 3.2.2 20030222
|
||
Intel(R) C++ Version 9.0
|
||
Intel(R) Fortran Compiler Version 9.0
|
||
|
||
IA-64 Linux 2.4.21.SuSE_292.til1 ia64
|
||
(NCSA tg-login) gcc 3.2.2
|
||
Intel(R) C++ Version 8.1
|
||
Intel(R) Fortran Compiler Version 8.1
|
||
mpich-gm-1.2.5..10-intel-r2
|
||
|
||
Windows XP Visual Studio .NET
|
||
Visual Studio 2005 w/ Intel Fortran 9.1
|
||
Cygwin(native gcc compiler and g95)
|
||
MinGW(native gcc compiler and g95)
|
||
|
||
Windows XP x64 Visual Studio 2005 w/ Intel Fortran 9.1
|
||
|
||
Windows Vista Visual Studio 2005
|
||
|
||
MAC OS 10.4 (Intel) gcc i686-apple-darwin8-gcc-4.0.1 (GCC) 4.0.1
|
||
G95 (GCC 4.0.3 (g95 0.91!) Nov 21 2006)
|
||
|
||
Alpha Open VMS 7.3 Compaq C V6.5-001-48BCD
|
||
HP Fortran V7.6-3276
|
||
Compaq C++ V6.5-004
|
||
|
||
|
||
Supported Configuration Features Summary
|
||
========================================
|
||
|
||
In the tables below
|
||
y = tested and supported
|
||
n = not supported or not tested in this release
|
||
x = not working in this release
|
||
dna = does not apply
|
||
( ) = footnote appears below second table
|
||
<blank> = testing incomplete on this feature or platform
|
||
|
||
Platform C F90 F90 C++ zlib SZIP
|
||
parallel parallel
|
||
SunOS5.8 64-bit n y n y y y
|
||
SunOS5.8 32-bit n y n y y y
|
||
SunOS5.10 64-bit y(1) y n y y y
|
||
SunOS5.10 32-bit y(1) y n y y y
|
||
IRIX64_6.5 64-bit n y y y y y
|
||
IRIX64_6.5 32-bit n n n n y y
|
||
AIX-5.2 32-bit y y y y y y
|
||
AIX-5.2 64-bit y y y y y y
|
||
Windows XP n y(15) n(15) y y y
|
||
Windows XP x64 n y(15) n(15) y y y
|
||
Windows Vista n n n y y y
|
||
Mac OS X 10.4 PowerPC n n
|
||
Mac OS X 10.4 Intel n y n y y y
|
||
FreeBSD 4.11 n n n y y y
|
||
RedHat EL3 W (3) y(1a) y(10) y(1a) y y y
|
||
RedHat EL3 W Intel (3) n y n y y n
|
||
RedHat EL3 W PGI (3) n y n y y n
|
||
SuSe x86_64 gcc (3,12) y(1a) y(11) n y y y
|
||
SuSe x86_64 Int (3,12) n y(13) n y y n
|
||
SuSe x86_64 PGI (3,12) n y(8) n y y y
|
||
Linux 2.4 Xeon C
|
||
Lustre Intel (3,6) n y n y y n
|
||
Linux 2.6 SuSE ia64 C
|
||
Intel (3,7) y y y y y n
|
||
Linux 2.6 SGI Altix
|
||
ia64 Intel (3) y y y y y y
|
||
Alpha OpenVMS 7.3.2 n y n y n n
|
||
|
||
|
||
|
||
Platform Shared Shared Shared static- Thread-
|
||
C libs F90 libs C++ libs exec safe
|
||
Solaris2.8 64-bit y y y x y
|
||
Solaris2.8 32-bit y y y x y
|
||
Solaris2.10 64-bit y x y
|
||
Solaris2.10 32-bit y x y
|
||
IRIX64_6.5 64-bit y y n y y
|
||
IRIX64_6.5 32-bit y dna y y y
|
||
AIX-5.2 & 5.3 32-bit n n n y n
|
||
AIX-5.2 & 5.3 64-bit n n n y n
|
||
Windows XP y y(15) y y y
|
||
Windows XP x64 y y(15) y y y
|
||
Windows Vista y n n y y
|
||
Mac OS X 10.3 y y n
|
||
FreeBSD 4.11 y n y y y
|
||
RedHat EL3 W (3) y y(10) y y y
|
||
RedHat EL3 W Intel (3) y y y y n
|
||
RedHat EL3 W PGI (3) y y y y n
|
||
SuSe x86_64 W GNU (3,12) y y y y y
|
||
SuSe x86_64 W Int (3,12) y y y y(14) n
|
||
SuSe x86_64 W PGI (3,12) y y y y(14) n
|
||
Linux 2.4 Xeon C
|
||
Lustre Intel (6) y y y y n
|
||
Linux 2.4 SuSE
|
||
ia64 C Intel (7) y y y y n
|
||
Linux 2.4 SGI Altix
|
||
ia64 Intel y y n
|
||
Alpha OpenVMS 7.3.2 n n n y n
|
||
|
||
Notes: (1) Using mpich 1.2.6.
|
||
(1a) Using mpich2 1.0.6.
|
||
(2) Using mpt and mpich 1.2.6.
|
||
(3) Linux 2.6 with GNU, Intel, and PGI compilers, as indicated.
|
||
W or C indicates workstation or cluster, respectively.
|
||
|
||
(6) Linux 2.4.21-32.0.1. Xeon cluster with ELsmp_perfctr_lustre
|
||
and Intel compilers
|
||
(7) Linux 2.4.21, SuSE_292.till. Ia64 cluster with Intel
|
||
compilers
|
||
(8) pgf90
|
||
(9) With Compaq Visual Fortran 6.6c compiler.
|
||
(10) With PGI and Absoft compilers.
|
||
(11) PGI and Intel compilers for both C and Fortran
|
||
(12) AMD Opteron x86_64
|
||
(13) ifort
|
||
(14) Yes with C and Fortran, but not with C++
|
||
(15) Using Visual Studio 2005 or Cygwin
|
||
(16) Not tested for this release.
|
||
Compiler versions for each platform are listed in the preceding
|
||
"Platforms Tested" table.
|
||
|
||
|
||
Known Problems
|
||
==============
|
||
* We have discovered two problems when running collective IO parallel HDF5
|
||
tests with chunking storage on the ChaMPIon MPI compiler on tungsten, a
|
||
Linux cluster at NCSA.
|
||
|
||
Under some complex selection cases:
|
||
1) MPI_Get_element returns the wrong value.
|
||
2) MPI_Type_struct also generates the wrong derived datatype and corrupt
|
||
data may be generated.
|
||
These issues arise only when turning on collective IO with chunking storage
|
||
with some complex selections. We have not found these problems on other
|
||
MPI-IO compilers. If you encounter these problems, you may use independent
|
||
IO instead.
|
||
|
||
To avoid this behavior, change the following line in your code
|
||
H5Pset_dxpl_mpio(xfer_plist, H5FD_MPIO_COLLECTIVE);
|
||
|
||
to
|
||
H5Pset_dxpl_mpio(xfer_plist, H5FD_MPIO_INDEPENDENT);
|
||
|
||
KY - 2007/08/24
|
||
|
||
* For SNL, spirit/liberty/thunderbird: The serial tests pass but parallel
|
||
tests failed with MPI-IO file locking message. AKC - 2007/6/25
|
||
|
||
* On Intel 64 Linux cluster (RH 4, Linux 2.6.9) with Intel 10.0 compilers,
|
||
use -mp -O1 compilation flags to build the libraries. A higher level of
|
||
optimization causes failures in several HDF5 library tests.
|
||
|
||
* For SNL, Red Storm: Only parallel HDF5 is supported. The serial tests pass
|
||
when run against the parallel library; the parallel tests also pass, but
|
||
with lots of non-fatal error messages.
|
||
|
||
* For LLNL, uP: both serial and parallel tests pass.
|
||
Zeus: Serial tests pass but parallel tests fail with a known problem in MPI.
|
||
ubgl: Serial tests pass but parallel tests fail.
|
||
|
||
* On SUN 5.10 C++, testing fails in the "Testing Shared Datatypes with
|
||
Attributes" test.
|
||
|
||
* Configuring with --enable-debug=all produces compiler errors on most
|
||
platforms: Users who want to run HDF5 in debug mode should use
|
||
--enable-debug rather than --enable-debug=all to enable debugging
|
||
information on most modules.
|
||
|
||
* On Mac OS 10.4, test/dt_arith.c has some errors in conversion from long
|
||
double to (unsigned) long long and from (unsigned) long long to long double.
|
||
|
||
* On Altix SGI with Intel 9.0, testmeta.c would not compile with -O3
|
||
optimization flag.
|
||
|
||
* On VAX, the Scaleoffset filter is not supported. The filter cannot be
|
||
applied to HDF5 data generated on VAX. The Scaleoffset filter only supports
|
||
the IEEE standard for floating-point data.
|
||
|
||
* On Cray X1, a lone colon on the command line of h5dump --xml (as in
|
||
the testh5dumpxml.sh script) is misinterpereted by the operating system
|
||
and causes an error.
|
||
|
||
* On mpich 1.2.5 and 1.2.6, if more than two processes contribute no IO and
|
||
the application asks to do collective IO, we have found that when using 4
|
||
processors, a simple collective write will sometimes be hung. This can be
|
||
verified with t_mpi test under testpar.
|
||
|
||
* On IRIX6.5, when the C compiler version is greater than 7.4, complicated
|
||
MPI derived datatype code will work. However, the user should increase
|
||
the value of the MPI_TYPE_MAX environment variable to some appropriate value
|
||
to use collective irregular selection code. For example, the current
|
||
parallel HDF5 test needs to raise MPI_TYPE_MAX to 200,000 to pass the test.
|
||
|
||
* A dataset created or rewritten with a v1.6.3 library or after cannot be read
|
||
with the v1.6.2 library or before when the Fletcher32 EDC filter is enabled.
|
||
There was a bug in the calculating code of the Fletcher32 checksum in the
|
||
library before v1.6.3; the checksum value was not consistent between big-
|
||
endian and little-endian systems. This bug was fixed in Release 1.6.3.
|
||
However, after fixing the bug, the checksum value was no longer the same as
|
||
before on little-endian system. Library releases after 1.6.4 can still read
|
||
datasets created or rewritten with an HDF5 library of v1.6.2 or before.
|
||
SLU - 2005/6/30
|
||
|
||
* For version 6 (6.02 and 6.04) of the Portland Group compiler on the AMD
|
||
Opteron processor, there is a bug in the compiler for optimization(-O2).
|
||
The library failed in several tests, all related to the MULTI driver.
|
||
The problem has been reported to the vendor.
|
||
|
||
* On IBM AIX systems, parallel HDF5 mode will fail some tests with error
|
||
messages like "INFO: 0031-XXX ...". This is from the command `poe'.
|
||
Set the environment variable MP_INFOLEVEL to 0 to minimize the messages
|
||
and run the tests again.
|
||
|
||
The tests may fail with messages like "The socket name is already in use",
|
||
but HDF5 does not use sockets. This failure is due to problems with the
|
||
poe command trying to set up the debug socket. To resolve this problem,
|
||
check to see whether there are many old /tmp/s.pedb.* files staying around.
|
||
These are sockets used by the poe command and left behind due to failed
|
||
commands. First, ask your system administrator to clean them out.
|
||
Lastly, request IBM to provide a means to run poe without the debug socket.
|
||
|
||
* The --enable-static-exec configure flag fails to compile for Solaris
|
||
platforms. This is due to the fact that not all of the system libraries on
|
||
Solaris are available in a static format.
|
||
|
||
The --enable-static-exec configure flag also fails to correctly compile
|
||
on IBM SP2 platform for the serial mode. The parallel mode works fine with
|
||
this option.
|
||
|
||
It is suggested that you do not use this option on these platforms
|
||
during configuration.
|
||
|
||
* With the gcc 2.95.2 compiler, HDF5 uses the `-ansi' flag during
|
||
compilation. The ANSI version of the compiler complains about not being
|
||
able to handle the `long long' datatype with the warning:
|
||
|
||
warning: ANSI C does not support `long long'
|
||
|
||
This warning is innocuous and can be safely ignored.
|
||
|
||
* The ./dsets tests fail on the TFLOPS machine if the test program,
|
||
dsets.c, is compiled with the -O option. The HDF5 library still works
|
||
correctly with the -O option. The test program works fine if it is
|
||
compiled with -O1 or -O0. Only -O (same as -O2) causes the test
|
||
program to fail.
|
||
|
||
* Not all platforms behave correctly with Szip's shared libraries. Szip is
|
||
disabled in these cases, and a message is relayed at configure time. Static
|
||
libraries should be working on all systems that support Szip and should be
|
||
used when shared libraries are unavailable.
|
||
|
||
There is also a configure error on Altix machines that incorrectly reports
|
||
when a version of Szip without an encoder is being used.
|
||
|
||
* On some platforms that use Intel and Absoft compilers to build the HDF5
|
||
Fortran library, compilation may fail for fortranlib_test.f90, fflush1.f90
|
||
and fflush2.f90 complaining about the exit subroutine. Comment out the line
|
||
IF (total_error .ne. 0) CALL exit (total_error).
|
||
|
||
* Information about building with PGI and Intel compilers is available in
|
||
the INSTALL file sections 4.7 and 4.8.
|
||
|
||
* On at least one system, SDSC DataStar, the scheduler (in this case
|
||
LoadLeveler) sends job status updates to standard error when you run
|
||
any executable that was compiled with the parallel compilers.
|
||
|
||
This causes problems when running "make check" on parallel builds, as
|
||
many of the tool tests function by saving the output from test runs,
|
||
and comparing it to an exemplar.
|
||
|
||
The best solution is to reconfigure the target system so it no longer
|
||
inserts the extra text. However, this may not be practical.
|
||
|
||
In such cases, one solution is to "setenv HDF5_Make_Ignore yes" prior to
|
||
the configure and build. This will cause "make check" to continue after
|
||
detecting errors in the tool tests. However, in the case of SDSC DataStar,
|
||
it also leaves you with some 150 "failed" tests to examine by hand.
|
||
|
||
A second solution is to write a script to run serial tests and filter
|
||
out the text added by the scheduler. A sample script used on SDSC
|
||
DataStar is given below, but you will probably have to customize it
|
||
for your installation.
|
||
|
||
Observe that the basic idea is to insert the script as the first item
|
||
on the command line which executes the the test. The script then
|
||
executes the test and filters out the offending text before passing
|
||
it on.
|
||
|
||
#!/bin/csh
|
||
|
||
set STDOUT_FILE=~/bin/serial_filter.stdout
|
||
set STDERR_FILE=~/bin/serial_filter.stderr
|
||
|
||
rm -f $STDOUT_FILE $STDERR_FILE
|
||
|
||
($* > $STDOUT_FILE) >& $STDERR_FILE
|
||
|
||
set RETURN_VALUE=$status
|
||
|
||
cat $STDOUT_FILE
|
||
|
||
tail +3 $STDERR_FILE
|
||
|
||
exit $RETURN_VALUE
|
||
|
||
You get the HDF5 make files and test scipts to execute your filter script
|
||
by setting the environment variable "RUNSERIAL" to the full path of the
|
||
script prior to running configure for parallel builds. Remember to
|
||
"unsetenv RUNSERIAL" before running configure for a serial build.
|
||
|
||
Note that the RUNSERIAL environment variable exists so that we can
|
||
can prefix serial runs as necessary on the target system. On DataStar,
|
||
no prefix is necessary. However on an MPICH system, the prefix might
|
||
have to be set to something like "/usr/local/mpi/bin/mpirun -np 1" to
|
||
get the serial tests to run at all.
|
||
|
||
In such cases, you will have to include the regular prefix in your
|
||
filter script.
|
||
|
||
* H5Ocopy() does not copy reg_ref attributes correctly when shared-message
|
||
is turn on. The value of the reference in the destination attriubte is
|
||
wrong. This H5Ocopy problem will affect the h5copy tool.
|
||
|