diff options
author | Tae-Young Chung <ty83.chung@samsung.com> | 2018-03-13 17:04:17 +0900 |
---|---|---|
committer | Tae-Young Chung <ty83.chung@samsung.com> | 2018-03-13 17:06:54 +0900 |
commit | 45032639c6c5ee11b79d2d3faaca6e9be6e4be3b (patch) | |
tree | 1d636d696c1f1ea6d79fb469758c465f27a3d37c /release_docs/HISTORY-1_0-1_8_0_rc3.txt | |
parent | 125c0b85df1bf388ae210fc7a87872984f865769 (diff) | |
download | hdf5-master.tar.gz hdf5-master.tar.bz2 hdf5-master.zip |
Import upstream hdf5-1.10.1HEADupstream/1.10.1upstreammaster
Upstream repository is
https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-1.10/hdf5-1.10.1/src/
Change-Id: I4ec4c291940b7bb75722ea16813fbe55736374a6
Signed-off-by: Tae-Young Chung <ty83.chung@samsung.com>
Diffstat (limited to 'release_docs/HISTORY-1_0-1_8_0_rc3.txt')
-rw-r--r-- | release_docs/HISTORY-1_0-1_8_0_rc3.txt | 8985 |
1 files changed, 8985 insertions, 0 deletions
diff --git a/release_docs/HISTORY-1_0-1_8_0_rc3.txt b/release_docs/HISTORY-1_0-1_8_0_rc3.txt new file mode 100644 index 0000000..964d374 --- /dev/null +++ b/release_docs/HISTORY-1_0-1_8_0_rc3.txt @@ -0,0 +1,8985 @@ +HDF5 HISTORY +============ +This file contains history of the HDF5 libraries releases starting with +HDF5-1.0.0 and ending with HDF5-1.8.0-rc3 (the state of the code before i +the HDF5 1.8.0 release). + +CONTENTS + +22. Changes from 1.6.0 to 1.8.0-rc3 +21. Release Information for hdf5-1.6.7 +20. Release Information for hdf5-1.6.6 +19. Release Information for hdf5-1.6.5 +18. Release Information for hdf5-1.6.4 +17. Release Information for hdf5-1.6.3 +16. Release Information for hdf5-1.6.2 +15. Release Information for hdf5-1.6.1 +14. Release Information for hdf5-1.6.0 +13. Release Information for hdf5-1.4.5 +12. Release Information for hdf5-1.4.4 +11. Release Information for hdf5-1.4.3 +10. Release Information for hdf5-1.4.2 +9. Release Information for hdf5-1.4.1 +8. Release Information for hdf5-1.4.0 +7. Release Information for hdf5-1.2.2 +6. Release Information for hdf5-1.2.1 +5. Release Information for hdf5-1.2.0 +4. Changes from Release 1.0.0 to Release 1.0.1 +3. Changes from the Beta 1.0.0 Release to Release 1.0.0 +2. Changes from the Second Alpha 1.0.0 Release to the Beta 1.0.0 Release +1. Changes from the First Alpha 1.0.0 Release to the + Second Alpha 1.0.0 Release + +[Search on the string '%%%%' for per-release section breaks.] + +%%%%1.8.0-rc3%%%% Changes from 1.6.0 to 1.8.0-rc3 + + +HDF5 version 1.8.0-rc3 +================================================================================ + + +INTRODUCTION + +This document describes the differences between HDF5-1.6.* and +Hdf5 1.8.0 release candidate "HDF5-1.8.0-rc3", and contains information +on the platforms tested and known problems in HDF5-1.8.0-rc3. +For more details check the HISTORY.txt file in the HDF5 source. + + +Links to HDF5 1.8.0-rc3 source code, documentation, and additional materials +can be found on THG's development server (www.hdfgroup.uiuc.edu) at the +following location: + http://www.hdfgroup.uiuc.edu/HDF5/release/beta/obtain518.html +User documentation for the beta can be accessed directly at this location: + http://www.hdfgroup.uiuc.edu/HDF5/doc_1.8pre/doc/ + +New features of the upcoming 1.8.0 release are described in +the "What's New in 1.8.0?" document: + http://www.hdfgroup.uiuc.edu/HDF5/doc_1.8pre/WhatsNew180.html + +New and modified APIs are described briefly in + http://www.hdfgroup.uiuc.edu/HDF5/doc_1.8pre/WhatsNew180.html +and will be listed in the "HDF5 Software Changes" document: + http://www.hdfgroup.uiuc.edu/HDF5/doc_1.8pre/doc/ADGuide/Changes.html + + + +For more information, see the HDF5 home page: + + http://www.hdfgroup.org/HDF5/ + +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.6.0 +- Platforms Tested +- Known Problems + + +New Features +============ + + Configuration: + -------------- + - Removed stream-vfd from the HDF5 library. - AKC 2007/11/19. + - Updated versions of autotools. HDF5 now uses automake 1.10.0, + autoconf 2.61, and libtool 1.5.22. MAM - 2007/7/25. + - Changed default fortran compiler to g95 when gcc is used. - AKC + 2007/2/17. + - 'make check-vfd' can now be run from the top level directory. Not all + tests that 'make check' invokes work with certain Virtual File Drivers, + so those tests have been skipped. - MAM 2006/7/17 + - Added the variable HDF5TestExpress to control how long tests run. + Setting it to a value between 0 and 3 controls how thoroughly the + library is tested, with 0 being an "exhaustive run" and 3 being a + very quick "smoke test." 1 (a "full run") is the default. + -JML 2006/6/21 + - If both shared and static libraries are installed, now both will be + tested during 'make install'. -MAM 2006/06/21 + - Added support to explicity enable stream_vfd or shared libraries + when using parallel via the '--enable-stream_vfd' and + '--enable-shared' options, respectively. If not explicity defined, + These settings default to enabled when parallel is not used, + and disabled when parallel is used. -MAM 2006/06/17 + - Remove the flexible parallel code and the --enable-fphdf5 + configure option, it was never up to production standards + anyway. -QAK 2006/4/20 + - Added a macro hdf5_mpi_special_collective_io_works to filter out + some mpi-io packages that don't support collective IO for no IO + contributions in some processes. -KY 2006/2/16 + - Added -shlib option to link against installed shared libraries to + h5c++ and h5fc. -JML 2005/11/1 + - Added --enable-build-all option to configure, which only developers + should need to use. -JML 2005/10/24 + - Configure uses the 'TR' variable to let the user override the path + to the 'tr' utility. -JML 2005/10/17 + - Configure can recognize -lmpich as a form of MPI library. -AKC- + 2005/9/28. + - MD5 checksumming has been added to snapshot releases. Release + tarballs will be accompanied by .md5 checksum files, which can + be verified using the md5sum utility. -JML 2005/9/6 + - Some configure flags are incompatible (e.g., the C++ APIs cannot + be built using the parallel version of HDF5). configure will now + output errors when some common incompatible features are used + together. -JML 2005/9/6 + - A new API function, H5Tis_hard(), was added to the library. It + checks if a conversion function is a compiler (hard) conversion. + SLU - 2005/9/6 + - t_mpi will run the test_mpio_derived_dtype by default unless it is + known not working (indicated by macro H5_MPI_COMPLEX_DERIVED_DATATYPE_WORKS + not defined.) -AKC- 2005/8/23. + - Test execution has changed in a number of ways: + When make is invoked in parallel (using -j), sequential tests + are now executed as parallel make targets. This should make them + finish more quickly on machines with multiple processors. + Since test output is garbled when they are executed by parallel make, + tests now dump their output to foo.log files and foo.logsh files + (for test scripts). These logs are printed to the screen only + when a test fails or when all tests in the current directory have + completed successfully. + When tests pass, they will create a foo.chkexe file. + This prevents the test from executing again until the test or + main library changes. + All files generated by tests (*.chkexe, *.log, and any *.h5 files + created) can be removed by invoking 'make check-clean'. + Sequential and parallel library tests can now be invoked separately. + 'make check-s' will execute only sequential tests, and 'make check-p' + will execute only parallel tests. 'make check' will still execute + all tests. + -JML 2005/08/03 + - On windows, all.zip is deprecated. users should + read INSTALL_Windows.txt to know the details. + Reasons to deprecate all.zip: + 1. Avoid confliction for windows programmers + 2. Decrease size of CVS tree by adding all.zip + 3. Avoid using winzip as the intermediate step + --KY 2005/04/22 + - When HDF5 is created as a shared library, it now uses libtool's + shared library versioning scheme. -JML 2005/04/18 + - HDF5 now uses automake 1.9.5 to generate Makefiles.in. + This has a number of effects on users: + The Fortran compiler should be set using the environment + variable $FC, not $F9X. F9X still works, but is depreciated. + The output of make may be different. This should be only a + cosmetic effect. + make depened (or make dep) is no longer recognized, since automake + handles dependency tracking. + Some new configure options exist. --enable-dependency-tracking + and --disable-dependency-tracking are used to control automake's + dependency tracking. Dependencies are on by default *on most + platforms and compilers*. If --enable-dependency-tracking is + used, they will be enabled on any platform. However, this can + slow down builds or even cause build errors in some cases. + Likewise, --disable-dependency-tracking can speed up builds and + avoid some build errors. + Some make targets have alternate names. make check-install and + make installcheck do the same thing, for instance. + pmake on IRIX can be invoked from the root directory, but the + -V flag must be used to invoke it in any subdirectory or it + will give an error about undefined variables. + JML 2005/01 - 2005/03 + - Hardware conversion between long double and integers is also added. + SLU 2005/02/10 + - Started to support software conversion between long double and + integers. Hardware conversion will come very soon. SLU - 2005/1/6 + - Intel v8.0 compiler would infinite loop when compiling some test + code with -O3 option. Changed enable-production default compiler + option to -O2. AKC - 2004/12/06 + - Long double is assumed to be a supported C data type. It is a + stanadard C89 type. AKC - 2004/10/22 + - The IA64 will use ecc as the C++ compiler by default. + - Added some initial support for making valgrind/Purify (or similar + memory checking products) happier by initializing buffers to zero + and disabling the internal free list code. To take advantage of + this, use the "--enable-using-memchecker" configure option when + building the library. QAK - 2004/07/23 + - Fixed the long compile time of H5detect.c when v7.x Intel Compiler + is used with optimization NOT off. AKC - 2004/05/20 + - Fixed configure setting of C++ for OSF1 platform. AKC - 2004/01/06 + - Prefix default is changed from /usr/local to `pwd`/hdf5. + AKC - 2003/07/09 + + Library: + -------- + - Removed size restrictions on attributes, when using the "latest" + version of the file format. - QAK - 2007/02/21 + - Relaxed restrictions on attribute operations to allow a file ID to + be used as the "location ID". If a file ID is used, the attribute + operation will occur on the root group of the file. + - QAK - 2007/02/09 + - Enabled the CORE driver to read an existing file depending on + the setting of the backing_store for H5Pset_fapl_core and file + open flags. - SLU - 2006/11/30 + - Added new H5Gget_info_by_idx() routine to query the information about + a group according to the order within an index. + - QAK - 2006/11/27 + - Added new H5Gget_info() routine to query the information about a + group by name. + - QAK - 2006/11/27 + - Added new H5Oget_info_by_idx() routine to query the information about + an object in a group according to the order within an index. + - QAK - 2006/11/26 + - Added new H5Oget_info() routine to query the information about an + object in a group by name. + - QAK - 2006/11/26 + - Added new H5Oopen_by_idx() routine to open an object in a group + according to the order within an index. + - QAK - 2006/11/20 + - Added new H5Literate() routine to iterate over links in a group + according to the order within an index. + - QAK - 2006/11/20 + - Added new H5Ldelete_by_idx() routine to delete a link according to + the order within an index. + - QAK - 2006/11/13 + - Added new H5Lget_val_by_idx() routine to query the value of a soft link + according to the order within an index. + - QAK - 2006/11/13 + - Added new H5Lget_name_by_idx() routine to query the name of a link + according to the order within an index. + - QAK - 2006/11/12 + - Added new H5Rget_name() routine to determine the name of the object + that a reference points to, as long as the object is still + reachable in the group hierarchy. + - QAK - 2006/11/10 + - Added new H5Lget_info_by_idx() routine to query the link information + according to the order within an index. + - QAK - 2006/11/10 + - Added feature to H5Iget_name to allow retrieving the name of any + object's ID, as long as the object is still reachable in the + group hierarchy. + - LA - 2006/11/01 + - Added External and User-defined links. + External links are links from one HDF5 file to another; they + require both the name of the file and a path within that file. + User-defined links allow users to supply callback functions + for link traversals, allowing links to exhibit essentially + any behavior. + External links are a kind of user-defined link, so their default + behavior can be overridden by the user. + -JML 2006/8/23 + - Added H5Oopen and H5Oclose for opening objects of unknown type + (as link callback functions do). + -JML 2006/8/23 + - Added H5Oopen_by_addr, H5Oincr_refcount, and H5Odecr_refcount for + opening objects by address. Be very careful with these! + -JML 2006/8/23 + - Added H5Fget_intent to get the "intent" of a file (whether it + was opened with read-write access or read-only. + -JML 2006/8/23 + - Added Link Access Property Lists. They currently contain two + properties, nlinks (H5Pget/set_nlinks) and elink_prefix + (H5Pget/set_elink_prefix). nlinks controls how many soft and + user-defined traversals are allowed before HDF5 assumes it has + found a cycle (previously this defaulted to 16). + The elink_prefix is a filesystem path that is prefixed to the + names of any external link files opened using this LAPL. + -JML 2006/8/23 + - Add H5L link APIs. Old APIs (H5Glink, H5Gmove, etc.) are still + supported but deprecated. + New APIs are: + H5Llink - create a link to an object given its ID + H5Lmove - just like H5Gmove2 + H5Lcopy - copy a link without copying the underlying object + H5Lcreate_hard - like H5Glink2 for hard links + H5Lcreate_soft - like H5Glink2 for soft links + H5Ldelete - just like H5Gunlink + H5Lget_val - just like H5Gget_linkval + H5Lget_info - gets link-specific info (like H5Gget_objinfo) + + In addition, H5Gcreate_anon, H5Tcommit_anon, and H5Dcreate_anon + no longer create links to objects; objects must be manually linked + using H5Llink or they will be deleted when the ID is closed. + + Link Creation Property Lists can be used to pass character + encoding (ASCII or UTF-8) for link names and to set the Intermediate + Group Creation Flag: + H5Pset_char_encoding, H5Pget_char_encoding + H5Pset_copy_object, H5Pget_copy_object + -JML 2006/7/5 + - Added managements of collective IO supports for chunking storage + inside parallel HDF5 + 1) Implemented One IO with collective mode for all chunks in the + application by building one MPI derived datatype accross all + chunks. + 2) Implemented the decision-making support to do collective IO inside + MPI-IO per chunk. + 3) Added the decision-making support to do one IO accross all chunks + or to do multiple IOs with each IO per chunk. + 4) Added the support to handle the case some processes won't do any IOs in + collectively. + 5) Some MPI-IO package(mpich 1.2.6 or lower, e.g.) cannot handle + collective IO correctly for the case when some processes have no + contributions to IOs, a special macro is added to change + collective IO mode to independent IO mode inside HDF5 library. + + Currently we find that MPICH at Linux and vender MPI-IO package at NCSA + Altix cannot handle this case. + + "hdf5_mpi_special_collective_io_works=${hdf5_mpi_special_collective_io_works='no'}" + has been added at the end of file <ia64-linux-gnui> and + <linux-gnulibc1>. + + If MPI-IO packages at your Linux and Altix support this case, + please comment out the last line and report to us at + help@hdfgroup.org. We can tune in our configuration to + support this. + + KY - 2006/02/16 + - Added character encoding to attribute creation property lists. + JML - 2006/01/02 + - Added H5Gcopy() routine to copy objects between while keeping + data in compressed form. QAK - 2005/11/06 + - Added H5Sextent_equal() routine. QAK - 2005/11/06 + - Added HSYS_ERROR which retrieves the system error message and pushes + it to the error stack. This gives more information of the failed + system call. AKC - 2005/08/04 + - Added H5F_OBJ_LOCAL flag to H5Fget_obj_count() & H5Fget_obj_ids(), to + allow querying for objects in file that were opened with a particular + file ID, instead of all objects opened in file with any file ID. + QAK - 2005/06/01 + - Added H5T_CSET_UTF8 character set to mark datatypes that use the + UTF-8 Unicode character encoding. Added tests to ensure that + library handles UTF-8 object names, attributes, etc. -JL 2005/05/13 + - HDF5 supports collective MPI-IO for irregular selection with HDF5 + dataset. Irregular selection is when users use H5Sselect_hyperslab + more than once for the same dataset. + Currently, not all MPI-IO packages support complicated MPI derived + datatype used in the implementation of irregular + selection INSIDE HDF5. + 1) DEC 5.x is not supporting complicated derived datatype. + 2) For AIX 5.1, + if your poe version number is 3.2.0.19 or lower, + please edit powerpc-ibm-aix5.x under hdf5/config, + Find the line with + << hdf5_mpi_complex_derived_datatype_works>> + and UNCOMMENT this line before the configure. + check poe version with the following command: + lpp -l all | grep ppe.poe + 3) For Linux cluster, + if mpich version is 1.2.5 or lower, collective irregular selection + IO is not supported, internally independent IO is used. + 4) For IRIX 6.5, + if C compiler version is 7.3 or lower, collective irregular selection + IO is not supported, internally independent IO is used. + 5) For platforms which internally used mpich, if the + mpich version is 1.2.5 or lower, please find the + corresponding config file and add + hdf5_mpi_complex_derived_datatype_works='no' at the + end of the configuration file. For example, at NCSA + SGI Altix, the internal mpich library is 1.2.5. So + hdf5_mpi_complex_derived_datatype_works='no' should be + added at the end of the config file ia64-linux-gnu. + KY - 2005/09/12 + We also found not all MPI-IO packages support collective IO with one + or more processes to have no contributions to IO. + For mpich version 1.2.6 or lower and all IRIX machine, + if the library checks that there are no IO contributions for some + processes, collective IO request is replaced with + independent inside HDF5. + KY - 2006/05/04 + + - HDF5 N-bit filter + HDF5 support N-bit filter from this version, + The N-Bit filter is used effectively for compressing data of N-Bit + datatype as well as compound and array datatype with N-Bit fields. + KY - 2005/04/15 + - HDF5 scaleoffset filter + HDF5 supports scaleoffset filter for users to do data + compression through HDF5 library. + Scale-Offset compression performs a scale and/or offset operation + on each data value and truncates the resulting value to a minimum + number of bits and then stores the data. + Scaleoffset filter supports floating-point and integer datatype. + Please check the HDF5 reference manual for this. + KY - 2005/06/06 + - Retired SRB vfd (--with-srb). Functions H5Pset_fapl_srb and + H5Pget_fapl_srb were removed. EIP - 2005/04/07 + - Retired GASS vfd (--with-gass). Functions H5Pset_fapl_gass and + H5Pget_fapl_gass are removed too. AKC - 2005/3/3 + - Pablo was removed from the source code EIP - 2005/01/21 + - Modified registration of SZIP to dynamically detect the presence + or absence of the encoder. Changed configure and Makefiles, + and tests to dynamically detect encoder. BEM - 2004/11/02 + - Added function H5Pget_data_transform, together with the previously + added H5Pset_data_transform, to support the data transform + feature. AKC - 2004/10/26 + - Compound datatype has been enhanced with a new feature of size + adjustment. The size can be increased and decreased(without + cutting the last member) as long as it doesn't go down to zero. + No API change is involved. SLU - 2004/10/1 + - Put back 6 old error API functions to be backward compatible with + version 1.6. They are H5Epush, H5Eprint, H5Ewalk, H5Eclear, + H5Eset_auto, H5Eget_auto. Their new equivalent functions are + called H5Epush_stack, H5Eprint_stack, H5Ewalk_stack, + H5Eclear_stack, H5Eset_auto_stack, H5Eget_auto_stack. SLU - + 2004/9/2 + - 4 new API functions, H5Tencode, H5Tdecode, H5Sencode, H5Sdecode were + added to the library. Given object ID, these functions encode and + decode HDF5 objects(data type and space) information into and from + binary buffer. SLU - 2004/07/21 + - Modified the way how HDF5 calculates 'pixels_per_scanline' parameter for + SZIP compression. Now there is no restriction on the size and shape of the + chunk except that the total number of elements in the chunk cannot be + bigger than 'pixels_per_block' parameter provided by the user. + EIP - 2004/07/21 + - Added support for SZIP without encoder. Added H5Zget_filter_info + and changed H5Pget_filter and H5Pget_filter_by_id to support this + change. JL/NF - 2004/06/30 + - SZIP always uses K13 compression. This flag no longer needs to + be set when calling H5Pset_szip. If the flag for CHIP + compression is set, it will be ignored (since the two are mutually + exclusive). JL/NF - 2004/6/30 + - A new API function H5Fget_name was added. It returns the name + of the file by object(file, group, data set, named data type, + attribute) ID. SLU - 2004/06/29 + - Added support for user defined identifier types. NF/JL - 2004/06/29 + - A new API function H5Fget_filesize was added. It returns the + actual file size of the opened file. SLU - 2004/06/24 + - New Feature of Data transformation is added. AKC - 2004/05/03. + - New exception handler for datatype conversion is put in to + replace the old overflow callback function. This exception + handler is set through H5Pset_type_conv_cb function. + SLU - 2004/4/27 + - Added option that if $HDF5_DISABLE_VERSION_CHECK is set to 2, + will suppress all library version mismatch warning messages. + AKC - 2004/4/14 + - A new type of dataspace, null dataspace(dataspace without any + element) was added. SLU - 2004/3/24 + - Data type conversion(software) from integer to float was added. + SLU - 2004/3/13 + - Data type conversion(software) from float to integer was added. + Conversion from integer to float will be added later. + SLU -2004/2/4 + - Added new H5Premove_filter routine to remove I/O pipeline filters + from dataset creation property lists. PVN - 2004/01/26 + - Added new 'compare' callback parameter to H5Pregister & H5Pinsert + routines. QAK - 2004/01/07 + - Data type conversion(hardware) between integers and floats was added. + SLU 2003/11/21 + - New function H5Iget_file_id() was added. It returns file ID given + an object(dataset, group, or attribute) ID. SLU 2003/10/29 + - Added new fields to the H5G_stat_t for more information about an + object's object header. QAK 2003/10/06 + - Added new H5Fget_freespace() routine to query the free space in a + given file. QAK 2003/10/06 + - Added backward compatability with v1.6 for new Error API. SLU - + 2003/09/24 + - Changed 'objno' field in H5G_stat_t structure from 'unsigned long[2]' + to 'haddr_t'. QAK - 2003/08/08 + - Changed 'fileno' field in H5G_stat_t structure from 'unsigned long[2]' + to 'unsigned long'. QAK - 2003/08/08 + - Changed 'hobj_ref_t' type from structure with array field to 'haddr_t'. + QAK - 2003/08/08 + - Object references (hobj_ref_t) can now be compared with the 'objno' + field in the H5G_stat_t struct for testing if two objects are the + same within a file. QAK - 2003/08/08 + - Switched over to new error API. SLU - 2003/07/25 + + Parallel Library: + ----------------- + - Added mpich2 as a testing "platform" informally. AKC - 2005/9/28. + - A dataset created in serial mode with H5D_ALLOC_TIME_INCR allocation + setting was not extendible, either explicitly by H5Dextend or + implicitly by writing to unallocated chunks. Library now allocates + more space when needed or directed if the file is opened by parallel + mode, independent of what the dataset allocation mode is. + CC/AKC - 2005/08/29. + - Allow compressed, chunked datasets to be read in parallel. + QAK - 2004/10/04 + - Add options of using atomicity and file-sync to test_mpio_1wMr. + AKC - 2003/11/13 + - Added parallel test, test_mpio_1wMr, which tests if the + underlaying parallel I/O system is conforming to the POSIX + write/read requirement. AKC - 2003/11/12 + + Fortran Library: + ---------------- + - added support for shared Fortran libraries. -JML 2005/09/20 + - added missing h5tget_member_class_f function + EIP 2005/04/06 + - added new functions h5fget_name_f and h5fget_filesize_f + EIP 2004/07/08 + - h5dwrite/read_f and h5awrite/read_f functions only accept dims parameter + of the type INTEGER(HSIZE_T). + - added support for native integers of 8 bytes (i.e. when special + compiler flag is specified to set native fortran integers to 8 bytes, + for example, -i8 flag for PGI and Absoft Fortran compilers, + -qintsize=8 flag for IBM xlf compiler). + EIP 2005/06/20 + - added support for "big" REAL and DOUBLE PRECISION types + (usually the size is specified by compilers flags like + -r8, -r16, etc.) + Known problem: multi file test fails when REAL is 16 bytes. + EIP 2005/09/8 + + C++ Library: + ---------------- + - added support for shared C++ libraries. -JML 2005/09/20 + - Added missing member functions + H5::CompType::getMemberArrayType + H5::CompType::getMemberVarLenType + H5::AbstractDs::getArrayType + H5::AbstractDs::getVarLenType + H5::CommonFG::openArrayType + H5::CommonFG::openVarLenType + H5::PropList::copyProp -- this will replace the current + H5::PropList::copyProp in later releases due + to incorrect prototype. + H5::IdComponent::getHDFObjType + BMR - 2005/08/08 + + + Tools: + ------ + - h5repack and h5diff changed command line parameter syntax to be + similar to h5dump, adding also long switch names. PVN - 2008/1/16 + - h5repack now supports adding multiple filters to all objects. + PVN - 2008/1/16 + - h5dump lists groups and attributes in requested orders (by name and + creation order, both ascending and descending). PVN - 2007/10/5 + - h5import imports string (text) data. PVN - 2007/10/5 + - h52gif and gif2h5: Both these tools were revised to include the High + Level Image API support, and tests were added to /hl/tools/gif2h5. + PVN - 2007/04/13 + - h5dump: added support for double long type H5T_NATIVE_LDOUBLE. PVN + 2007/03/13 + - h5dump: added support for binary output, see usage. PVN 2007/03/13 + - h5repack: added support for the new nbit and scaleoffset filters. + PVN - 2007/05/07 + - h5repack: now uses the API function H5Ocopy (of the tool h5copy) to + recreate objects if there is not a user input for changes. PVN - + 2007/05/07 + - h5repack: added support for reading and repacking by hyperslabs for + large files. PVN - 2007/03/01 + - h5repack: a new option allows the copy using the file type (default) + instead of the previous conversion to native type. PVN - 2007/03/01 + - h5repack: output the percentage of compression used. PVN - 2007/03/01 + - h5diff: added support for -p option for unsigned long_long data. PVN + - 2007/02/26 + - h5diff: added support for comparing dataset regions. PVN - 2007/02/20 + - h5diff: added support for reading and comparing by hyperslabs for large files. + PVN - 2007/02/20 + - h5diff: printing of dataset dimensions along with dataset name. PVN -2007/02/19 + - h5dump now uses the new API function H5Rget_name to display the name + of the dataset referenced instead of its ID. PVN - 2007/02/19 + - Added new tool, h5mkgrp. QAK - 2007/02/14 + - Added new tool, h5copy. PVN - 2006/7/15 + - Removed obsolete pdb2hdf5 tool from tools/misc -JML 2005/10/24 + - Added build_h5perf_alone.sh that builds h5perf by standalone mode. + AKC - 2005/09/18. + - Sped up h5dump on files with large numbers of objects. + QAK - 2005/08/25 + - Added a standalone mode for building h5perf. AKC - 2005/08/12 + - new tool, h5jam. See reference manual. 2004/10/08 + - h5repack.sh did not report errors encountered during tests. It does + now. AKC - 2004/04/02 + - Added the MPI-I/O and MPI-POSIX drivers to the list of VFL drivers + available for h5dump and h5ls. RPM & QAK - 2004/02/01 + - Added option --vfd= to h5ls to allow a VFL driver to be selected + by a user. RPM & QAK - 2004/02/01 + - Added option -showconfig to compiler tools (h5cc,h5fc,h5c++). + AKC - 2004/01/08 + - Install the "h5cc" and "h5fc" tools as "h5pcc" and "h5pfc" + respectively if library is built in parallel mode. + WCW - 2003/11/04 + - Added metadata benchmark (perform/perf_meta). SLU - 2003/10/03 + - Changed output of "OID"s from h5dump from "<number>-<number>" to + "<number". This affects both the "regular" and XML output. + QAK - 2003/08/08 + - Changed output of file IDs and "OID"s from h5ls from + "<number>:<number>:<number>:<number>" to "<number>:<number>" + QAK - 2003/08/08 + + High-Level APIs: + ------ + - Fortran interfaces for the Image, Table and Lite APIs. PVN - 2007/5/1 + - New HDF5 Dimension Scale API (H5DS) allows dimension scales to be + created in an HDF5 file and associated with specific datasets. PVN - 2007/5/1 + - There are two new functions in the Lite library, H5LTtext_to_dtype + and H5LTdtype_to_text. H5LTtext_to_dtype creates a HDF5 data type + given a text description; H5LTdtype_to_text converts a data type + to text description. Only DDL definition is supported as text + desciption now. SLU - 2006/05/17 + - Added Packet Table API for creating tables with less overhead than + H5TB API. Added C++ wrapper for Packet Tables. See documentation. + JML - 2004/03/28 + + Documentation + ------------- + - The documentation for this release is largely complete, but + trails the source code. A few of the newer functions are + not yet documented. FMB - 2007/04/18 + - The user documents for this release can be accessed directly at + this location: + http://www.hdfgroup.uiuc.edu/HDF5/doc_1.8pre/doc/ + The most recent document versions (updated daily) in the + 1.8 development branch can be accessed at this location: + http://www.hdfgroup.uiuc.edu/HDF5/doc_dev_snapshot/H5_dev/ + FMB - 2007/04/18 + + +Support for new platforms, languages and compilers. +======================================= + - Added support for Free-BSD on amd64 with GNU C and Fortran compilers + 4.2.1 + EIP - 2007/06/25 + - Added support for sequential and parallel libraries for Intel 64 Linux + cluster (abe.ncsa.uiuc.edu). Among three MPICH packages available on + this machine, only Open MPI works. The VMI has seg fault in hyperslab.c + and bittests.c tests. The MVAPICH2 complained about mpd not running + the parallel test. (see Known Problems section for more info) + EIP - 2007/06/25 + - Added support for HPUX11.23 for both 32 and 64-bit; HDF5 C++ + - Added support for 64-bit Windows with Visual Studio .NET and 2005. + SJW - 2007/06/25 + - Added suport for HPUX11.23 for both 32 and 64-bit; HDF5 C++ + shared library is not supported with +DD64 flag. + EIP - 2006/06/22 + - Added support for VAX floating numbers for Alpha Open VMS 7.3.2 + EIP - 2006/05/05 + - Fixed broken make.com files in tools directories + EIP - 2006/05/05 + - Added support for Alpha Open VMS 7.3.2 EIP - 2006/04/15 + - Added support for Cray X1. JML - 2005/10/03 + - PGI Fortran compiler is supported on Linux64 systems (x86_64) + EIP - 2004/08/19 + - Absoft compiler f95 v9.0 supported on Linux 2.4 + EIP - 2004/07/29 + - HDF5 Fortran APIs are supported on Mac OSX with IBM XL Fortran + compiler version 8.1. This is a default compiler. + - HDF5 Fortran APIs are supported on MAC OSX with Absoft F95 compiler + version 8.2; set F9X environment varibale to f95, for example + setenv F9X f95 + Use --disable-shared --enable-static configure flags when Absoft + compiler is used. + EIP - 2004/07/27 + - HDF5 Fortran APIs are supported on MAC OSX with IBM XL Fortran + Compiler version 8.1 Use "--disable-shared --enable-static" + configure flags along with the "--enable-fortran" flag to build + Fortran library. EIP - 2004/01/07 + +Bug Fixes since HDF5-1.6.0 release +================================== + + Library + ------- + - Changed library's behavior for reading files that might have + corrupted object header information from a previous (buggy) + version of the library. By default, the library now rebuilds the + correct object header information instead of issuing an error. + Previous "strict" file format interpretation can be enabled with + the "--enable-strict-format-checks" configure option. + QAK - 2008/01/13 + - Fixed several bugs with writing fill values for datasets that have + a variable-length datatype or component datatype. QAK - 2007/06/19 + - STDIO driver didn't support files bigger than 2GB because the OFFSET + parameter of fseek is of type LONG INT, not big enough for big files. + Use fseeko instead for big files if it's available on the system. + SLU - 2007/4/5 + - Fixed a bug in H5Sselect_valid() that caused an incorrect value to + be returned (0) instead of FAIL on error conditions such as the + selection or extent not being defined. CMC - 2007/01/17 + - Fixed the MULTI driver problem (Bug #731) that corruptted the data. + SLU - 2007/1/12 + - Fixed file corruption bug which could write an incorrect number of + messages to an object's header under certain circumstances. + Generally, the sequence of actions to generate this bug looks + like this: + - Create an object + - Close the file + - Re-open the file + - Add 2 (or more) attributes to the object + - Close the file + - Re-open the file + - Delete one of the attributes on the object + - Add a smaller attribute to the object + - Delete the smaller atttribute on the object + - Add a larger attribute on the object + + After this, the number of header messages stored for the object + will be off by one. Other sequences of modifying attributes on an + object could also trigger this bug. If you are opening an + object and the bottom few messages of the HDF5 error stack + resembles this, the object has been affected by this bug: + + #007: ../../hdf5_v1.6/src/H5C.c line 3887 in H5C_load_entry(): unable to load entry + major(08): Meta data cache layer + minor(40): Unable to load metadata into cache + #008: ../../hdf5_v1.6/src/H5Ocache.c line 332 in H5O_load(): corrupt object header - too few messages + major(12): Object header layer + minor(40): Unable to load metadata into cache + + Specifically, "corrupt object header" is the best string to search + for in the HDF5 error stack output. + + If your files have been affected by this bug, or you are concerned + that your files might have been, please contact the HDF Helpdesk + at help@hdfgroup.org for a tool to detect and repair files + affected by this problem. QAK - 2006/6/16 + - Fixed various problems with retrieving names of objects, especially + with mounted files. QAK - 2005/12/25 + - Fixed core dump when closing root groups opened through two different + file handles that operate on the same actual file. QAK - 2005/10/02 + - Corrected errors when performing various operations on a group opened + by dereferencing an object reference. QAK - 2005/07/30 + - Fixed a bug with named datatypes where a copy of a named datatype + used to create a dataset would accidentally use the original + named datatype for the dataset's datatype. QAK - 2005/07/23 + - Made H5Fget_name() be consistent and always return name of actual + file the ID is in. (Instead of the name of the top file in a + file mounting hierarchy). QAK - 2005/07/19 + - Reworked internal file mounting semantics to hopefully eliminate + mounting problems. We now require that files that are mounting + together all have the same "file close degree". QAK - 2005/07/19 + - More bug fixes on holding open files that are mounted and have + IDs open. QAK - 2005/07/14 + - Don't unmount child files until the parent file actually closes. + (Previously, if an object is holding open a file, the child files + would get unmounted too early). QAK - 2005/07/05 + - Fixed bug where unmounted files could cause the library to go into + an infinite loop when shutting down. QAK - 2005/06/30 + - The library didn't save the information of family driver in file. + The original file member size was lost after file was closed (see + bug #213). This has been fixed by saving driver name and member + file size in the superblock. SLU - 2005/6/24 + - Fixed bug with hyperslab selections that use selection offsets and + operate on chunked datasets going into infinite loop or dumping + core. QAK - 2005/06/17 + - Corrected memory leak and possible corruption when opening a group. + QAK - 2005/06/17 + - Added check for opaque datatype tags being too long (check against + H5T_OPAQUE_TAG_MAX, currently set to 256). QAK - 2005/06/14 + - Fixed various errors in maintaining names for open objects in the + face of unusual mount & unmount operations. QAK - 2005/06/08 + - "SEMI" and "STRONG" file close degree settings now apply only to the + particular file ID being closed, instead of operating on all open + file IDs for a given file. QAK - 2005/06/01 + - For family driver, the library didn't save member size in file. + When file is reopened, the size of 1st member file determine the + member size. Now member size is saved in file and is used to + define member file size. Wrong file access property of member size + will result in a failure. Using any other driver except family + will cause library to return error. So is multi driver. SLU - + 2005/05/24 + - Fixed error in opening object in group that was opened in mounted + file which has been unmounted. QAK - 2005/03/17 + - Fixed a racing condition in MPIPOSIX virtual file drive close + function. Now all processes must completed the close before any + of them is returned. This prevents some "faster" processes start + accessing the file for another purpose (e.g., open with truncate) + while other "slower" processes have not closed the same file with + the previous purpose. AKC - 2005/03/01 + - H5Tget_member_value calls for enum datatype didn't return correct + value if H5Tenum_valueof was called first. It's fixed. SLU - + 2005/02/08 + - For variable-length string, H5Tget_class returned H5T_STRING as its + class. But H5Tdetect_class and H5Tget_member_class considered it + as H5T_VLEN. This is fixed to let all these 3 functions treat it + as H5T_STRING. SLU - 2005/02/08 + - The byte order of 1-byte integer types was fixed as little endian + even on a big-endian machine. This has been corrected. SLU - + 2005/02/07 + - Fix segmentation fault when calling H5Fflush with an attribute that + hasn't had a value written to it open. QAK - 2004/10/18 + - Back up supporting bitfield and time types in H5Tget_native_type. + Leave it to future support. The function simply returns error + message of "not support" for bitfield and time types. + SLU - 2004/10/5 + - Fixed address check in Core VFL driver to avoid spurious address/size + overflows for odd valued addresses and/or sizes. QAK - 2004/09/27 + - Fixed parallel bug in which some processes attempted collective + I/O while others did independent I/O. Bug appeared when some + processes used point selections, and others didn't. JRM - 2004/9/15 + - Corrected error where dataset region references were written in an + incorrect way on Cray machines. PVN & QAK - 2004/09/13 + - The H5Tget_native_type now determines the native type for integers + based on the precision. This is to avoid cases of wrongly converting + an int to a short in machines that have a short of 8 bytes but with + 32bit precision (e.g Cray SV1). PVN - 2004/09/07 + - Changed H5Dread() to not overwrite data in an application's buffer + with garbage when accessing a chunked dataset with an undefined + fill value and an unwritten chunk is uncountered. QAK - 2004/08/25 + - Fixed error which could cause a core dump when a type conversion + routine was registered after a compound datatype had been + converted and then an equivalment compound datatype was converted + again. QAK - 2004/08/07 + - Fixed memory overwrite when encoding "multi" file driver information + for file's superblock. QAK - 2004/08/05 + - Fixed obscure bug where a filter which failed during chunk allocation + could allow library to write uncompressed data to disk but think + the data was compressed. QAK - 2004/07/29 + - Fixed bug where I/O to an extendible chunked dataset with zero-sized + dimensions would cause library to fail an assertion. + QAK - 2004/07/27 + - Fixed bug where chunked datasets which have filters defined, + allocation time set to "late" and whose chunks don't align with + the dataspace bounds could have incorrect data stored when + overwriting the entire dataset on the first write. QAK - 2004/07/27 + - Added check to ensure that dataspaces have extents set. JML-2004/07/26 + - Fixed bug on some Solaris systems where HDF5 would try to use + gettimeofday() when that function didn't work properly. + JML - 2004/07/23 + - Fixed bug in H5Sset_extent_simple where setting maximum size to + non-zero, then to zero would cause an error. JML - 2004/07/20 + - Allow NULL pointer for buffer parameter to H5Dread & H5Dwrite + when not writing data ("none" selection or hyperslab or point + selection with no elements defined). QAK - 2004/07/20 + - Calling H5Gcreate() on "/" or "." throws an error instead of + failing quietly. JML - 2004/07/19 + - Fixed bug where setting file address size to be very small could + trigger an assert if the file grew to more than 64 KB. Now throws + an error and data can be recovered. JL/NF - 2004/07/14 + - Fixed bug where "resurrecting" a dataset was failing. + QAK - 2004/07/14 + - Fixed bug where incorrect data could be read from a chunked dataset + after it was extended. QAK - 2004/07/12 + - Fixed failure to read data back from file of compound type with + variable-length string as field. SLU - 2004/06/10 + - Fixed potential file corruption bug when a block of metadata could + overlap the end of the internal metadata accumulator buffer and + the buffer would be extended correctly, but would incorrectly + change it's starting address. QAK - 2004/06/09 + - Opaque datatype with no tag failed for some operations. Fixed. + SLU - 2004/6/3 + - Fixed potential file corruption bug where dimensions that were + too large (a value greater than could be represented in 32-bits) + could cause the incorrect amount of space to be allocated in a + file for the raw data for the dataset. QAK - 2004/06/01 + - Fixed dtypes "sw long double -> double" failure in QSC class + machines. AKC - 2004/4/16 + - Fixed problem with fletcher32 filter when converting data of different + endianess. PVN - 2004/03/10 + - Fixed problem with H5Tget_native_type() not handling opaque fields + correctly. QAK - 2004/01/31 + - Fixed several errors in B-tree deletion code which could cause a + B-tree (used with groups and chunked datasets) to become corrupt + with the right sequence of deleted objects. QAK - 2004/01/19 + - Fixed small internal memory leaks of fill-value information. + QAK - 2004/01/13 + - Fixed bug that caused variable-length datatypes (strings or sequences) + used for datasets in files with objects that were unlinked to + fail to be read/written to a file. QAK - 2004/01/13 + - Detect situation where szip 'pixels per block' is larger than the + fastest changing dimension of a dataset's chunk size and disallow + this (due to limits in szip library). QAK - 2003/12/31 + - Fixed bug with flattened hyperslab selections that would generate + incorrect hyperslab information with certain high-dimensionality + combinations of start/stride/count/block information. + QAK - 2003/12/31 + - Fixed bug with variable-length datatypes used in compound datatypes. + SLU - 2003/12/29 + - Fixed bug in parallel I/O routines that would cause reads from + "short datasets" (datasets which were only partially written out) + to return invalid data. QAK & AKC - 2003/12/19 + - Fixed bug where scalar dataspaces for attributes were reporting as + simple dataspaces. QAK - 2003/12/13 + - Fixed problem with selection offsets of hyperslab selections in + chunked datasets causing the library to go into an infinite loop. + QAK - 2003/12/13 + - Fixed H5Giterate to avoid re-using index parameter after iteration + callback has been called (allows iteration callback to modify the + index parameter itself). QAK - 2003/12/06 + - Fixed various floating-point conversion problems, including a + change which could corrupt data when converting from double->float. + QAK - 2003/11/24 + - Changed "single process" metadata writing in library to collective + I/O by all processes, in order to guarantee correct data being + written with MPI-I/O. QAK - 2003/11/20 + - Fixed problems with fill values and variable-length types and also + I/O on VL values that were set to NULL. QAK - 2003/11/08 + - Fixed problems with MPI datatypes that caused ASCI Q machine to + hang. QAK - 2003/10/28 + - Removed HDF5_MPI_PREFER_DERIVED_TYPES environment variable support, + since it had no benefit. QAK - 2003/10/28 + - Single hyperslab selections (which were set with only one call to + H5Sselect_hyperslab) that had dimensions that could be "flattened" + but were interspersed with dimensions that could not be flattened + were not correctly handled, causing core dumps. QAK - 2003/10/25 + - Fixed incorrect datatype of the third parameter to the Fortran90 + h5pset(get)_cache_f subroutine (INTEGER to INTEGER(SIZE_T)) + EIP - 2003/10/13 + - Fixed problems with accessing variable-length data datatypes on + Crays. QAK - 2003/10/10 + - Fixed potential file corruption bug when too many object header + messages (probably attributes, from a user perspective) were + inserted into an object header and certain other conditions were + met. QAK - 2003/10/08 + - Changed implementation of internal ID searching algorithm to avoid + O(n) behavior for many common cases. QAK - 2003/10/06 + - Allow partial parallel writing to compact datasets. QAK - 2003/10/06 + - Correctly create reference to shared datatype in attribute, instead + of making a copy of the shared datatype in the attribute. + QAK - 2003/10/01 + - Revert changes which caused files >2GB to fail when created with + MPI-I/O file driver on certain platforms. QAK - 2003/09/16 + - Allow compound datatypes to grow in size. SLU - 2003/09/10 + - Detect if a type is already packed before attempting to pack it + again or check if it is locked. SLU - 2003/09/10 + - Corrected bug when opening a file twice with read-only permission + for one open and then closing the read-only access file ID would + generate an error. QAK - 2003/09/10 + - Corrected bug in repeated calls to H5Pget_access_plist() which would + incorrectly manage reference counts of internal information and + eventually blow up. QAK - 2003/09/02 + - Return rank of the array datatype on successful call to + H5Tget_array_dims(). QAK - 2003/08/30 + - Corrected bug in H5Tdetect_class which was not correctly detecting + datatype classes of fields in nested compound datatypes in some + circumstances. QAK - 2003/08/30 + - Corrected bug in sieve buffer code which could cause loss of data + when a small dataset was created and deleted in quick succession. + QAK - 2003/08/27 + - Corrected bug in H5Gget_objname_by_idx which was not allowing NULL + for the name when just querying for the object name's length. + QAK - 2003/08/25 + - Corrected bug in variable-length string handling which could + generate a core dump on writing variable-length strings as part + of a compound datatype on certain architectures. QAK - 2003/08/25 + - Corrected bug in H5Tget_native_type which would incorrectly compute + the size of certain compound datatypes and also incorrectly + compute the offset of the last field for those compound datatypes. + QAK - 2003/08/25 + - Corrected bug in H5Tget_native_type which would drop string datatype + metadata (padding, etc.) QAK - 2003/08/25 + - Corrected bugs in H5Gget_num_objs, H5Gget_objname_by_idx and + H5Gget_objtype_by_idx to allow them to accept location IDs, not just + group IDs. QAK - 2003/08/21 + - Corrected bug when using scalar dataspace for memory selection and + operating on chunked dataset. QAK - 2003/08/18 + - Corrected bugs with multiple '/' characters in names for H5Glink + and H5Gunlink. QAK - 2003/08/16 + - Corrected bug with user blocks that didn't allow a user block to + be inserted in front of a file after the file was created. + QAK - 2003/08/13 + - Corrected errors with using point selections to access data in + chunked datasets. QAK - 2003/07/23 + - Corrected error with variable-length datatypes and chunked datasets + caused H5Dwrite to fail sometimes. QAK - 2003/07/19 + - Modified library and file format to support storing indexed storage + (chunked dataset) B-tree's with non-default internal 'K' values. + QAK - 2003/07/15 + - Returned H5T_BKG_TEMP support to library after it was accidentally + removed. QAK - 2003/07/14 + + Configuration + ------------- + - Configure can now use any tr command. No more need for + defining variable TR nor is it supported. -AKC 2006/05/19 + - Parallel I/O with the MPI-I/O driver will no longer work if the + filesystem is not POSIX compliant. The "HDF5_MPI_1_METAWRITE" + environment variable has been removed. QAK - 2004/01/30 + - Fixed the error that cause "make install" to fail because of the + macro definition syntax of "prefix?=..." AKC - 2003/07/22 + + Performance + ------------- + - Optimized I/O for enumerated datatypes that are a superset of source + enumerated datatype. QAK - 2005/03/19 + - More optimizations to inner loops of datatype conversions for + integers and floats which give a 10-50% speedup. QAK - 2003/11/07 + - Hoisted invariant 'if/else's out of inner datatype conversion loop for + integer and floating-point values, giving about a 20% speedup. + QAK - 2003/10/20 + + Tools + ----- + - Fixed h5dump regarding the display of blocks in hyperslab + selections. PVN 2008/01/16 + - Fixed h5diff regarding the display of NaN (Not a Number) + values. PVN 2008/01/16 + - Fixed h5dump regarding the parsing of binary output parameters. + PVN 2008/01/16 + - Fixed memory problems in h52gif and gif2h5. PVN 2008/01/16 + - Fixed h5repack dealing with NULL references. PVN 2008/01/16 + - Fixed h5dump & h5ls to display attributes in "name" order, rather + than the order they are encountered in the object header. + QAK - 2007/10/04 + - Fixed h5dump regarding the display of named datatypes + attributes. PVN 2007/03/13 + - Fixed h5dump regarding the display of group comments. PVN + 2007/03/13 + - Fixed h5dump regarding the display of hardlinks pointing + to the root group. PVN 2007/03/13 + - Fixed h5diff percentage option -p. PVN 2007/03/05 + - Fixed h5dump that caused array indices greater than 2 ^32-1 + not to be printed correctly - PVN 2007/2/19 + - Fixed h5dump to print attributes data in ASCII if -r option is used. + AKC - 2004/11/18 + - Fixed space utilization reported in h5ls to correct error in formula + used. QAK - 2004/10/22 + - Fixed h5redeploy which sometimes complain too many argument for the + test command. (The complain did not hinder the h5redploy to + proceed correctly.) AKC - 2003/11/03 + - Fixed a segmentation fault of h5diff when percentage option is used. + AKC - 2003/08/27 + - Switched away from tools using internal "fixtype" function(s) to use + H5Tget_native_type() internally. QAK - 2003/08/25 + + + Documentation + ------------- + + + F90 APIs + -------- + - h5pget_driver_f was returning information that could not be + interpreted by fortran application program; fixed. EIP - 2005/04/10 + + +Platforms Tested +================ +Platforms marked with * were not tested for hdf5-1.8.0-rc* release +(This information is somewhat out of date and may be inaccurate. It will be + updated for a later 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 +* AIX 5.3 (32/64 bit) xlc 7.0.0.8 + xlC 7.0.0.8 + xlf 09.01.0000.0007 +* Cray X1 water 3.0.35 Cray Standard C Version 5.4.0.7.4 + Cray Fortran 5.4.0.7.3 + Cray C++ 5.4.0.7.4 + 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 + +* HP-UX B.11.23 HP aC++/ANSI C B3910B A.06.00 + HP F90 v2.9.2 + HP aC++/ANSI C B3910B A.06.00 + 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, g95 (GCC 4.0.3) + (smirom) PGI 6.2-5 (pgcc, pgf90, pgCC) + Intel 9.1 (icc, iort, icpc) + Linux 2.6.5-7.252.1-rtgfx #1 + SMP ia64 Intel(R) C++ Version 9.0 + (cobalt) Intel(R) Fortran Itanium(R) Version 9.0 + 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 i86pc Sun C 5.7 + Sun Fortran 95 8.1 + Sun C++ 5.7 + 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 + + +Supported Configuration Features Summary +(This table was not modified for 1.8.0-rc* release; for information contact help@hdfgroup.org) +======================================== + + 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 +Cray XT3 (16) n n n n n n +AIX-5.2 & 5.3 32-bit y y y y y y +AIX-5.2 & 5.3 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 +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 +HPUX11.00 y n y x n +HPUX11.23-32bit y n n y n +HPUX11.23-64bit y dna n y n +Cray XT3 (16) n n n n n +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 +Mac OS X 10.4 PowerPC +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 discovered two problems when running collective IO parallel HDF5 tests + with chunking storage on 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 wrong derived data type and corrupt data + may be generated. + This only happens when turning on collective IO with chunking storage + with some complex selections. We haven't found these problems on other + MPI-IO compilers. If you encounter these problems, you may use Independent IO + instead. + + 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. Higher level of optimization + causes failures in several HDF5 library tests. +* For HPUX 11.23 many tools tests failed for 64-bit version when linked to the + shared libraries (tested for 1.8.0-beta2) +* For SNL, Red Storm: only paralle HDF5 is supported. The serial tests pass + and the parallel tests also pass with lots of non-fatal error messages. +* For LLNL, uP: both serial and parallel pass. Zeus: serial passes but + parallel fails with a known proglem in MPI. ubgl: serial passes but + parallel fails. +* on SUN 5.10 C++ test 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, Scaleoffset filter isn't supported. The filter cannot be applied to + HDF5 data generated on VAX. Scaleoffset filter only supports 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, we found that if more than two processes + contribute no IO and the application asks to do IO with collective, we found + that when using 4 processors, a simple collective write will be hung + sometimes. This can be verified with t_mpi test under testpar. +* On IRIX6.5, when C compiler version >7.4, the complicate MPI derived data type + code will work. However, the user should be aware to enlarge MPI_TYPE_MAX environment + variable to some certian value in order to use collective irregular selection code. + For example, the current parallel HDF5 test needs to enlarge MPI_TYPE_MAX to + 200,000 to make the test pass. +* The dataset created or rewritten with the v1.6.3 library or after can't + be read with the v1.6.2 library or before when 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 wasn't 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 is no + longer the same as before on little-endian system. The library release + after 1.6.4 can still read the dataset created or rewritten with the library + of v1.6.2 or before. SLU - 2005/6/30 +* For the version 6(6.02 and 6.04) of Portland Group compiler on AMD Opteron + processor, there's a bug in the compiler for optimization(-O2). The library + failed in several tests but all related to 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". HDF5 does not use sockets (except for stream-VFD). This is + due to problems of the poe command trying to set up the debug socket. + Check if there are many old /tmp/s.pedb.* staying around. These are + sockets used by the poe command and left behind due to failed commands. + Ask your system administrator to clean them out. Lastly, request IBM + to provide a mean to run poe without the debug socket. + +* The C++ library's tests fails when compiling with PGI C++ compiler. The + workaround until the problem is correctly handled is to use the + flag "--instantiate=local" prior to the configure and build steps, as: + setenv CXX "pgCC --instantiate=local" for pgCC 5.02 and higher + + +* The stream-vfd test uses ip port 10007 for testing. If another + application is already using that port address, the test will hang + indefinitely and has to be terminated by the kill command. To try the + test again, change the port address in test/stream_test.c to one not + being used in the host. + +* 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 don't use this option on these platforms + during configuration. + +* With the gcc 2.95.2 compiler, HDF 5 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 Stream VFD was not tested yet under Windows. It is not supported + in the TFLOPS machine. + + +* The ./dsets tests failed in 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. + +* Certain platforms give false negatives when testing h5ls: + - Cray J90 and Cray T90IEEE give errors during testing when displaying + some floating-point values. These are benign differences due to + the different precision in the values displayed and h5ls appears to + be dumping floating-point numbers correctly. + +* Before building HDF5 F90 Library from source on Crays + replace H5Aff.f90, H5Dff.f90 and H5Pff.f90 files in the fortran/src + subdirectory in the top level directory with the Cray-specific files + from this site: + ftp://www.hdfgroup.uiuc.edu/pub/outgoing/hdf5/hdf5-1.8.0-pre/PATCH/ + +* 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 HDF5 fortran library, + compilation may fail for fortranlib_test.f90, fflush1.f90 and fflush2.f90 + complaining about exit subroutine. Comment out the line + IF (total_error .ne. 0) CALL exit (total_error) + +* On IA32 and IA64 systems, if you use a compiler other than GCC (such as + Intel's ecc or icc compilers), you will need to modify the generated + "libtool" program after configuration is finished. On or around line 104 of + the libtool file, there are lines which look like: + + # How to pass a linker flag through the compiler. + wl="" + + change these lines to this: + + # How to pass a linker flag through the compiler. + wl="-Wl," + + UPDATE: This is now done automatically by the configure script. However, if + you still experience a problem, you may want to check this line in the + libtool file and make sure that it has the correct value. + +* Information about building with PGI and Intel compilers is available in + INSTALL file sections 5.7 and 5.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 HDF 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 h5copy tool + +%%%%1.6.7%%%% Release Information for hdf5-1.6.7 (31/January/08) + +HDF5 version 1.6.7 released on Thu Jan 31 21:09:10 CST 2008 +================================================================================ + +INTRODUCTION +============ +This document describes the differences between HDF5-1.6.6 and HDF5-1.6.7 +It contains information on the platforms tested and known problems in +HDF5-1.6.7. For more details, check the HISTORY.txt file in the HDF5 source. + +HDF5 documentation can be found in the distributed release source code +in the subdirectory doc/html/ or on the THG (The HDF Group) FTP server: + + ftp://ftp.hdfgroup.org/HDF5/docs/ + +Documentation for the current release in the HDF5 Release 1.6.x series is +also on the HDF web site: + + http://hdfgroup.org/HDF5/doc1.6/ + +For more information, see the HDF5 home page: + + http://hdfgroup.org/products/hdf5/ + +If you have any questions or comments, please see the HDF Support page +for a list of available resources: + + http://hdfgroup.org/services/support.html + + +CONTENTS +======== +- New Features +- Support for New Platforms, Languages and Compilers +- Bug Fixes since HDF5-1.6.6 +- Documentation +- Platforms Tested +- Supported Configuration Features Summary +- Known Problems + + +New Features +============ + Configuration: + ------------------------- + '--enable-stream-vfd' and '--disable-stream-vfd' are no longer valid + configure options because the stream I/O driver has ben removed from + the distribution. + + Source code distribution + ======================== + Library: + -------- + The stream I/O driver is not included with the HDF5 Library in this + release. The source code files hdf5/src/H5FDstream.c and + hdf5/src/H5FDstream.h and the driver ENUM value H5FD_STREAM have been + removed. + + Parallel Library: + ----------------- + None + + Tools: + ------ + None + + F90 API: + -------- + None + + C++ API: + -------- + None + + +Support for New Platforms, Languages and Compilers +================================================== + +No new platorms, languages, or compilers are supported in this release. + + +Bug Fixes since HDF5-1.6.6 Release +================================== + + Library + ------- + - H5Iget_name could not be used with an object identifier returned + by H5Rdereference; the function would not be able to determine + a valid object name. It has been fixed. SLU - 2008/1/30 + - Changed library's behavior for reading files that might have + corrupted object header information from a previous (buggy) + version of the library. By default, the library now rebuilds the + correct object header information instead of issuing an error. + Previous "strict" file format interpretation can be enabled with + the "--enable-strict-format-checks" configure option. + QAK - 2008/01/13 + - Fixed bug in H5Epush() which was clearing the error stack before + pushing new error value. QAK - 2007/08/23 + - Fixed bug in H5Ewalk() which was not passing back the return value + from error stack walking callback. QAK - 2007/08/23 + + + Configuration + ------------- + None + + + Performance + ------------- + None + + + Tools + ----- + None + + + Documentation + ------------- + None + + + F90 API + ------- + None + + + C++ API + ------- + None + + +Documentation +============= + HDF5 documentation can be found in the distributed release source + code in the subdirectory doc/html/ (start with index.html) or on the + THG (The HDF Group) FTP server: + + ftp://ftp.hdfgroup.org/HDF5/docs/ + + Online documentation for the current release in the HDF5 Release 1.6.x + series can be found on the THG web site: + + http://hdfgroup.org/HDF5/doc1.6/ + + A listing of interface changes from release to release can be found + in the document "HDF5 Software Changes from Release to Release": + + http://hdfgroup.org/HDF5/doc1.6/ADGuide/Changes.html + + Since the stream I/O driver is not included in this release, the + functions H5Pset_fapl_stream and H5Pget_fapl_stream and the stream + ENUM value H5FD_STREAM have been removed from the documentation. + + +Platforms Tested +================ + + AIX 5.2 (32/64 bit) xlc 8.0.0.11 + (datastar) xlC 8.0 + xlf 10.01.0000.0002 + + FreeBSD 6.2 (32- and 64-bit) gcc and g++3.4.6 + (duty and liberty) gcc and g++ 4.2.1 + + IRIX64 6.5 MIPSpro cc 7.4.4m + (ucar mop1 64 & n32) F90 MIPSpro 7.4.4m (64 only) + C++ MIPSpro cc 7.4.4m + + Linux 2.4.21-47.ELsmp #1 SMP gcc 3.2.3 + i686 i386 GNU/Linux + (osage) + + Linux 2.6.9-42.0.10.ELsmp #1 gcc (GCC) 3.4.6 + SMP i686 i386 G95 (GCC 4.0.3 (g95 0.91!) April 18 2007) + (kagiso) PGI C, Fortran, C++ 7.0-7 32-bit + Intel(R) C Compiler for 32-bit + applications, Version 9.1 + Intel(R) C++ Compiler for 32-bit + applications, Version 9.1 + Intel(R) Fortran Compiler for 32-bit + applications, Version 9.1 + Absoft 32-bit Fortran 95 10.0.4 + MPICH mpich2-1.0.6p1 compiled with + gcc 4.2.1 and G95 (GCC 4.0.3 (g95 0.91!) + + Linux 2.6.16.46-0.12-debug #1 Intel(R) C++ Version 10.0.025 + SMP ia64 GNU/Linux Intel(R) Fortran Itanium(R) Version 10.0.025 + (ucar hir1) + + Linux 2.6.16.46-0.14-smp #1 Intel(R) C++ for Intel(R) EM64T Ver. 9.1.037 + SMP x86_64 GNU/Linux Intel(R) Fortran Intel(R) EM64T Ver. 9.1.031 + (smirom) PGI C, Fortran, C++ Version 7.0-7 + for 64-bit target on x86-64 + tested for both 32- and 64-bit binaries + + Linux 2.6.5-7.287.3-sn2 #1 Intel(R) C++ Version 9.0 + Altix SMP ia64 Intel(R) Fortran Itanium(R) Version 9.0 + (cobalt) SGI MPI + + SunOS 5.8 32- and 64-bit Sun WorkShop 6 update 2 C 5.3 + (sol) Sun WorkShop 6 update 2 Fortran 95 6.2 + Sun WorkShop 6 update 2 C++ 5.3 + + 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.4.21-32.0.1.ELsmp-perfctr-lustre + (tungsten) Intel(R) C++ Version 9.0 + Intel(R) Fortran Compiler Version 9.0 + PGI C Version 6.0-5 + PGI C++ Version 6.0-5 + PGI Fortran Version 6.0-5 + gcc (GCC) 3.2.2 (Red Hat Linux 3.2.2-5) + + Xeon Linux 2.6.9-42.0.10.EL_lustre-1.4.10.1smp + (abe) Intel(R) C++ Version 10.0 + Intel(R) Fortran Compiler Version 10.0 + Open MPI 1.2.2 + + 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 + Intel(R) Fortran Compiler Version 8.1 + mpich-gm-1.2.6..14-intel-r2 + + Windows XP Visual Studio 6.0 + Visual Studio .NET (with Intel Fortran 9.1) + Visual Studio 2005 (with Intel Fortran 9.1) + cygwin (gcc 3.4.4) + + Windows Vista Visual studio 2005 + MAC OS X Intel Darwin 8.10.1 + i686-apple-darwin8-gcc-4.0.1 (GCC) 4.0.1 + g95 0.91 + + +Supported Configuration Features Summary +======================================== + +Key: y = Tested and supported + n = Not supported or not tested in this release + C = Cluster + W = Workstation + ( ) = Footnote appears below second table + +Platform C F90 F90 C++ zlib SZIP + parallel parallel +Solaris2.8 32-bit n y n y n y +Solaris2.8 64-bit n y n n y y +Solaris2.10 32-bit n y n y y y +Solaris2.10 64-bit n y n n y y +IRIX64_6.5 32-bit n n n n y y +IRIX64_6.5 64-bit n y n n y y +WinXP Visual Studio 6.0 n n n y y y +WinXP CYGWIN n n n y y y +WinXP 2005 n y n y y y +WinXP .Net n y n y y y +WinVista 2005 n n n y y y +Mac OS X 10.4.10 n y n y y y +AIX-5.2 & 5.3 32- and 64-bit y y y y y y +FreeBSD 6.2 32- and 64-bit n n n y y y +RedHat Linux 2.4.21 W n n n n y n +RedHat Linux 2.6.9-42 i686 GNU (1) W y y y y y y +RedHat Linux 2.6.9-42 i686 Intel W n y n y y n +RedHat Linux 2.6.9-42 i686 PGI W n y n y y n +SuSE Linux 2.6.16 x86_64 GNU (1) W y y n 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 n +RHEL 4 Linux 2.6.9 Xeon Lustre C n y n y y y +RedHat Linux 2.4 Xeon Lustre C n y n y y n +SuSE Linux 2.4 ia64 C y y y y y y +SuSe Linux 2.6.5 SGI Altix ia64 n y n y y y + + +Platform Shared static- Thread- + libraries(4) exec safe +Solaris2.8 32- and 64-bit y n y +Solaris2.10 32- and 64-bit y n y +IRIX64_6.5 32-bit y n y +IRIX64_6.5 64-bit y n y +WinXP Visual Studio 6.0 y n n +WinXP CYGWIN y n n +WinXP 2005 y n n +WinXP .Net y n n +WinVista 2005 y n n +Mac OS X 10.4.10 y n n +AIX-5.2 & 5.3 32- and 64-bit n n n +FreeBSD 6.2 32- and 64-bit y n n +RedHat Linux 2.4.21 W y n n +SuSE Linux 2.6.9-42 i686 GNU (1) W y n y +SuSE Linux 2.6.9-42 i686 Intel W y n n +SuSE Linux 2.6.9-42 i686 PGI W n n n +SuSE Linux 2.6.16 x86_64 GNU (1) W y n y +SuSE Linux 2.6.16 x86_64 Intel W y n n +SuSE Linux 2.6.16 x86_64 PGI W n n n +RHEL 4 Linux 2.6.9 Xeon Lustre C y n n +RedHat Linux 2.4 Xeon Lustre C y n n +SuSE Linux 2.4 ia64 C y n n +SuSe Linux 2.6.5 SGI Altix ia64 n n n + +Compiler versions for each platform are listed in the "Platforms Tested" +table found elsewhere in this file (RELEASE.txt). Unless otherwise noted, +compilers used are the system compilers. + +Footnotes: +(1) Fortran compiled with g95. + + +Known Problems +============== +* We discovered two problems when running collective IO parallel HDF5 tests + with chunking storage with 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. + This only happens when turning on collective IO with chunking storage + with some complex selections. We haven't found these problems on other + MPI-IO compilers. If you encounter these problems, you may use Independent + IO instead. + + To avoid this problem, 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 + +* QSC (an HP alpha-based OSF1 cluster) does not create h5pfc correctly. It + does not include the -lmpi properly. This will be fixed in the next + release. AKC - 2007/08/07. + +* On IRIX64 6.5 (UCAR SGI mop1), when testing HDF5 tools with an HDF5 shared + library, especially for h5repacktst and h52gifgentst, the following (or a + similar) error message may appear: + "523648:lt-h5repacktst: rld: Fatal Error: Cannot Successfully map soname + 'libh5test.so.1' under any of the filenames .......(bunch of directories) + " + And the testing will fail. + + We believe this is a libtool problem. One way to get rid of this is to + add the paths of libh5test.so.1 and libh5.so.1 to the shared library path. + + For 32-bit: + You may do this, under csh: + setenv LD_LIBRARYN32_PATH .......(existing paths):[full path of HDF5 + directory/test/.libs]:[full path of HDF5 directory/src/.libs] + + For 64-bit: + setenv LD_LIBRARY64_PATH ......(existing paths):[full path of HDF5 + directory/test/.libs]:[full path of HDF5 directory/src/.libs] + + NOTE: This problem ONLY affects the testing of the HDF5 library when you + build from source. It won't affect any applications that would like to link + with the HDF5 shared library since the shared library path needs to be set + anyway. KY - 2007/8/2 + +* QSC (an HP alpha-based OSF1 cluster) failed the testpar/testphdf5 sub-test + "calloc". All other tests passed. This indicates that a dataset using + chunked storage created by serial HDF5 may not work properly with parallel + HDF5. The calloc test can be skipped by running "prun ... testphdf5 -x + calloc". AKC - 2007/7/12. + +* The Intel C Compiler for the Linux x86_64 platform (EM64T-based, v8.1) has + an optimization error in the datatypes conversion code. Before running + configure, edit the file config/intel-flags by changing the setting of + PROD_CFLAGS from -O3 to -O0. Then run configure. AKC - 2005/11/10. + +* When testing parallel HDF5 with the C compiler version MIPSpro 7.4.3 on IRIX + 6.5, set the environment variable MPI_TYPE_MAX to be a bigger number, for + example 120000, in order to pass the complicated collective IO tests inside + the parallel HDF5 library. This is not a problem inside the parallel HDF5 + library. You can always set a bigger number on your system. KY - 2005/10/6 + +* A contiguous or chunked dataset created by a sequential version of HDF5 + might not be able to be modified with a parallel version of the library. + Use the H5Pset_alloc_time function with H5D_ALLOC_TIME_EARLY to set up the + dataset creation property list to avoid the problem. EIP - 2005/09/09 + +* A dataset created or rewritten with the v1.6.3 library or after can't + be read with the v1.6.2 library or before when Fletcher32 EDC (a 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 wasn't 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 is no + longer the same as before on little-endian system. HDF5 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/7/8 + +* For version 6 (6.02 and 6.04) of the Portland Group compiler on AMD Opteron + processor, there's 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. + +* test/big fails sometimes with the message "Possible overlap with another + region." The test selects regions randomly, and this error occurs when + two regions overlap each other; it is a bug in the test and not in + HDF5. Since the error is triggered by a random situation, it will + usually disappear if the test is re-run. + +* Newer SGI MIPSpro compilers (version 7.4.x) support C99 features but + have a "guard" statement in stdint.h that will #error and skip the rest + of the header file if the C99 option is not used explicitly. Hardsetting + $CC to c99 will resolve the problem. AKC - 2004/12/13 + +* 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 also fail with messages like "The socket name is already + in use". HDF5 does not use sockets. This is due to problems of the + poe command trying to set up the debug socket. Check 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. Ask your system + administrator to clean them out. Lastly, request IBM to provide a means + to run poe without the debug socket. + +* The h5dump tests may fail to match the expected output on some platforms + (e.g. parallel jobs, Windows) where the error messages directed to + "stderr" do not appear in the "right order" with output from stdout. + This is not an error. + +* 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 the IBM SP2 platform for the serial mode. The parallel mode works fine + with this option. + + The --enable-static-exec configure flag also fails to correctly compile + on the HPUX 11.00. + + It is suggested that you don't use this option on these platforms + during configuration. + +* Use the --disable-shared configure flag if building with an Absoft Fortran + compiler. + +* Information about building with PGI and Intel compilers is available in + INSTALL file sections 5.7 and 5.8. + +* In LANL QSC, the new cc compiler has problems converting small values of + long long (absolute values less than 1**-308) to double. This triggers + the test/dtypes to report failure in the following test: + Testing random sw long double -> double conversions + If -ieee is used, the converted doubles spread over the range 0.0 to + 10**-308. If -ieee is not used, the converted double values are mostly + 0.0, but occasionally appear as 10**-308. This has been reported to the + system staff. + + All other tests have passed. + +* 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 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 scripts 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. JM - 2004/9/15 + +%%%%1.6.6%%%% Release Information for hdf5-1.6.6 (16/August/08) + +HDF5 version 1.6.6 released on Thu Aug 16 11:17:10 CDT 2007 +================================================================================ + +INTRODUCTION +============ +This document describes the differences between HDF5-1.6.5 and +HDF5-1.6.6 It contains information on the platforms tested and +known problems in HDF5-1.6.6. For more details, check the HISTORY.txt +file in the HDF5 source. + +HDF5 documentation can be found in the distributed release source +code in the subdirectory doc/html/ or on the THG (The HDF Group) +ftp server (ftp.hdfgroup.org) in the directory: + + /HDF5/docs/ + +Documentation for the current release is also on the HDF web site: + + http://hdfgroup.org/HDF5/doc/ + +For more information, see the HDF5 home page at: + + http://hdfgroup.org/HDF5/ + +If you have any questions or comments, please send them to: + + help@hdfgroup.org + + +CONTENTS +======== +- New Features +- Support for New Platforms, Languages and Compilers +- Bug Fixes since HDF5-1.6.5 +- Documentation +- Platforms Tested +- Supported Configuration Features Summary +- Known Problems + + +New Features +============ + Configuration: + ------------------------- + - HDF5 now uses autoconf 2.61 to generate configure. MAM - 2007/7/25. + + Source code distribution + ======================== + Library: + -------- + - None + + Parallel Library: + ----------------- + - None + + Tools: + ------ + - h52gif and gif2h5: Both these tools were revised to include High + Level Image API support. Tests were added to /hl/tools/gif2h5. + PVN - 2007/04/13 + - h5dump: Added support for double long type H5T_NATIVE_LDOUBLE. + PVN - 2007/03/13 + - h5dump: Added support for binary output; see usage. PVN 2007/03/13 + - h5repack: Added support for reading and writing by hyperslabs for + large files. PVN - 2007/03/01 + - h5repack: A new option allows the copy to use the source file type + (default) instead of the previous conversion to native type. + PVN - 2007/03/01 + - h5repack: Added output of the percentage of compression achieved. + PVN - 2007/03/01 + - h5diff: Added support for comparing dataset regions. PVN - + 2007/02/20 + - h5diff: Added support for reading and comparing by hyperslabs for + large files. PVN - 2007/02/20 + - h5diff: Added printing of dataset dimensions along with dataset + name. + PVN - 2007/02/19 + + F90 API: + -------- + - None + + C++ API: + -------- + - Added support for Szip: DSetCreatPropList::setSzip - BMR 2007/01/24 + + +Support for New Platforms, Languages and Compilers +================================================== + - Added support for MAC Intel (Darwin 8.8.2) (gcc 4.0.1 and g95 0.91) + EIP - 2007/02/13 + - Added support for GNU C compiler version 4.2.1 for FreeBSD 6.2 + (32- and 64-bit) + + +Bug Fixes since HDF5-1.6.5 Release +================================== + + Library + ------- + - Fixed several bugs with writing fill values for datasets that have + a variable-length datatype or component datatype. QAK - +2007/06/19 + - STDIO driver didn't support files bigger than 2GB because the OFFSET + parameter of fseek is of type LONG INT, not big enough for big + files. Use fseeko instead for big files if it's available on the + system. SLU - 2007/4/5 + - Relaxed restrictions on attribute operations to allow a file ID to + be used as the "location ID". If a file ID is used, the attribute + operation will occur on the root group of the file. + QAK - 2007/02/09 + - Fixed a bug in H5Sselect_valid() that caused an incorrect value to + be returned (0) instead of FAIL on error conditions such as the + selection or extent not being defined. CMC - 2007/01/05 + - Fixed potential file corruption bug which could overwrite a portion + of an object's header when an attribute was renamed. If the new + name for the attribute was longer than the old name, it was +possible + that the attribute would grow enough to overwrite another message + in the object's header. QAK - 2007/01/02 + - Fixed file corruption bug which could write an incorrect number of + messages to an object's header under certain circumstances. + Generally, the sequence of actions to generate this bug looks + like this: + - Create an object. + - Close the file. + - Re-open the file. + - Add 2 (or more) attributes to the object. + - Close the file. + - Re-open the file. + - Delete one of the attributes on the object. + - Add a smaller attribute to the object. + - Delete the smaller atttribute on the object. + - Add a larger attribute on the object. + + After this, the number of header messages stored for the object + will be off by one. Other sequences of modifying attributes on an + object could also trigger this bug. If you are opening an + object and the bottom few messages of the HDF5 error stack + resembles the following, the object has been affected by this bug: + + #007: ../../hdf5_v1.6/src/H5C.c line 3887 in H5C_load_entry(): +unable to load entry + major(08): Meta data cache layer + minor(40): Unable to load metadata into cache + #008: ../../hdf5_v1.6/src/H5Ocache.c line 332 in H5O_load(): +corrupt object header - too few messages + major(12): Object header layer + minor(40): Unable to load metadata into cache + + Specifically, "corrupt object header" is the best string to search + for in the HDF5 error stack output. + + If your files have been affected by this bug, or you are concerned + that your files might have been, please contact the HDF Helpdesk + at help@hdfgroup.org for a tool to detect and repair files + affected by this problem. QAK - 2006/6/16 + + - Fixed various problems with retrieving names of objects, especially + with mounted files. QAK - 2005/12/25 + + Configuration + ------------- + - Changed to default to --disable-shared if parallel is enabled. + AKC - 2007/5/12 + - Corrected a coding error in configure when it tries to locate the + needed MPI and MPI-IO library for the fortran interface. + AKC - 007/5/9. + - Changed default fortran compiler to g95 when gcc is used. + AKC - 007/2/17. + - Configure can now use any tr command. No more need for + defining the variable TR, nor is it supported. AKC - 2006/05/20 + + Performance + ------------- + - None + + Tools + ----- + - Fixed a bug in h5dump regarding the display of named datatypes + attributes. PVN - 2007/03/13 + - Fixed a bug in h5dump regarding the display of group comments. + PVN - 2007/03/13 + - Fixed a bug in h5dump regarding the display of hardlinks pointing + to the root group. PVN - 2007/03/13 + - Fixed a bug in the h5diff percentage option -p. PVN - 2007/03/05 + - Fixed a bug in h5dump that caused array indices greater than 2^32-1 + not to be printed correctly. PVN - 2007/2/19 + + Documentation + ------------- + - Corrected errors and extended the descriptions in Reference Manual + entries for several functions. + + F90 API + ------- + - None + + C++ API + ------- + - Changed + StrType::StrType(const size_t& size); + to + StrType::StrType(const int dummy, const size_t& size); + because the first one clashed with + StrType::StrType(const hid_t existing_id); - BMR 2007/05/03 + - Wrappers of H5Rcreate had incorrect prototypes. Added these + overloaded functions: + IdComponent::reference(void* ref, const char* name, +DataSpace& + dataspace, H5R_type_t ref_type = H5R_DATASET_REGION) + IdComponent::void reference(void* ref, const char* name) + IdComponent::reference(void* ref, const H5std_string& name) + and will remove these incorrect member functions: + DataSet::Reference + DataType::Reference + Group::Reference + H5File::Reference + - Added wrappers for H5Rdereference as constructors: + DataSet(IdComponent& obj, void* ref); + Group(IdComponent& obj, void* ref); + DataType(IdComponent& obj, void* ref); + + +Documentation +============= + + HDF5 documentation can be found in the distributed release source + code in the subdirectory doc/html/ (start with index.html) or on the + THG (The HDF Group) ftp server (ftp.hdfgroup.org) in the directory: + + /HDF5/docs/ + + Online documentation for the current release can be found on the THG + web site: + + http://hdfgroup.org/HDF5/doc/ + + +Platforms Tested +================ + + AIX 5.2 (32/64 bit) xlc 6.0.0.8 + (datastar) xlC 6.0.0.9 + xlf 8.1.1.7 + mpcc_r 6.0.0.8 + mpxlf_r 8.1.1.7 + + AIX 5.3 (32/64 bit) xlc 7.0.0.0 + (copper) xlC 7.0. + xlf 9.1.0.3 + + FreeBSD 6.2 (32- and 64-bit) gcc and g++3.4.6 + (duty and liberty) gcc and g++ 4.2.1 + + HP-UX B.11.23 HP aC++/ANSI C B3910B A.06.02 + (sirius) HP F90 v3.1 (32-bit only) + HP aC++/ANSI C B3910B A.06.02 + + IRIX64 6.5 MIPSpro cc 7.4.4m + (ucar mop1 64 & n32) F90 MIPSpro 7.4.4m (64 only) + C++ MIPSpro cc 7.4.4m + + Linux 2.4.21-47.ELsmp #1 SMP gcc 3.2.3 + i686 i386 GNU/Linux + (osage) + + Linux 2.6.9-42.0.10.ELsmp #1 gcc (GCC) 3.4.6 + SMP i686 i386 G95 (GCC 4.0.3 (g95 0.91!) Nov 21 2006) + (kagiso) PGI C, Fortran, C++ 6.2-5 32-bit + icc (ICC) 9.1 + Intel(R) C++ Compiler for 32-bit + applications, Version 9.1 + Intel(R) Fortran Compiler for 32-bit + applications, Version 9.1 + Absoft 32-bit Fortran 95 10.0.4 + MPICH mpich2-1.0.4p1 compiled with + gcc 3.4.6 and G95 (GCC 4.0.3 (g95 0.91!) + + Linux 2.6.16.46-0.12-debug #1 + SMP ia64 GNU/Linux Intel(R) C++ Version 10.0.025 + (ucar hir1) Intel(R) Fortran Itanium(R) Version 10.0.025 + + Linux 2.6.16.46-0.14-smp #1 Intel(R) C++ for Intel(R) EM64T Ver. 9.1.037 + SMP x86_64 GNU/Linux Intel(R) Fortran Intel(R) EM64T Ver. 9.1.031 + (smirom) PGI C, Fortran, C++ Version 6.2-5 + for 64-bit target on x86-64 + tested for both 32- and 64-bit binaries + + Linux 2.6.5-7.283-rtgfx Altix + SMP ia64 Intel(R) C++ Version 9.0 + (cobalt) Intel(R) Fortran Itanium(R) Version 9.0 + SGI MPI + + OSF1 V5.1 (QSC) Compaq C V6.5-011 + (See "Known Problems.") HP Fortran V5.5A-3548 + Compaq C++ V6.5-036 + MPIX200_64_r13.4 + + SunOS 5.8 32- and 64-bit Sun WorkShop 6 update 2 C 5.3 + (sol) Sun WorkShop 6 update 2 Fortran 95 6.2 + Sun WorkShop 6 update 2 C++ 5.3 + + 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.4.21-32.0.1.ELsmp-perfctr-lustre + (tungsten) Intel(R) C++ Version 9.0 + Intel(R) Fortran Compiler Version 9.0 + PGI C Version 6.0 + PGI C++ Version 6.0 + PGI Fortran Version 6.0 + gcc (GCC) 3.2.2 (Red Hat Linux 3.2.2-5) + + Xeon Linux 2.6.9-42.0.10.EL_lustre-1.4.10.1smp + (abe) Intel(R) C++ Version 10.0 + Intel(R) Fortran Compiler Version 10.0 + Open MPI 1.2.2 + + IA-64 Linux 2.4.21.SuSE_292.til1 + ia64 gcc (GCC) 3.2.2 + (NCSA tg-login) Intel(R) C++ Version 8.0 + Intel(R) Fortran Compiler Version 8.0 + mpich-gm-1.2.5..10-intel-r2 + + Windows XP Visual Studio 6.0 + Visual Studio .NET (with Intel Fortran 9.0) + Visual Studio 2005 (with Intel Fortran 9.0) + cygwin (gcc 3.4.4) + + MAC OS X Intel Darwin 8.10.1 + i686-apple-darwin8-gcc-4.0.1 (GCC) 4.0.1 + g95 0.91 + + +Supported Configuration Features Summary +======================================== + +Key: y = Tested and supported + n = Not supported or not tested in this release + C = Cluster + W = Workstation + ( ) = Footnote appears below second table + +Platform C F90 F90 C++ zlib SZIP + parallel parallel +Solaris2.8 32- and 64-bit n y n y y y +Solaris2.10 32- and 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 n n y y +HPUX11.23-32bit n y n y y y +HPUX11.23-64bit n n n y y y +WinXP Visual Studio 6.0 n n n y y y +WinXP CYGWIN n n n y y y +WinXP 2005 n y n y y y +WinXP .Net n y n y y y +Mac OS X 10.4.10 n y n y y y +AIX-5.2 & 5.3 32- and 64-bit y y y y y y +FreeBSD 6.2 32- and 64-bit n n n y y y +RedHat Linux 2.4.21 W n n n y y y +SuSE Linux 2.6.9-42 i686 GNU (1) W y y y y y y +SuSE Linux 2.6.9-42 i686 Intel W n y n y y y +SuSE Linux 2.6.9-42 i686 PGI W n y n y y y +SuSE Linux 2.6.16 x86_64 GNU (1) W y y y y y y +SuSE Linux 2.6.16 x86_64 Intel W n y n y y y +SuSE Linux 2.6.16 x86_64 PGI W n y n y y y +RHEL 4 Linux 2.6.9 Xeon Lustre C y y y y y y +RedHat Linux 2.4 Xeon Lustre C n y n y y y +SuSE Linux 2.4 ia64 C y y y y y y +SuSe Linux 2.6.16 SGI Altix ia64 n y n y y y +SuSe Linux 2.6.5 SGI Altix ia64 n y n y y y +OSF1 v5.1 y y y y y n + + +Platform Shared static- Thread- STREAM- + libraries(4) exec safe VFD +Solaris2.8 32- and 64-bit y n y y +Solaris2.10 32- and 64-bit y n y y +IRIX64_6.5 32-bit y n y y +IRIX64_6.5 64-bit y n y y +HPUX11.23-32bit y (3) n n y +HPUX11.23-64bit y (3) n n y +WinXP Visual Studio 6.0 y n n n +WinXP CYGWIN y n n n +WinXP 2005 y n n n +WinXP .Net y n n n +Mac OS X 10.4.10 y n n y +AIX-5.2 & 5.3 32- and 64-bit n n n y +FreeBSD 6.2 32- and 64-bit y n n y +RedHat Linux 2.4.21 W y n n y +SuSE Linux 2.6.9-42 i686 GNU (1) W y n y y +SuSE Linux 2.6.9-42 i686 Intel W y n n y +SuSE Linux 2.6.9-42 i686 PGI W n n n y +SuSE Linux 2.6.16 x86_64 GNU (1) W y n n y +SuSE Linux 2.6.16 x86_64 Intel W y n n y +SuSE Linux 2.6.16 x86_64 PGI W n n n y +RHEL 4 Linux 2.6.9 Xeon Lustre C y n n y +RedHat Linux 2.4 Xeon Lustre C y n n y +SuSE Linux 2.4 ia64 C y n n y +SuSe Linux 2.6.16 SGI Altix ia64 n n n y +SuSe Linux 2.6.5 SGI Altix ia64 n n n y +OSF1 v5.1 n n n y + +Compiler versions for each platform are listed in the "Platforms Tested" +table found elsewhere in this file (RELEASE.txt). Unless otherwise noted, +compilers used are the system compilers. + +Footnotes: +(1) Fortran compiled with g95. +(2) In most cases, shared libraries are provided only for the C library, + except on Windows where they are provided for C, C++, and Fortran. +(3) C++ works only with static libraries. + + +Known Problems +============== +* QSC (an HP alpha-based OSF1 cluster) does not create h5pfc correctly. It + does not include the -lmpi properly. This will be fixed in the next + release. AKC - 2007/08/07. + +* On IRIX64 6.5 (UCAR SGI mop1), when testing HDF5 tools with an HDF5 shared + library, especially for h5repacktst and h52gifgentst, the following (or + similar) error message may appear: + "523648:lt-h5repacktst: rld: Fatal Error: Cannot Successfully map soname + 'libh5test.so.1' under any of the filenames .......(bunch of directories) + " + And the testing will fail. + We believe this is a libtool problem. One way to get rid of this is to + add the paths of libh5test.so.1 and libh5.so.1 to the shared library path. + + For 32-bit: + You may do this, under csh: + setenv LD_LIBRARYN32_PATH .......(existing pathes):[full path of HDF5 + directory/test/.libs]:[full path of HDF5 directory/src/.libs] + + For 64-bit: + setenv LD_LIBRARY64_PATH ......(existing pathes):[full path of HDF5 + directory/test/.libs]:[full path of HDF5 directory/src/.libs] + + NOTE: This problem ONLY affects the testing of the HDF5 library when you + build from source. It won't affect any applications that would like to link + with the HDF5 shared library since the shared library path needs to be set + anyway. KY - 2007/8/2 + +* QSC (an HP alpha-based OSF1 cluster) failed the testpar/testphdf5 sub-test + "calloc". All other tests passed. This indicates that a dataset using + chunked storage created by serial HDF5 may not work properly with parallel + HDF5. The calloc test can be skipped by running "prun ... testphdf5 -x + calloc". AKC - 2007/7/12. + +* The Intel C Compiler for the Linux x86_64 platform (EM64T-based, v8.1) has + an optimization error in the datax types conversion code. Before running + configure, edit the file config/intel-flags by changing the setting of + PROD_CFLAGS from -O3 to -O0. Then run configure. AKC - 2005/11/10. + +* When testing parallel HDF5 with the C compiler version MIPSpro 7.4.3 on IRIX + 6.5, set the environment variable MPI_TYPE_MAX to be a bigger number, for + example 120000, in order to pass the complicated collective IO tests inside + the parallel HDF5 library. This is not a problem inside the parallel HDF5 + library. You can always set a bigger number on your system. KY - 2005/10/6 + +* A contiguous or chunked dataset created by a sequential version of HDF5 + might not be able to be modified with a parallel version of the library. + Use the H5Pset_alloc_time function with H5D_ALLOC_TIME_EARLY to set up the + dataset creation property list to avoid the problem. EIP - 2005/09/09 + +* The dataset created or rewritten with the v1.6.3 library or after can't + be read with the v1.6.2 library or before when Fletcher32 EDC (a 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 wasn't 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 is no + longer the same as before on little-endian system. The library release + after 1.6.4 can still read the dataset created or rewritten with the library + of v1.6.2 or before. SLU - 2005/7/8 + +* For version 6 (6.02 and 6.04) of the Portland Group compiler on AMD Opteron + processor, there's 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. + +* test/big fails sometimes with the message "Possible overlap with another + region." The test selects regions randomly, and this error occurs when + two regions overlap each other; it is a bug in the test and not in + HDF5. Since the error is triggered by a random situation, it will + usually disappear if the test is re-run. + +* Newer SGI MIPSpro compilers (version 7.4.x) support C99 features but + have a "guard" statement in stdint.h that will #error and skip the rest + of the header file if the C99 option is not used explicitly. Hardsetting + $CC to c99 will resolve the problem. AKC - 2004/12/13 + +* 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 also fail with messages like "The socket name is already + in use". HDF5 does not use sockets (except for stream-VFD). This is + due to problems of the poe command trying to set up the debug socket. + Check 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. + Ask your system administrator to clean them out. Lastly, request IBM + to provide a means to run poe without the debug socket. + +* The h5dump tests may fail to match the expected output on some platforms + (e.g. parallel jobs, Windows) where the error messages directed to + "stderr" do not appear in the "right order" with output from stdout. + This is not an error. + +* The stream-vfd test uses ip port 10007 for testing. If another + application is already using that port address, the test will hang + indefinitely and has to be terminated by the kill command. To try the + test again, change the port address in test/stream_test.c to one not + being used in the host. + +* 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 the IBM SP2 platform for the serial mode. The parallel mode works fine + with this option. + + The --enable-static-exec configure flag also fails to correctly compile + on the HPUX 11.00. + + It is suggested that you don't use this option on these platforms + during configuration. + +* The Stream VFD is not supported under Windows. + +* Use the --disable-shared configure flag if building with Absoft Fortran + compiler. + +* Information about building with PGI and Intel compilers is available in + INSTALL file sections 5.7 and 5.8. + +* In LANL QSC, the new cc compiler has problems converting small values of + long long (absolute values less than 1**-308) to double. This triggers + the test/dtypes to report failure in the following test: + Testing random sw long double -> double conversions + If -ieee is used, the converted doubles spread over the range 0.0 to + 10**-308. If -ieee is not used, the converted double values are mostly + 0.0, but occasionally appear as 10**-308. This has been reported to the + system staff. + + All other tests have passed. + +* 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 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 scripts 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. JM - 2004/9/15 + + +%%%%1.6.5%%%% Release Information for hdf5-1.6.5 (10/November/05) + + +HDF5 version 1.6.5 released on Thu Nov 10 18:17:53 CST 2005 +================================================================================ + +INTRODUCTION +============ +This document describes the differences between HDF5-1.6.4 and +HDF5-1.6.5. It contains information on the platforms tested and +known problems in HDF5-1.6.5. For more details, check the HISTORY.txt +file in the HDF5 source. + +The HDF5 documentation can be found on the NCSA ftp server +(ftp.ncsa.uiuc.edu) in the directory: + + /HDF/HDF5/docs/ + +Documentation for the current release is also on the HDF web site: + + http://hdf.ncsa.uiuc.edu/HDF5/doc/ + +For more information look at the HDF5 home page at: + + http://hdf.ncsa.uiuc.edu/HDF5/ + +If you have any questions or comments, please send them to: + + hdfhelp@ncsa.uiuc.edu + + +CONTENTS +======== +- New Features +- Support for New Platforms, Languages and Compilers +- Bug Fixes since HDF5-1.6.4 +- Documentation +- Platforms Tested +- Supported Configuration Features Summary +- Known Problems + + +New Features +============ + Configuration: + ------------------------- + - Added yodconfigure, a configure tool, that patches up the configure + file to allow configure to launch executable via the proper + launching command like "yod -sz 1". AKC - 2005/11/10 + - Configure now recognizes the TR variable as the location of the + tr utility. JML 2005/10/20 + + Source code distribution: + ------------------------- + - Added g95 as a testing "platform" informally. AKC - 2005/10/04. + - Added MD5 checksumming to snapshot releases. Releases will now + produce an .md5 file as well as a .tar archive. md5sum can be + used to verify the arvhice with the .md5 checksum. -JL 2005/09/06 + + Library: + -------- + - Added HSYS_ERROR which retrieves the system error message and pushes + it to the error stack. This provides more information regarding the + failed system call. AKC - 2005/08/04 + - Added H5F_OBJ_LOCAL flag to H5Fget_obj_count() & H5Fget_obj_ids(), to + allow querying for objects in a file that was opened with a particular + file ID, instead of all objects opened in the file with any file ID. + QAK - 2005/06/01 + + Parallel Library: + ----------------- + - Added mpich2 as a testing "platform" informally. AKC - 2005/10/04. + - HDF5 supports collective MPI-IO for irregular selection with HDF5 + dataset. Irregular selection is when users use API H5Sselect_hyperslab + more than once for the same dataset. + Currently, not all MPI-IO packages support the complicated + MPI derived datatypes used in the implementation of irregular + selections INSIDE HDF5. + 1) DEC 5.x wdoes not support complicated derived datatypes. + 2) For AIX 5.1: + If your poe version number is 3.2.0.20 or lower, + please edit powerpc-ibm-aix5.x in the directory hdf5/config/. + Find the line with + << hdf5_mpi_complex_derived_datatype_works >> + and UNCOMMENT this line before the configure. + check poe version with the following command: + lpp -l all | grep ppe.poe + 3) For Linux cluster,: + If mpich version is 1.2.5 or lower, collective irregular selection + IO is not supported; internally independent IO is used. + 4) For IRIX 6.5: + if C compiler version is 7.3 or lower, collective irregular + selection IO is not supported; internally independent IO is used. + 5) For platforms which internally used mpich: + If the mpich version is 1.2.5 or lower, please find the + corresponding config (in hdf5/config) file and add + hdf5_mpi_complex_derived_datatype_works='no' + at the end of the configuration file. For example, on the + NCSA SGI Altix, the internal mpich library is 1.2.5. So + hdf5_mpi_complex_derived_datatype_works='no' + should be added at the end of the config file ia64-linux-gnu. + KY - 2005/09/12 + + Tools: + ------ + - Removed obsolete pdb2hdf tool. JML - 2005/10/28 + - Sped up h5dump on files with large numbers of objects. + QAK - 2005/08/25 + + F90 API: + -------- + - Added missing h5tget_member_class_f function + EIP 2005/04/06 + C++ API: + -------- + - Added missing member functions: + H5::CompType::getMemberArrayType + H5::CompType::getMemberVarLenType + H5::AbstractDs::getArrayType + H5::AbstractDs::getVarLenType + H5::CommonFG::openArrayType + H5::CommonFG::openVarLenType + H5::PropList::copyProp -- this will replace the current + H5::PropList::copyProp in later releases due + to incorrect prototype. + BMR - 2005/07/27 + + +Support for New Platforms, Languages and Compilers +================================================== + - Added support for RedStorm platform (serial only.) AKC 2005/11/10 + - Added support for BG/L platform (serial only.) LA 2005/11/10 + - Added support for HPUX 11.23 (IA64); only C and C++ are supported + with the +DD64 flag + EIP 2005/10/05 + + + Configuration + ------------- + - Added support for Cray X1. JML 2005/10/03 + + +Bug Fixes since HDF5-1.6.4 Release +================================== + + Library + ------- + - Fixed collective IO in chunking-storage. HDF5 may have called the + wrong routine when the shape of the dataspace in the file and in + the bufferred chunk were different. This bug was fixed to make sure + the correct routine is called. KY - 2005/10/19 + - Fixed core dump when closing root groups opened through two different + file handles that operate on the same actual file. QAK - 2005/10/02 + - The ./dsets tests used to fail in the TFLOPS machine if the + test program, dsets.c, was compiled with the -O option. + The HDF5 library still worked correctly with the -O option. Only + the ./dsets failed. It is fixed. AKC - 2005/09/14 + - Corrected errors when performing various operations on a group opened + by dereferencing an object reference. QAK - 2005/07/30 + - Fixed a bug with named datatypes where a copy of a named datatype + used to create a dataset would accidentally use the original + named datatype for the dataset's datatype. QAK - 2005/07/23 + - Made H5Fget_name() to be consistent and always return name of actual + file the ID is in. (Instead of the name of the top file in a + file mounting hierarchy). QAK - 2005/07/19 + - Reworked internal file mounting semantics to hopefully eliminate + mounting problems. We now require that files that are mounting + together all have the same "file close degree". QAK - 2005/07/19 + - More bug fixes on holding open files that are mounted and have + IDs open. QAK - 2005/07/14 + - Dataset sieve buffer cache was inadvertantly disabled; it has been + re-enabled. QAK - 2005/07/08 + - Don't unmount child files until the parent file actually closes. + (Previously, if an object was holding open a file, the child files + would get unmounted too early). QAK - 2005/07/05 + - Fixed bug where unmounted files could cause the library to go into + an infinite loop when shutting down. QAK - 2005/06/30 + - Fixed bug with hyperslab selections that use selection offsets and + operate on chunked datasets going into infinite loop or dumping + core. QAK - 2005/06/17 + - Corrected memory leak and possible corruption when opening a group. + QAK - 2005/06/17 + - Added check for opaque datatype tags being too long (check against + H5T_OPAQUE_TAG_MAX, currently set to 256). QAK - 2005/06/14 + - Fixed various errors in maintaining names for open objects in the + face of unusual mount & unmount operations. QAK - 2005/06/08 + - "SEMI" and "STRONG" file close degree settings now apply only to the + particular file ID being closed, instead of operating on all open + file IDs for a given file. QAK - 2005/06/01 + - Fixed error in opening object in a group that was opened in a mounted + file which has been unmounted. QAK - 2005/03/17 + + Configuration + ------------- + - Configure can recognize -lmpich as a form of MPI library. -AKC- + 2005/9/28. + - Changed default C++ compiler for the IA64 platform from icc to + icpc which is the preferred compiler for Intel Compiler version + 8. AKC - 2005/09/02 + + Performance + ------------- + - Optimized I/O for enumerated datatypes that are a superset of a + source enumerated datatype. QAK - 2005/03/19 + + Tools + ----- + + Documentation + ------------- + + F90 API + ------- + - h5pget_driver_f was returning information that could not be + interpreted by a Fortran application program; fixed. EIP - 2005/04/10 + + C++ API + ------- + - Several member functions' prototype changed due to the + "int -> unsigned" change in the main library. They are: + H5::CompType::getMemberDataType(unsigned member_num) + H5::CompType::getMemberCompType(unsigned member_num) + H5::CompType::getMemberEnumType(unsigned member_num) + H5::CompType::getMemberIntType(unsigned member_num) + H5::CompType::getMemberFloatType(unsigned member_num) + H5::CompType::getMemberStrType(unsigned member_num) + BMR - 2005/07/27 + + + + + +Platforms Tested +================ + + AIX 5.1 (32 and 64-bit) xlc 6.0.0.6 + xlf 8.1.1.3 + xlC 6.0.0.6 + mpcc_r 6.0.0.6 + mpxlf_r 8.1.1.3 + xlc 5.0.2.5 + xlf 7.1.1.2 + xlC 5.0.2.5 + mpcc_r 5.0.2.5 + mpxlf_r 7.1.1.2 + AIX 5.2 (32/64 bit) xlc 6.0.0.8 + xlC 6.0.0.9 + xlf 8.1.1.7 + mpcc_r 6.0.0.8 + mpxlf_r 8.1.1.7 + AIX 5.2 (32/64 bit, LLNL frost) xlc 6.0.0.8 + xlC 6.0.0.8 + xlf 8.1.1.7 + mpcc_r 6.0.0.8 + mpxlf_r 8.1.1.7 + AIX 5.3 (32/64 bit) xlc 7.0.0.0 + xlC 7.0. + xlf 9.1.0.3 + Cray X1 water 3.0.35 Cray Standard C Version 5.4.0.7.4 + Cray Fortran 5.4.0.7.3 + Cray C++ 5.4.0.7.4 + FreeBSD 4.11 gcc 2.95.4 + g++ 2.95.4 + gcc 3.2.3, 3.3.6, 3.4.4, 4.0.0 + HP-UX B.11.00 HP C HP92453-01 A.11.01.20 + HP F90 v2.4 + HP ANSI C++ B3910B A.03.13 + HP-UX B.11.23 HP aC++/ANSI C B3910B A.06.00 + HP F90 v2.9 + HP aC++/ANSI C B3910B A.06.00 + IRIX64 6.5 (tesla -64) MIPSpro cc 7.4.2m + F90 MIPSpro 7.4.2m + C++ MIPSpro cc 7.4.2m + IRIX64 6.5 (64 & n32) MIPSpro cc 7.3.1.3m + F90 MIPSpro 7.3.1.3m (64 only) + C++ MIPSpro cc 7.3.1.3m + mpt 1.6 + Linux 2.4.20-28.7 gcc 2.96 + (eirene, verbena) gcc 3.3.2 + PGI compilers (pgcc, pgf90, pgCC) + version 5.2-1 + Absoft Fortran compiler v9.0 + Intel(R) C++ 32-bit Version 8.1 + Intel(R) Fortran 32-bit Version 8.1 + MPIch 1.2.6 + Linux 2.4.21-268-smp x86_64 gcc 3.3.1 (SuSE Linux, AMD) + (mir) PGI 5.2-1 C and F90 (with k3-32) + Intel(R) C++ 32-bit Version 8.1 + Intel(R) Fortran 32-bit Version 8.1 + Linux 2.4.21-sgi306rp21 Altix + SMP ia64 Intel(R) C++ Version 8.1 + (cobalt) Intel(R) Fortran Itanium(R) Version 8.1 + SGI MPI + OSF1 V5.1 (QSC) Compaq C V6.5-011 + HP Fortran V5.5A-3548 + Compaq C++ V6.5-036 + MPIX200_64_r13.4 + OSF1 V5.1 (PSC) Compaq C V6.5-303 + HP Fortran V5.5A-3548 + Compaq C++ V6.5-040 + SunOS 5.8 32,46 Sun WorkShop 6 update 2 C 5.3 + (Solaris 2.8) Sun WorkShop 6 update 2 Fortran 90 + Sun WorkShop 6 update 2 C++ 5.3 + SunOS 5.9 32,64 Sun C 5.6 2004/07/15 + (Solaris 2.9) Sun Fortran 95 8.0 2004/07/15 + Sun C++ 5.6 2004/07/15 + SunOS 5.10 Sun WorkShop 6 update 2 C 5.3 + Sun WorkShop 6 update 2 Fortran 95 6.2 + Sun WorkShop 6 update 2 C++ 5.3 + Patch 111685-13 + Xeon Linux 2.4.21-32.0.1.ELsmp-perfctr-lustre + (tungsten) 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) Intel(R) C++ Version 8.0 + Intel(R) Fortran Compiler Version 8.0 + mpich-gm-1.2.5..10-intel-r2 + Windows XP MSVC++.NET + MSVC++ 6.0 + Intel 8.1 C++ + MAC OS X Darwin 7.5 + gcc and g++ Apple Computer, Inc. GCC + version 1175, based on gcc version 3.3.2 + IBM XL Fortran version 8.1 + Absoft Fortran compiler v8.2 + + +Supported Configuration Features Summary +======================================== + +Key: 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 + +Platform C F90 F90 C++ zlib SZIP + parallel parallel +IBM BG/L (16) n n n n y y +Solaris2.8 64-bit y y y(1) y y y +Solaris2.8 32-bit y y y(1) y y y +Solaris2.9 64-bit y(1) y y(1) y y y +Solaris2.9 32-bit y(1) y y(1) y y y +Solaris2.10 64-bit y(1) y n y y y +Solaris2.10 32-bit y(1) y n y y y +IRIX64_6.5 64-bit y(2) y y y y y +IRIX64_6.5 32-bit y(2) n n n y y +HPUX11.00 y(1) y y y y y +HPUX11.23-32bit n y n y y y +HPUX11.23-64bit n n n y y y +OSF1 v5.1 y y y y y y +X1 y y y y y n +AIX-5.1, 5.2 & 5.3 32-bit y y y y y y +AIX-5.1, 5.2 & 5.3 64-bit y y y y y y +WinXP Visual Studio 6.0 n n(9) n y y y +WinXP .Net n n n y(8) y y +Mac OS X 10.3 n y(10) n y y y +FreeBSD 4.11 n n n y y y +RedHat 7.3 W (3) y(1) y(11) n y y y +RedHat 7.3 W Intel (3) n y n y y y +RedHat 7.3 W PGI (3) n y n y y y +RedStorm (16) n y n y y n +SuSe x86_64 gcc (3,13) n y(12) n y y y +SuSe x86_64 icc (3,13) n y(14) n y y y +Linux 2.4 Xeon C Lustre Intel (3,6) n y n y y y +Linux 2.4 SuSE ia64 C Intel (3,7) y y y y y y +Linux 2.4 SGI Altix ia64 Intel (3) y y y y y y + + +Platform Shared static- Thread- STREAM- + libraries(4) exec safe VFD +IBM BG/L n y n n +Solaris2.8 64-bit y x y y +Solaris2.8 32-bit y x y y +Solaris2.9 64-bit y x y y +Solaris2.9 32-bit y x y y +Solaris2.10 64-bit y x y y +Solaris2.10 32-bit y x y y +IRIX64_6.5 64-bit y y y y +IRIX64_6.5 32-bit y y y y +HPUX11.00 y x n y +HPUX11.23 y y n y +OSF1 v5.1 y y n y +X1 n y n y +AIX-5.1, 5.2 & 5.3 32-bit n y n y +AIX-5.1, 5.2 & 5.3 64-bit n y n y +WinXP Visual Studio 6.0 y y n n +WinXP .Net y y n n +Mac OS X 10.3 y y n y +FreeBSD 4.11 y y y y +RedHat 7.3 W (3) y y y y +RedHat 7.3 W Intel (3) n y n y +RedHat 7.3 W PGI (3) n y n y +RedStorm n y n y +SuSe x86_64 gcc (3,13) n y n y +SuSe x86_64 icc (3,13) y y(15) n y +Linux 2.4 Xeon C Lustre Intel (3,6) y y n y +Linux 2.4 SuSE ia64 C Intel (3,7) y y n n +Linux 2.4 SGI Altix ia64 Intel (3) y y n y + + +Compiler versions for each platform are listed in the "Platforms Tested" +table found elsewhere in this file (RELEASE.txt). Unless otherwise noted, +compilers used are the system compilers. + +Footnotes: (1) Using mpich 1.2.6 + (2) Using mpt and mpich 1.2.6. + (3) Linux 2.4 with GNU, Intel, and PGI compilers, as indicated. + W or C indicates workstation or cluster, respectively. + (4) Shared libraries are provided only for the C library, + except on Windows where they are provided for C and C++. + (5) Using mpt. + (6) Linux 2.4.21-32.0.1. Xeon cluster with ELsmp-perfctr-lustre + and Intel compilers + (7) Linux 2.4.21, SuSE_292.til1. Ia64 cluster with Intel compilers + (8) Intel 8.1 + (9) One test of this release failed with Compaq Visual Fortran 6.6c. + No binary fortran release will be provided. Users should build + the library by themselves and use it at their own risk. + We recommend that users use HDF5 1.7 instead + or use Compaq Visual Fortran 6.0. + (10) IBM XLF and Absoft + (11) PGI, Absoft. No shared libraries with Absoft; + use '--disable-shared'. + (12) PGI and Intel compilers for both C and Fortran + (13) AMD Opteron x86_64 + (14) ifort + (15) Yes with C and Fortran, but not with C++ + (16) Only serial is ported. PFS does not work for PHDF5 yet. + FMB/EIP - 2005/11/10 + + +Known Problems +============== +* Intel Compilers for Linux x86_86 platforms (EM64T-based, v8.1) has + optimization error in the data types conversion code. Before running + configure, edit the file config/intel-flags by changing the setting of + PROD_CFLAGS from -O3 to -O0, then run configure. AKC - 2005/11/10. + +* Fortran testing and compiling failures on windows XP + 1. Compaq visual fortran 6.6c with VS 6.0 + The Fortran tests failed for both release, release dll, debug and debug + dll. The failure is a random one. We won't provide fortran libraries. The + same test passed with the 1.7.51 snapshot. You may find the 1.7.51 + snapshot under ftp://hdf.ncsa.uiuc.edu/pub/outgoing/hdf5/snapshots/. + 2. Intel fortran 8.1 under .Net environment + The fortran library cannot even be compiled. Some users have pointed this + to intel forum. + +* When testing parallel HDF5 with the C compiler version MIPSpro 7.4.3 at IRIX + 6.5, set enviroment variable MPI_TYPE_MAX to be a bigger number, for example + 120000, in order to pass the complicated collective IO tests inside parallel + HDF5 library. This is not a problem inside parallel HDF5 library. You can + always set a bigger number in your system. + KY - 2005/10/6 + +* A contiguous or chunked dataset created by a sequential version may + not be modified with a parallel version of the library. + Use the H5Pset_alloc_time function with H5D_ALLOC_TIME_EARLY to set up the + dataset creation property list to avoid the problem. + EIP - 2005/09/09 + +* The dataset created or rewritten with the v1.6.3 library or after can't + be read with the v1.6.2 library or before when 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 wasn't 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 is no + longer the same as before on little-endian system. The library release + after 1.6.4 can still read the dataset created or rewritten with the library + of v1.6.2 or before. SLU - 2005/7/8 + +* For version 6 (6.02 and 6.04) of the Portland Group compiler on AMD Opteron + processor, there's a bug in the compiler for optimization(-O2). The library + failed in several tests but all related to multi driver. The problem has + been reported to the vendor. + +* test/big fails sometimes with the message "Possible overlap with another + region." The test selects regions randomly, and this error occurs when + two regions overlap each other; it is a bug in the test and not in + HDF5. Since the error is triggered by a random situation, it will + usually disappear if the test is re-run. + +* Newer SGI MIPSpro compilers (version 7.4.x) support C99 features but it + has a "guard" statement in stdint.h that will #error and skip the rest + of the header file if C99 option is not used explicitly. Hardset + $CC to c99 will resolve the problem. AKC - 2004/12/13 + +* 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". HDF5 does not use sockets (except for stream-VFD). This is + due to problems of the poe command trying to set up the debug socket. + Check if there are many old /tmp/s.pedb.* staying around. These are + sockets used by the poe command and left behind due to failed commands. + Ask your system administrator to clean them out. Lastly, request IBM + to provide a means to run poe without the debug socket. + +* Two h5dump xml tests(h5dump --xml thlink.h5 and h5dump --xml tmany.h5) + failed on windows xp with .NET for debug and debug dll. Release and + Release dll work fine. + +* The h5dump tests may fail to match the expected output on some platforms + (e.g. parallel jobs, Windows) where the error messages directed to + "stderr" do not appear in the "right order" with output from stdout. + This is not an error. + +* The stream-vfd test uses ip port 10007 for testing. If another + application is already using that port address, the test will hang + indefinitely and has to be terminated by the kill command. To try the + test again, change the port address in test/stream_test.c to one not + being used in the host. + +* 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. + + The --enable-static-exec configure flag also fails to correctly compile + on the HPUX 11.00. + + It is suggested that you don't use this option on these platforms + during configuration. + +* The Stream VFD was not tested yet under Windows. + + +* Before building HDF5 F90 Library from source on Crays + replace H5Aff.f90, H5Dff.f90 and H5Pff.f90 files in the fortran/src + subdirectory in the top level directory with the Cray-specific files + from the site: + ftp://ftp.ncsa.uiuc.edu/HDF/HDF5/current/src/patches/ + +* Use --disable-shared configure flag if building with Absoft Fortran + compiler. + +* Information about building with PGI and Intel compilers is available in + INSTALL file sections 5.7 and 5.8. + +* In LANL QSC, the new cc compiler has problems converting small values of + long long (absolute values less than 1**-308) to double. This triggers + the test/dtypes to report failure in the + Testing random sw long double -> double conversions + If -ieee is used, the converted doubles spread over the range 0.0 to 1**-308. + If -ieee is not used, the converted double values are mostly 0.0 but + occasionally as 1**-308. This has been reported to the system staff. + All other tests have passed. + +* Fortran release DLL randomly failed with Compaq Visual Fortran 6.6c on + Windows. + +* Fortran DLL built with Intel 8.1 in .NET environment crushed the compiler, + Building Fortran static library with Intel 8.1 in .NET environment + requires manually setting the project file. + Please contact to hdfhelp@ncsa.uiuc.edu if you need to build + Fortran static library with Intel 8.1 with .NET environment. + +* 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 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 HDF make files and test scripts 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. + +%%%%1.6.4%%%% Release Information for hdf5-1.6.4 (15/March/05) + + +HDF5 version 1.6.4 released on Tue Mar 15 20:38:48 CST 2005 +================================================================================ + +INTRODUCTION +============ +This document describes the differences between HDF5-1.6.3 and +HDF5-1.6.4, and contains information on the platforms tested and +known problems in HDF5-1.6.4. For more details check the HISTORY.txt +file in the HDF5 source. + +The HDF5 documentation can be found on the NCSA ftp server +(ftp.ncsa.uiuc.edu) in the directory: + + /HDF/HDF5/docs/ + +For more information look at the HDF5 home page at: + + http://hdf.ncsa.uiuc.edu/HDF5/ + +If you have any questions or comments, please send them to: + + hdfhelp@ncsa.uiuc.edu + + +CONTENTS +======== +- New Features +- Support for new platforms and languages +- Bug Fixes since HDF5-1.6.3 +- Documentation +- Platforms Tested +- Supported Configuration Features Summary +- Known Problems + + +New Features +============ + Source code distribution: + ------------------------- + + The High-Level (HL) C APIs were added to the source code distribution. + For HL documentation, see + http://hdf.ncsa.uiuc.edu/HDF5/hdf5_hl/doc/RM_hdf5hl.html. + + The HL library, libhdf5_hl.a(so), is built and installed by default. + Use --disable-hl configure flag to disable the HL library. + + Library: + -------- + - We recommend you to use SZIP v2.0 with this release. + For more information see + http://hdf.ncsa.uiuc.edu/doc_resource/SZIP/ + - The compound datatype has been enhanced with a new feature of size + adjustment. The size can be increased and decreased (without + cutting the last member). No API change is involved. SLU - + 2004/10/1 + - Removed PABLO support. 2005/01/20 EIP + + Parallel Library: + ----------------- + - Allow compressed, chunked datasets to be read in parallel. + QAK - 2004/10/04 + + Tools: + ------ + - New tool, h5jam. See HDF5 Reference Manual. 2004/10/08 + + F90 API: + -------- + No new features in this release. + + C++ API: + -------- + - Started using C library's reference counting in place of the class + RefCounter, which existed before the C mechanism was available. + As a result, RefCounter has been removed. 2005/03/12 BMR + + +Support for new platforms, languages and compilers. +======================================= + + Configuration + ------------- + - Upgraded from GNU autoconf 2.53 to autoconf 2.59. JML - 2005/01/31 + + +Bug Fixes since HDF5-1.6.3 release +================================== + + Library + ------- + - Fixed a racing condition in MPIPOSIX virtual file drive close + function. Now all processes must completed the close before any + of them is returned. This prevents some "faster" processes start + accessing the file for another purpose (e.g., open with truncate) + while other "slower" processes have not closed the same file with + the previous purpose. AKC - 2005/03/01 + - H5Tget_member_value calls for enum datatype didn't return correct + value if H5Tenum_valueof was called first. It's fixed. SLU - + 2005/02/08 + - For variable-length string, H5Tget_class returned H5T_STRING as its + class. But H5Tdetect_class and H5Tget_member_class considered it + as H5T_VLEN. This is fixed to let all these 3 functions treat it + as H5T_STRING. SLU - 2005/02/08 + - The byte order of all 1-byte integer types was fixed as + little-endian even on a big-endian machine. It's corrected. + SLU - 2005/02/07 + - Fixed segmentation fault when calling H5Fflush with an attribute that + hasn't had a value written to it open. QAK - 2004/10/18 + - Backed out support for bitfield and time types in H5Tget_native_type. + Leave it to future support. The function simply returns error + message of "not support" for bitfield and time types. SLU - 2004/10/5 + - Fixed address check in Core VFL driver to avoid spurious address/size + overflows for odd valued addresses and/or sizes. QAK - 2004/09/27 + - Fixed problem where chunked datasets were not able to be deleted + from a file under certain circumstances. QAK - 2004/09/27/ + + Configuration + ------------- + - IRIX64 MIPSpro compiler of 7.4.x supports C99 features. Default + to use the 'c99' compiler if available. AKC - 2004/12/13 + - Intel v8.0 compiler would infinite loop when compiling some test + code with -O3 option. Changed enable-production default compiler + option to -O2. AKC - 2004/12/06 + - Long double is assumed to be a supported C data type. It is a + standard C89 type. AKC - 2004/10/22 + + Performance + ------------- + Many changes were made to the library to improve performance, + especially for the variable-length datatypes and metadata cache. + + Tools + ----- + - h5fc and h5c++ work correctly when -c compiler flag + is used. EIP - 2005/03/14 + - Fixed h5dump to print attributes data in ASCII if -r option is used. + AKC - 2004/11/18 + - Fixed space utilization reported in h5ls to correct error + in formula used. QAK - 2004/10/22 + + Documentation + ------------- + + F90 API + ------- + - On windows, previously Fortran DLL built and tested failed. + Now Fortran DLL has been built and tested successfully + with Dec Fortran 6.6c or Dec Fortran 6.0. + + C++ API + ------- + + +Documentation +============= + + HDF5 Library documentation + -------------------------- + No substantive changes to the structure or types of content in the + HDF5 Library documentation. + + Windows installation documentation + ---------------------------------- + 1. On Windows zlib has been updated to 1.2.2. You may find the binary at + either http://www.zlib.net/zlib122-dll.zip or + ftp://hdf.ncsa.uiuc.edu/lib-external/zlib/bin/windows + + 2. Only DLLs of external libraries (zlib and szip) are linked with the + HDF5 Library. We will no longer provide binary to link static library + with HDF5. For details, please check INSTALL_Windows in this directory. + + +Platforms Tested +================ + + AIX 5.1 (32 and 64-bit) xlc 6.0.0.6 + xlf 8.1.1.3 + xlC 6.0.0.6 + mpcc_r 6.0.0.6 + mpxlf_r 8.1.1.3 + xlc 5.0.2.5 + xlf 7.1.1.2 + xlC 5.0.2.5 + mpcc_r 5.0.2.5 + mpxlf_r 7.1.1.2 + AIX 5.2 (32/64 bit) xlc 6.0.0.8 + xlC 6.0.0.9 + xlf 8.1.1.7 + mpcc_r 6.0.0.8 + mpxlf_r 8.1.1.7 + AIX 5.2 (32/64 bit, LLNL frost) xlc 6.0.0.8 + xlC 6.0.0.8 + xlf 8.1.1.7 + mpcc_r 6.0.0.8 + mpxlf_r 8.1.1.7 + Cray T90 sn7001 10.0.0md Cray Standard C Version 6.4.0.3 + Cray Fortran Version 3.4.0.0 + Cray SV1 sn9617 10.0.1.2 Cray Standard C Version 6.6.0.3.6 + Cray Fortran Version 3.6.0.3.1 + FreeBSD 4.9 gcc 2.95.4 + g++ 2.95.4 + gcc 3.2.3, 3.3.6, 3.4.4, 4.0.0 + HP-UX B.11.00 HP C HP92453-01 A.11.01.20 + HP F90 v2.4 + HP ANSI C++ B3910B A.03.13 + MPIch 1.2.4 + IRIX64 6.5 (tesla -64) MIPSpro cc 7.4.2m + F90 MIPSpro 7.4.2m + C++ MIPSpro cc 7.4.2m + IRIX64 6.5 (64 & n32) MIPSpro cc 7.3.1.3m + F90 MIPSpro 7.3.1.3m (64 only) + C++ MIPSpro cc 7.3.1.3m + mpt 1.6 + Linux 2.4.20-28.7 gcc 2.96 + (eirene, verbena) gcc 3.3.2 + PGI compilers (pgcc, pgf90, pgCC) + version 5.2-1 + Absoft Fortran compiler v9.0 + Intel(R) C++ 32-bit Version 8.1 + Intel(R) Fortran 32-bit Version 8.1 + MPIch 1.2.6 + Linux 2.4.21-268-smp x86_64 gcc 3.3.1 (SuSE Linux, AMD) + (mir) PGI 5.2-1 C and F90 (with k3-32) + Intel(R) C++ 32-bit Version 8.1 + Intel(R) Fortran 32-bit Version 8.1 + Linux 2.4.21-sgi303r2 Altix + SMP ia64 Intel(R) C++ Version 8.1 + (cobalt) Intel(R) Fortran Itanium(R) Version 8.1 + SGI MPI + OSF1 V5.1 (QSC) Compaq C V6.5-011 + HP Fortran V5.5A-3548 + Compaq C++ V6.5-036 + MPIX200_64_r13.4 + OSF1 V5.1 (PSC) Compaq C V6.5-303 + HP Fortran V5.5A-3548 + Compaq C++ V6.5-040 + MPIX200_64_r13.4 + FORTRAN 90 2.0 Patch 107356-04 + SunOS 5.8 32,46 Sun WorkShop 6 update 2 C 5.3 + (Solaris 2.8) Sun WorkShop 6 update 2 Fortran 90 + Sun WorkShop 6 update 2 C++ 5.3 + SunOS 5.9 32,64 Sun C 5.6 2004/07/15 + (Solaris 2.9) Sun Fortran 95 8.0 2004/07/15 + Sun C++ 5.6 2004/07/15 + TFLOPS r1.0.4 v4.5.2 i386 pgcc Rel 3.1-4i with mpich-1.2.4 with + local modifications + Xeon Linux 2.4.20-31.9smp_perfctr_lustre + (tungsten) Intel(R) C++ Version 8.0 + Intel(R) Fortran Compiler Version 8.0 + IA-64 Linux 2.4.21.SuSE_128.bef1 ia64 + (NCSA tg-login) Intel(R) C++ Version 8.0 + Intel(R) Fortran Compiler Version 8.0 + mpich-gm-1.2.5..intel + Windows XP MSVC++.NET + MSVC++ 6.0 + Compaq Visual Fortran 6.6C + Intel 8.1 C++ + MAC OS X Darwin 7.5 + gcc and g++ Apple Computer, Inc. GCC + version 1175, based on gcc version 3.3.2 + IBM XL Fortran version 8.1 + Absoft Fortran compiler v8.2 + + +Supported Configuration Features Summary +======================================== + +Key: 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 + +Platform C F90 F90 C++ zlib SZIP + parallel parallel +Solaris2.8 64-bit y y y(1) y y y +Solaris2.8 32-bit y y y(1) y y y +Solaris2.9 64-bit y(1) y y(1) y y y +Solaris2.9 32-bit y(1) y y(1) y y y +IRIX64_6.5 64-bit y(2) y y y y y +IRIX64_6.5 32-bit y(2) n n n y y +HPUX11.00 y(1) y y y y y +OSF1 v5.1 y y y y y y +T90 IEEE n y n n y n +SV1 y(5) y y(5) n y n +TFLOPS y(1) n n n y n +AIX-5.1 & 5.2 32-bit y y y y y y +AIX-5.1 & 5.2 64-bit y y y y y y +WinXP Visual Studio 6.0 n y(9) n y y y +WinXP .Net n n n y(8) y y +Mac OS X 10.3 n y(10) n y y y +FreeBSD 4.9 y(1) n n y y y +RedHat 7.3 W (3) y(1) y(11) n y y y +RedHat 7.3 W Intel (3) n y n y y y +RedHat 7.3 W PGI (3) n y n y y y +SuSe x86_64 gcc (3,13) n y(12) n y y y +SuSe x86_64 icc (3,13) n y(14) n y y y +Linux 2.4 Xeon C Lustre Intel (3,6) n y n y y y +Linux 2.4 SuSE ia64 C Intel (3,7) y y y y y y +Linux 2.4 SGI Altix ia64 Intel (3) y y y y y y + + +Platform Shared static- Thread- STREAM- + libraries(4) exec safe VFD +Solaris2.8 64-bit y x y y +Solaris2.8 32-bit y x y y +Solaris2.9 64-bit y x y y +Solaris2.9 32-bit y x y y +IRIX64_6.5 64-bit y y y y +IRIX64_6.5 32-bit y y y y +HPUX11.00 y x n y +OSF1 v5.1 y y n y +T90 IEEE n y n y +SV1 n y n y +TFLOPS n y n n +AIX-5.1 & 5.2 32-bit n y n y +AIX-5.1 & 5.2 64-bit n y n y +WinXP Visual Studio 6.0 y y n n +WinXP .Net y y n n +Mac OS X 10.3 y y n y +FreeBSD 4.9 y y y y +RedHat 7.3 W (3) y y y y +RedHat 7.3 W Intel (3) n y n y +RedHat 7.3 W PGI (3) n y n y +SuSe x86_64 gcc (3,13) n y n y +SuSe x86_64 icc (3,13) y y(15) n y +Linux 2.4 Xeon C Lustre Intel (3,6) y y n y +Linux 2.4 SuSE ia64 C Intel (3,7) y y n n +Linux 2.4 SGI Altix ia64 Intel (3) y y n y + + +Compiler versions for each platform are listed in the "Platforms Tested" +table found elsewhere in this file (RELEASE.txt). Unless otherwise noted, +compilers used are the system compilers. + +Footnotes: (1) Using mpich 1.2.6 + (2) Using mpt and mpich 1.2.6. + (3) Linux 2.4 with GNU, Intel, and PGI compilers, as indicated. + W or C indicates workstation or cluster, respectively. + (4) Shared libraries are provided only for the C library, + except on Windows where they are provided for C and C++. + (5) Using mpt. + (6) Linux 2.4.20-31.9. Xeon cluster with smp_perfctr_lustre + and Intel compilers + (7) Linux 2.4.21, SuSE_128.befl. Ia64 cluster with Intel compilers + (8) Intel 8.1 + (9) Compaq Visual Fortran 6.6C + (10) IBM XLF and Absoft + (11) PGI, Absoft. No shared libraries with Absoft; + use '--disable-shared'. + (12) PGI and Intel compilers for both C and Fortran + (13) AMD Opteron x86_64 + (14) ifort + (15) Yes with C and Fortran, but not with C++ + FMB/EIP - 2005/03/15 + + +Known Problems +============== +* test/big fails sometimes with the message "Possible overlap with another + region." The test selects regions randomly, and this error occurs when + two regions overlap each other; it is an bug in the test and not in + HDF5. Since the error is triggered by a random situation, it will + usually disappear if the test is re-run. + +* Cray SV1 fails to correctly convert between floating-point and "long double" + for software conversion. Problem is being investigated. SLU - 2005/03/04 + +* Newer SGI MIPSpro compilers (version 7.4.x) support C99 features but it + has a "guard" statement in stdint.h that will #error and skip the rest + of the header file if C99 option is not used explicitly. Hardset + $CC to c99 will resolve the problem. AKC - 2004/12/13 + +* 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". HDF5 does not use sockets (except for stream-VFD). This is + due to problems of the poe command trying to set up the debug socket. + Check if there are many old /tmp/s.pedb.* staying around. These are + sockets used by the poe command and left behind due to failed commands. + Ask your system administrator to clean them out. Lastly, request IBM + to provide a mean to run poe without the debug socket. + +* Fortran subroutine h5pget_driver_f doesn't return a correct driver + information. + +* There are two h5dump xml tests(h5dump --xml thlink.h5 and + h5dump --xml tmany.h5) failed on windows xp with .NET for debug and + debug dll. Release and Release dll work fine. + +* The h5dump tests may fail to match the expected output on some platforms + (e.g. parallel jobs, Windows) where the error messages directed to + "stderr" do not appear in the "right order" with output from stdout. + This is not an error. + +* The stream-vfd test uses ip port 10007 for testing. If another + application is already using that port address, the test will hang + indefinitely and has to be terminated by the kill command. To try the + test again, change the port address in test/stream_test.c to one not + being used in the host. + +* 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 don't use this option on these platforms + during configuration. + +* The Stream VFD was not tested yet under Windows. It is not supported + in the TFLOPS machine. + +* The ./dsets tests failed in 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. + +* Certain platforms give false negatives when testing h5ls: + - Cray T90IEEE give errors during testing when displaying + some floating-point values. These are benign differences due to + the different precision in the values displayed. + h5ls appears to be dumping floating-point numbers correctly. + +* Before building HDF5 F90 Library from source on Crays + replace H5Aff.f90, H5Dff.f90 and H5Pff.f90 files in the fortran/src + subdirectory in the top level directory with the Cray-specific files + from the site: + ftp://ftp.ncsa.uiuc.edu/HDF/HDF5/current/src/patches/ + +* On some platforms that use Intel and Absoft compilers to build HDF5 fortran + library, compilation may fail for fortranlib_test.f90, fflush1.f90 and + fflush2.f90 complaining about exit subroutine. Comment out the line + IF (total_error .ne. 0) CALL exit (total_error) + +* Use --disable-shared configure flag if building with Absoft Fortran + compiler + +* Information about building with PGI and Intel compilers is available in + INSTALL file sections 5.7 and 5.8 + +* In LANL QSC, the new cc compiler has problems converting small values of + long long (absolute values less than 1**-308) to double. This triggers + the test/dtypes to report failure in the + Testing random sw long double -> double conversions + If -ieee is used, the converted doubles spread over the range 0.0 to 1**-308. + If -ieee is not used, the converted double values are mostly 0.0 but + occasionally as 1**-308. This has been reported to the system staff. + All other tests have passed. + +* The C++ library's tests fails when compiling with PGI C++ compiler. The + workaround until the problem is correctly handled is to use the + flag "--instantiate=local" prior to the configure and build steps, as: + setenv CXX "pgCC --instantiate=local" for pgCC 5.02 and higher + setenv CXX "pgCC -tlocal" for others + +* Fortran release DLL randomly failed with compaq visual fortran 6.6c on + windows. + +* Fortran DLL built with Intel 8.1 in .NET environment crushed the compiler, + To build Fortran Static library with Intel 8.1 in .NET environment + needs manually setting the project file, + please contact to hdfhelp@ncsa.uiuc.edu if you need to build + fortran static library with Intel 8.1 with .NET environment. + +* 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 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 HDF make files and test scripts 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. + + +%%%%1.6.3%%%% Release Information for hdf5-1.6.3 (22/September/04) + +HDF5 version 1.6.3 released on Wed Sep 22 11:30:11 CDT 2004 +================================================================================ + + +INTRODUCTION + +This document describes the differences between HDF5-1.6.2 and +HDF5-1.6.3, and contains information on the platforms tested and +known problems in HDF5-1.6.3. For more details check the HISTORY.txt +file in the HDF5 source. + +The HDF5 documentation can be found on the NCSA ftp server +(ftp.ncsa.uiuc.edu) in the directory: + + /HDF/HDF5/docs/ + +For more information look at the HDF5 home page at: + + http://hdf.ncsa.uiuc.edu/HDF5/ + +If you have any questions or comments, please send them to: + + hdfhelp@ncsa.uiuc.edu + +CONTENTS + +- New Features +- Support for new platforms and languages +- Bug Fixes since HDF5-1.6.2 +- Documentation +- Platforms Tested +- Supported Configuration Features Summary +- Known Problems + + +New Features +============ + + Configuration: + -------------- + - Added some initial support for making purify (or similar memory + checking products) happier by initializing buffers to zero and + disabling the internal free list code. To take advantage of this, + define 'H5_USING_PURIFY' in your CFLAGS when building the library. + QAK - 2004/07/23 + + - WINDOWS building,testing and installing improvements + + - On Windows, FORTRAN,C++ and C projects are merged into one zip file, + users can choose an option to build either FORTRAN or C++ or both + with basic C library.For detailed information, + please read INSTALL_Windows.txt. + + - On Windows, szip compression library with or without encoder can be easily + turned off or on when building HDF5. For detailed information, + please read INSTALL_Windows.txt, especially section V. + + - On Windows, an optional procedure for building,testing and installing + HDF5 from command line is provided. This procedure is supposed to be + convenient for experienced users, please read + INSTALL_windows_From_Command_Line.txt for details. + + - On Windows, an alternative short instruction document for building, + testing and installing HDF5 is provided. This instruction is supposed to + be convenient for general users, please read + INSTALL_Windows_Short.txt for details. + + - On Windows, h5repack,h5diff,h5ls and h5import tool tests have been added. + KY - 2004/9/16 + + + Library: + -------- + - Modified the way how HDF5 calculates 'pixels_per_scanline' parameter for + SZIP compression. Now there is no restriction on the size and shape of the + chunk except that the total number of elements in the chunk cannot be + bigger than 'pixels_per_block' parameter provided by the user. + EIP - 2004/07/21 + - HDF5 can now link to SZIP with or without szip's encoder. + The new API function H5Zget_filter_info can be used to check + szip's status. Attempting to assign szip to a dataset property + list or attempting to write with szip will generate an error if + szip's encoder is disabled. JL/NF - 2004/6/30 + - SZIP always uses K13 compression. This flag no longer needs to + be set when calling H5Pset_szip. If the flag for CHIP + compression is set, it will be ignored (since the two are mutually + exclusive). JL/NF - 2004/6/30 + - A new API function H5Fget_name was added. It returns the name + of the file by object(file, group, data set, named data type, + attribute) ID. SLU - 2004/06/29 + - A new API function H5Fget_filesize was added. It returns the + actual file size of the opened file. SLU - 2004/06/24 + - Added option that if $HDF5_DISABLE_VERSION_CHECK is set to 2, + will suppress all library version mismatch warning messages. + AKC - 2004/4/14 + + Parallel Library: + ----------------- + + Tools: + ------ + - h5repack was added to the tools suite. h5repack regenerates an HDF5 file + from another HDF5 file, optionally applying HDF5 filters (compression) + and/or chunking to the copied file. The filters options are read from + the command line. See /doc/html/Tools.html for more details. + PVN - 2004/9/13 + + - h5dump includes new features: + 1) Printing of dataset filters, storage layout and fill value information. + 2) Print a list of the file contents. + 3) Escape non printing characters. + 4) Print the content of the boot block. + 5) Print array indices with the data (the default). + These options are all switch controlled. See /doc/html/Tools.html for more details. + PVN - 2004/9/13 + + + F90 API: + -------- + - added new subroutines: + h5fget_filesize_f + h5iget_file_id_f + h5premove_filter_f + h5zget_filter_info_f + EIP 2004/9/21 + + - added new h5fget_name_f and h5fget_filesize_f subroutines + EIP 2004/07/08 + + C++ API: + -------- + - Added wrappers for array and variable length datatypes APIs + - Added wrappers for newly added APIs from H5T, H5F, and H5I + - Added many wrappers that were missing from the H5P API + - Added the ability to reference HDF5 objects to these classes: + DataSet, DataType, Group, and H5File (wrappers for H5R APIs) + BMR 2004/08/04 + + +Support for new platforms, languages and compilers. +======================================= + - Added PGI Fortran support for Linux64 (x86_64) systems + EIP - 2004/08/19 + - Absoft compiler f95 v9.0 is supported on Linux 2.4 32bit + EIP - 2004/07/29 + - HDF5 Fortran APIs are supported on Mac OSX with IBM XL Fortran + compiler version 8.1. This is a default compiler. + - HDF5 Fortran APIs are supported on MAC OSX with Absoft F95 compiler + version 8.2; set F9X environment variable to f95, for example + setenv F9X f95 + Use --disable-shared --enable-static configure flags when Absoft + compiler is used. + EIP - 2004/07/27 + +Bug Fixes since HDF5-1.6.2 release +================================== + + Library + ------- + - Fixed parallel bug in which some processes attempted collective + I/O while others did independent I/O. Bug appeared when some + processes used point selections, and others didn't. JRM - 2004/9/15 + - Corrected error where dataset region references were written in an + incorrect way on Cray machines. PVN & QAK - 2004/09/13 + - The H5Tget_native_type now determines the native type for integers + based on the precision. This is to avoid cases of wrongly converting + an int to a short in machines that have a short of 8 bytes but with + 32bit precision (e.g Cray SV1). PVN - 2004/09/07 + - Changed H5Dread() to not overwrite data in an application's buffer + with garbage when accessing a chunked dataset with an undefined fill + value and an unwritten chunk is uncountered. QAK - 2004/08/25 + - Fixed error which could cause a core dump when a type conversion + routine was registered after a compound datatype had been + converted and then an equivalent compound datatype was converted + again. QAK - 2004/08/07 + - Fixed memory overwrite when encoding "multi" file driver information + for file's superblock. QAK - 2004/08/05 + - Fixed obscure bug where a filter which failed during chunk allocation + could allow library to write uncompressed data to disk but think + the data was compressed. QAK - 2004/07/29 + - Fixed bug where I/O to an extendible chunked dataset with zero-sized + dimensions would cause library to fail an assertion. + QAK - 2004/07/27 + - Fixed bug where chunked datasets which have filters defined, + allocation time set to "late" and whose chunks don't align with + the dataspace bounds could have incorrect data stored when + overwriting the entire dataset on the first write. QAK - 2004/07/27 + - Added check to ensure that dataspaces have extents set. JML-2004/07/26 + - Fixed bug on some Solaris systems where HDF5 would try to use + gettimeofday() when that function didn't work properly. + JML - 2004/07/23 + - Fixed bug in H5Sset_extent_simple where setting maximum size to + non-zero, then to zero would cause an error. JML - 2004/07/20 + - Allow NULL pointer for buffer parameter to H5Dread & H5Dwrite + when not writing data ("none" selection or hyperslab or point + selection with no elements defined). QAK - 2004/07/20 + - Calling H5Gcreate() on "/" or "." throws an error instead of + failing quietly. JML - 2004/07/19 + - Fixed bug where setting file address size to be very small could + trigger an assert if the file grew to more than 64 KB. Now throws + an error and data can be recovered. JL/NF - 2004/07/14 + - Fixed bug where "resurrecting" a dataset was failing. + QAK - 2004/07/14 + - Fixed bug where incorrect data could be read from a chunked dataset + after it was extended. QAK - 2004/07/12 + - After compound datatype with variable-length string in the fields + is committed to file, the size is messed up when it's read back. + Fixed. SLU - 2004/06/11 + - Fixed potential file corruption bug when a block of metadata could + overlap the end of the internal metadata accumulator buffer and + the buffer would be extended correctly, but would incorrectly + change it's starting address. QAK - 2004/06/09 + - Opaque datatype with no tag failed for some operations. Fixed. + SLU - 2004/6/3 + - Fixed potential file corruption bug where dimensions that were + too large (a value greater than could be represented in 32-bits) + could cause the incorrect amount of space to be allocated in a + file for the raw data for the dataset. QAK - 2004/06/01 + - Fixed dtypes "sw long double -> double" failure in QSC class + machines. AKC - 2004/4/16 + + Configuration + ------------- + - Fixed the long compile time of H5detect.c when v7.x Intel Compiler + is used with optimization NOT off. AKC - 2004/05/20 + + Performance + ------------- + + Tools + ----- + - On SGI h5dump displayed only part of the data due to the bug + in the system printf; fixed. + EIP - 2004/09/21 + Documentation + ------------- + - Several descriptive errors have been fixed throughout the + documentation, particularly in the reference manual (RM). + A selection particularly worthy of note would be these: + - The H5Pset_szip description in the RM has been expanded and + corrected to facilitate use of SZIP compression. + - A note has been added to the H5Dcreate description that an + unexplained failure is likely to be due to a property list error + that is detected only at the time of dataset creation. + - + FMB - 2004/09/21 + + F90 API + ------- + + Fortran functions h5dwrite/read_f and h5awrite/read_f do not + accept dims parameter of INTEGER type anymore. Code was removed. + 2004/04/15 + C++ API + ------- + - H5::Exception's and its subclasses' constructors that were + overloaded to take char pointers are removed and constructors + that passed in reference of 'string' are changed to pass + by value. In addition, the default value of the data member + H5::Exception::detailMessage is changed from 0/NULL to + DEFAULT_MSG ("No detailed information provided".) + - Prototype for DSetCreatPropList::setLayout is changed: 1st parameter + is removed because it was there only by mistake. + BMR 2004/08/04 + +Documentation +============= + HDF5 Library documentation + -------------------------- + - HDF5 C++ API Reference Manual + This document has been added to the HDF5 document set. + The predecessor document, "HDF5 C++ Interfaces," has been removed. + - HDF5 C++ API Design Specification + A first draft of this document has been added to the HDF5 document + set. The draft has been posted on the HDF5 website and a link + has been added to the HDF5 documents index (index.html at the top + level of the document set). + - Parallel HDF5 + In prior releases, the HDF5 document set included two parallel + HDF5 documents. Those documents have been deleted and the + HDF5 documents index (index.html) now links to a "Parallel HDF5" + page on the HDF5 website (http://hdf.ncsa.uiuc.edu/HDF5/PHDF5/). + - HDF5 High Level APIs + Links to the HDF5 High Level APIs and to the HDF5 High Level + Reference Manual have been added to the HDF5 documents index + (index.html). + - HDF5 Reference Manual + Tools: h5repack -- A description of the new h5repack tool has been + added to the Tools page. + Tools: h5dump -- Several new options have been added to h5dump. + New functions -- All new functions have been added to the RM. + API changes -- Relevant function descriptions have been updated in + instances where programming interfaces have changed. + FMB - 2004/09/21 + + Windows installation documentation + ---------------------------------- + - INSTALL_Windows.txt has been enhanced to include instructions building + HDF5 with FORTRAN and C++. + - Two optional installation documents have been added. They are + INSTALL_Windows_Short.txt and INSTALL_Windows_From_Command_Line.txt. + INSTALL_Windows_Short.txt is supposed to help general users who + only want to build,test and install HDF5 in a quick way. + INSTALL_Windows_From_Command_Line.txt is supposed to help users who + would like to compile,test and install HDF5 in command line environment. + - INSTALL_Windows_withcpp.txt and INSTALL_Windows_withF90.txt became + obsolete. Files are deleted from the release_docs directory. + KY 2004/09/16, EIP 2004/9/21 + + + +Platforms Tested +================ + + AIX 5.1 (32 and 64-bit) xlc 6.0.0.6 + xlf 8.1.1.3 + xlC 6.0.0.6 + mpcc_r 6.0.0.6 + mpxlf_r 8.1.1.3 + xlc 5.0.2.5 + xlf 7.1.1.2 + xlC 5.0.2.5 + mpcc_r 5.0.2.5 + mpxlf_r 7.1.1.2 + AIX 5.2 xlc 6.0.0.8 + xlC 6.0.0.8 + xlf 8.1.1.6 + mpcc_r 6.0.0.8 + mpxlf_r 8.1.1.6 + Cray T90 sn7001 10.0.0md Cray Standard C Version 6.4.0.3 + Cray Fortran Version 3.4.0.0 + Cray T3E sn6606 2.0.6.08 Cray Standard C Version 6.6.0.3 + Cray Fortran Version 3.6.0.3 + Cray SV1 sn9617 10.0.1.2 Cray Standard C Version 6.6.0.3.6 + Cray Fortran Version 3.6.0.3.1 + FreeBSD 4.9 gcc 2.95.4 + g++ 2.95.4 + HP-UX B.11.00 HP C HP92453-01 A.11.01.20 + HP F90 v2.4 + HP ANSI C++ B3910B A.03.13 + MPIch 1.2.4 + IRIX64 6.5 (64 & n32) MIPSpro cc 7.3.1.3m + F90 MIPSpro 7.3.1.3m (64 only) + C++ MIPSpro cc 7.3.1.3m + mpt 1.6 + Linux 2.4.18 gcc 2.96, 3.3.2 + g++ 3.3.2 + Intel(R) C++ Version 7.1 + Intel(R) Fortran Compiler Version 7.1 + PGI compilers (pgcc, pgf90, pgCC) version 5.0-2 + MPIch 1.2.4 + Absoft Fortran compiler v9.0 + Linux 2.4.20-8 gcc 3.3.2 + PGI compilers (pgcc, pgf90, pgCC) version 5.0-2 + MPIch 1.2.4 + Linux 2.4.21-2.9.5ws #3 gcc 3.2.3 (Red Hat Linux 3.2.3-16) + SMP x86_64 g++ 3.2.3 + Linux 2.4.21-4.ELsmp Intel(R) C++ 32-bit Version 8.0 + Intel(R) Fortran 32-bit Version 8.0 + gcc 3.4.0 + MPICH 1..5.2 Inmel 8.0 + Linux 2.4.19-SMP x86_64 gcc (GCC) 3.2.2 (SuSE Linux) + g++ 3.2.2 + Linux 2.6.4-52smp x86_64 gcc 3.3.3 (SuSE Linux 9.1 AMD64)) + PGI 5.2-1 C and F90 + + Linux 2.4.21-sgi Altix + SMP ia64 Intel(R) C++ Version 8.0 + Intel(R) Fortran Itanium(R) Version 8.0 + SGI MPI + OSF1 V5.1 Compaq C V6.5-303 + HP Fortran V5.5A-3548 + Compaq C++ V6.5-040 + MPI_64bit_R13 + SunOS 5.7(32 and 64 bit) WorkShop Compilers 5.0 98/12/15 C 5.0 + (Solaris 2.7) WorkShop Compilers 5.0 98/12/15 C++ 5.0 + WorkShop Compilers 5.0 98/10/25 + FORTRAN 90 2.0 Patch 107356-04 + SunOS 5.8(32 and 64 bit) Sun WorkShop 6 update 2 C 5.3 + (Solaris 2.8) Sun WorkShop 6 update 2 Fortran 90 + Sun WorkShop 6 update 2 C++ 5.3 + TFLOPS r1.0.4 v4.4.3 i386 pgcc Rel 3.1-4i with mpich-1.2.4 with + local modifications + IA-32 Linux 2.4.18 gcc 2.96 + Intel(R) C++ Version 7.0 + Intel(R) Fortran Compiler Version 7.0 + + Xeon Linux 2.4.20-31.9smp_perfctr_lustre + Intel(R) C++ Version 8.0 + Intel(R) Fortran Compiler Version 8.0 + + IA-64 Linux 2.4.16 ia64 gcc version 3.0.4 + Intel(R) C++ Version 7.1 + Intel(R) Fortran Compiler Version 7.1 + + IA-64 Linux 2.4.21.SuSE_128.bef1 ia64 + Intel(R) C++ Version 8.0 + Intel(R) Fortran Compiler Version 8.0 + mpich-gm-1.2.5..intel + + Windows 2000 (NT5.0) MSVC++ 6.0 + MSVC++ .NET + DEC Visual Fortran 6.0 + Intel C and F90 compilers version 7.1 + Code Warrior 8.0 + Windows XP MSVC++.NET + MSVC++ 6.0 + DEC Visual Fortran 6.0 + + MAC OS X Darwin 7.5 + gcc and g++ Apple Computer, Inc. GCC + version 1175, based on gcc version 3.3.2 + IBM XL Fortran version 8.1 + Absoft Fortran compiler v8.2 + + + +Supported Configuration Features Summary +======================================== + +Key: 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 + +Platform C F90 F90 C++ zlib SZIP + parallel parallel +Solaris2.7 64-bit y (1) y y (1) y y y +Solaris2.7 32-bit y (1) y y (1) y y y +Solaris2.8 64-bit y (1) y y (1) y y y +Solaris2.8 32-bit y y y (1) y y y +IRIX64_6.5 64-bit y (2) y y y y y +IRIX64_6.5 32-bit y (2) n n n y y +HPUX11.00 y (1) y y y y y +OSF1 v5.1 y y y y y y +T90 IEEE n y n n y n +T3E y (5) y y (5) n y n +SV1 y (5) y y (5) n y n +TFLOPS y (1) n n n y n +AIX-5.1 & 5.2 32-bit y y y y y y +AIX-5.1 & 5.2 64-bit y y y y y y +WinXP Visual Studio 6.0 n y (9) n y y y +WinXP .Net n n n y y y +WinXP Code Warrior n n n n y y +Win2000 Visual Studio 6.0 n y (10) n y y y +Win2000 Visual Studio Intel (6) n y n y y y +Win2000 .Net n n n y y y +Mac OS X 10.3 n y (11) n y y y +FreeBSD 4.9 y (1) n n y y y +RedHat 7 W (3) y (1) y (12) n y y y +RedHat 7.3 W Intel (3) n y n y y y +RedHat 7.3 W PGI (3) n y n y y y +RedHat 8 & SuSe x86_64 gcc (3) n y (13) n y y y +Linux 2.4 Xeon C Lustre Intel (3,7) n y n y y y +Linux 2.4 SuSE ia64 C Intel (3,8) y y y y y y +Linux 2.4 SGI Altix ia64 Intel (3) y y y y y y + + +Platform Shared static- Thread- STREAM- + libraries (4) exec safe VFD +Solaris2.7 64-bit y x y y +Solaris2.7 32-bit y x y y +Solaris2.8 64-bit y x y y +Solaris2.8 32-bit y x y y +IRIX64_6.5 64-bit y y y y +IRIX64_6.5 32-bit y y y y +HPUX11.00 y x n y +OSF1 v5.1 y y n y +T90 IEEE n y n y +T3E n y n y +SV1 n y n y +TFLOPS n y n n +AIX-5.1 & 5.2 32-bit n y n y +AIX-5.1 & 5.2 64-bit n y n y +WinXP Visual Studio 6.0 y y n n +WinXP .Net y y n n +WinXP Code Warrior n y n n +Win2000 Visual Studio 6.0 y y n n +Win2000 Visual Studio Intel (6) y y n n +Win2000 .Net y y n n +Mac OS X 10.3 y y n y +FreeBSD 4.9 y y y y +RedHat 7 W (3) y y y y +RedHat 7.3 W Intel (3) n y n y +RedHat 7.3 W PGI (3) n y n y +RedHat 8 & SuSe x86_64 gcc (3) n y n y +Linux 2.4 Xeon C Lustre Intel (3,7) y y n y +Linux 2.4 SuSE ia64 C Intel (3,8) y y n n +Linux 2.4 SGI Altix ia64 Intel (3) y y n y + + + +Compiler versions for each platform are listed in the "Platforms Tested" +table found elsewhere in this file (RELEASE.txt). Unless otherwise noted, +compilers used are the system compilers. + +Footnotes: (1) Using mpich 1.2.4 + (2) Using mpt and mpich 1.2.4 + (3) Linux 2.4 with GNU, Intel, and PGI compilers, as indicated + W or C indicates workstation or cluster, respectively + (4) Shared libraries are provided only for the C library, + except on Windows where they are provided for C and C++ + (5) Using mpt + (6) Intel 7.1 compilers in Visual Studio 6.0 environment + (7) Linux 2.4.20-31.9. Xeon cluster with smp_perfctr_lustre + and Intel compilers + (8) Linux 2.4.21, SuSE_128.befl. Ia64 cluster with Intel compilers + (9) DEC Visual Fortran 6.0 and Intel 7.1 + (10) DEC Visual Fortran 6.0 + (11) IBM XLF and Absoft + (12) PGI, Absoft + (13) PGI + FMB/EIP - 2004/09/21 + + + +Known Problems +============== +* h5fc and h5c++ compilation scripts have a bug: object files (*.o) cannot be + created when source code is compiled using h5fc or h5c++. We will provide + a fix. Please check ftp://ftp.ncsa.uiuc.edu/HDF/HDF5/current/src/patches/ + for the patches. + +* Fortran subroutine h5pget_driver_f doesn't return a correct driver information. + +* There are two h5dump xml tests(h5dump --xml thlink.h5 and h5dump --xml tmany.h5) + failed on windows xp with .NET for debug and debug dll. Release and Release + dll work fine. + +* The h5dump tests may fail to match the expected output on some platforms + (e.g. parallel jobs, Windows) where the error messages directed to + "stderr" do not appear in the "right order" with output from stdout. + This is not an error. + +* The stream-vfd test uses ip port 10007 for testing. If another + application is already using that port address, the test will hang + indefinitely and has to be terminated by the kill command. To try the + test again, change the port address in test/stream_test.c to one not + being used in the host. + +* 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 don't use this option on these platforms + during configuration. + +* The Stream VFD was not tested yet under Windows. It is not supported + in the TFLOPS machine. + +* The ./dsets tests failed in 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. + +* Certain platforms give false negatives when testing h5ls: + - Cray J90 and Cray T90IEEE give errors during testing when displaying + some floating-point values. These are benign differences due to + the different precision in the values displayed and h5ls appears to + be dumping floating-point numbers correctly. + +* Before building HDF5 F90 Library from source on Crays + replace H5Aff.f90, H5Dff.f90 and H5Pff.f90 files in the fortran/src + subdirectory in the top level directory with the Cray-specific files + from the site: + ftp://ftp.ncsa.uiuc.edu/HDF/HDF5/current/src/patches/ + +* On some platforms that use Intel and Absoft compilers to build HDF5 fortran library, + compilation may fail for fortranlib_test.f90, fflush1.f90 and fflush2.f90 + complaining about exit subroutine. Comment out the line + IF (total_error .ne. 0) CALL exit (total_error) + +* On IA32 and IA64 systems, if you use a compiler other than GCC (such as + Intel's ecc or icc compilers), you will need to modify the generated + "libtool" program after configuration is finished. On or around line 104 of + the libtool file, there are lines which look like: + + # How to pass a linker flag through the compiler. + wl="" + + change these lines to this: + + # How to pass a linker flag through the compiler. + wl="-Wl," + + UPDATE: This is now done automatically by the configure script. However, if + you still experience a problem, you may want to check this line in the + libtool file and make sure that it has the correct value. + +* Information about building with PGI and Intel compilers is available in + INSTALL file sections 5.7 and 5.8 + +* In LANL QSC, the new cc compiler has problems converting small values of + long long (absolute values less than 1**-308) to double. This triggers + the test/dtypes to report failure in the + Testing random sw long double -> double conversions + If -ieee is used, the converted doubles spread over the range 0.0 to 1**-308. + If -ieee is not used, the converted double values are mostly 0.0 but + occasionally as 1**-308. This has been reported to the system staff. + All other tests have passed. + +* 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 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 HDF make files and test scripts 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. + +%%%%1.6.2%%%% Release Information for hdf5-1.6.2 (12/February/04) + +HDF5 version 1.6.2 released on Thu Feb 12 14:18:13 CST 2004 +================================================================================ + + +INTRODUCTION + +This document describes the differences between HDF5-1.6.1 and +HDF5-1.6.2, and contains information on the platforms tested and +known problems in HDF5-1.6.2. For more details check the HISTORY.txt +file in the HDF5 source. + +The HDF5 documentation can be found on the NCSA ftp server +(ftp.ncsa.uiuc.edu) in the directory: + + /HDF/HDF5/docs/ + +For more information look at the HDF5 home page at: + + http://hdf.ncsa.uiuc.edu/HDF5/ + +If you have any questions or comments, please send them to: + + hdfhelp@ncsa.uiuc.edu + +CONTENTS + +- New Features +- Support for new platforms and languages +- Bug Fixes since HDF5-1.6.1 +- Documentation +- Platforms Tested +- Supported Configuration Features Summary +- Known Problems + + +New Features +============ + + Configuration: + -------------- + - Default of $prefix is changed to $PWD/hdf5 so that multiple + builds using --srcdir is possible in the same machine. + AKC - 2003/12/1 + + Library: + -------- + - Added H5Iget_ref, H5Iinc_ref and H5Idec_ref routines to the C + library and the FORTRAN wrapper. See the reference manual for a + full description of these new routines. QAK - 2003/12/11 + + Parallel Library: + ----------------- + - The parallel tests in testpar/ now provides different levels of + verbosity via the '-v' option. The default is less verbose + than before. AKC - 2004/01/23 + - Added parallel test, test_mpio_1wMr, which tests if the + underlaying parallel I/O system is conforming to the POSIX + write/read requirement. This version includes options of using + atomicity and file-sync. AKC - 2003/11/27 + + Tools: + ------ + - Added option -showconfig to compiler tools (h5cc,h5fc,h5c++). + AKC - 2004/01/08 + - Install the "h5cc" and "h5fc" tools as "h5pcc" and "h5pfc" + respectively if library is built in parallel mode. AKC - 2004/01/07 + - Added metadata benchmark (perform/perf_meta). SLU - 2003/10/03 + + C++ API: + -------- + + +Support for new platforms, languages and compilers. +======================================= + - HDF5 Fortran APIs are supported on MAC OSX with IBM XL Fortran compiler + version 8.1 Beta + Use --disbale-shared --enable-static flags with configure when + building HDF5 Fortran Library on MAC OSX. + - C and C++ Libraries are available for Linux64 RH8 + - C, C++ and Fortran sequential Libraries, and C and Fortran parallel + Libraries are available for Altix (Linux ia64) + +Bug Fixes since HDF5-1.6.1 release +================================== + + Library + ------- + - Fixed problem with H5Tget_native_type() not handling opaque fields + correctly. QAK - 2004/01/31 + - Fixed several errors in B-tree deletion code which could cause a + B-tree (used with groups and chunked datasets) to become corrupt + with the right sequence of deleted objects. QAK - 2004/01/19 + - Fixed small internal memory leaks of fill-value information. + QAK - 2004/01/13 + - Fixed bug that caused variable-length datatypes (strings or sequences) + used for datasets in files with objects that were unlinked to + fail to be read/written to a file. QAK - 2004/01/13 + - Detect situation where szip 'pixels per block' is larger than the + fastest changing dimension of a dataset's chunk size and disallow + this (due to limits in szip library). QAK - 2003/12/31 + - Fixed bug with flattened hyperslab selections that would generate + incorrect hyperslab information with certain high-dimensionality + combinations of start/stride/count/block information. + QAK - 2003/12/31 + - Fixed bug with variable-length datatypes used in compound datatypes. + SLU - 2003/12/29 + - Fixed bug in parallel I/O routines that would cause reads from + "short datasets" (datasets which were only partially written out) + to return invalid data. QAK & AKC - 2003/12/19 + - Fixed bug where scalar dataspaces for attributes were reporting as + simple dataspaces. QAK - 2003/12/13 + - Fixed problem with selection offsets of hyperslab selections in + chunked datasets causing the library to go into an infinite loop. + QAK - 2003/12/13 + - Fixed H5Giterate to avoid re-using index parameter after iteration + callback has been called (allows iteration callback to modify the + index parameter itself). QAK - 2003/12/06 + - Fixed various floating-point conversion problems, including a + change which could corrupt data when converting from double->float. + QAK - 2003/11/24 + - Changed "single process" metadata writing in library to collective + I/O by all processes, in order to guarantee correct data being + written with MPI-I/O. QAK - 2003/11/20 + - Fixed problems with fill values and variable-length types and also + I/O on VL values that were set to NULL. QAK - 2003/11/08 + - Fixed problems with MPI datatypes that caused ASCI Q machine to + hang. QAK - 2003/10/28 + - Removed HDF5_MPI_PREFER_DERIVED_TYPES environment variable support, + since it had no benefit. QAK - 2003/10/28 + - Single hyperslab selections (which were set with only one call to + H5Sselect_hyperslab) that had dimensions that could be "flattened" + but were interspersed with dimensions that could not be flattened + were not correctly handled, causing core dumps. QAK - 2003/10/25 + - Avoid metadata cache from preempting current dataset object header + when looking up information about the named datatype that the + dataset uses. QAK - 2003/10/20 + + Configuration + ------------- + - Parallel I/O with the MPI-I/O driver will no longer work if the + filesystem is not POSIX compliant. The "HDF5_MPI_1_METAWRITE" + environment variable has been removed. QAK - 2004/01/30 + + Performance + ------------- + - More optimizations to inner loops of datatype conversions for + integers and floats which give a 10-50% speedup. QAK - 2003/11/07 + - Hoisted invariant 'if/else's out of inner datatype conversion loop for + integer and floating-point values, giving about a 20% speedup. + QAK - 2003/10/20 + + Tools + ----- + - Fixed h5redeploy which sometimes complain too many argument for the + test command. (The complain did not hinder the h5redploy to proceed + correctly.) AKC - 2003/11/03 + + Documentation + ------------- + + +Documentation +============= + + + +Platforms Tested +================ + + AIX 5.1 (32 and 64-bit) xlc 6.0.0.2 + xlf 8.1.0.3 + xlC 6.0.0.4 + xlc 5.0.2.5 + xlf 7.1.1.2 + xlC 5.0.2.5 + mpcc_r 5.0.2.5 + mpxlf_r 7.1.1.2 + poe 3.2.0.10 + Cray T3E sn6606 2.0.6.08 Cray Standard C Version 6.6.0.2 + Cray Fortran Version 3.6.0.2 + Cray SV1 sn9617 10.0.1.2 Cray Standard C Version 6.6.0.2 + Cray Fortran Version 3.6.0.2 + Cray T90IEEE 10.0.0md Cray Standard C Version 6.4.0.3 + Cray Fortran Version 3.4.0.0 + FreeBSD 4.9 gcc 2.95.4 + g++ 2.95.4 + HP-UX B.11.00 HP C HP92453-01 A.11.01.20 + HP F90 v2.4 + HP ANSI C++ B3910B A.03.13 + MPIch 1.2.4 + IRIX64 6.5 (64 & n32) MIPSpro cc 7.3.1.3m + F90 MIPSpro 7.3.1.3m (64 only) + C++ MIPSpro cc 7.3.1.3m + Linux 2.4.18 gcc 2.96, 3.3.2 + g++ 3.3.2 + Intel(R) C++ Version 7.1 + Intel(R) Fortran Compiler Version 7.1 + PGI compilers (pgcc, pgf90, pgCC) version 5.0-2 + MPIch 1.2.4 + Linux 2.4.20-8 gcc 3.3.2 + PGI compilers (pgcc, pgf90, pgCC) version 5.0-2 + MPIch 1.2.4 + Linux 2.4.21-2.9.5ws #3 gcc 3.2.3 (Red Hat Linux 3.2.3-16) + SMP x86_64 g++ 3.2.3 + Linux 2.4.19-SMP x86_64 gcc (GCC) 3.2.2 (SuSE Linux) + g++ 3.2.2 + + Linux 2.4.21-sgi Altix + SMP ia64 Intel(R) C++ Version 7.1 + Intel(R) Fortran Itanium(R) Version 7.1 + SGI MPI + OSF1 V5.1 Compaq C V6.4-014 + Compaq Fortran V5.5-2602 + Compaq Fortran V5.5-1877 + Compaq C++ V6.5-033 + Compaq C++ V6.5-030 + MPI_64bit_R13 + SunOS 5.7(32 and 64 bit) WorkShop Compilers 5.0 98/12/15 C 5.0 + (Solaris 2.7) WorkShop Compilers 5.0 98/12/15 C++ 5.0 + WorkShop Compilers 5.0 98/10/25 + FORTRAN 90 2.0 Patch 107356-04 + SunOS 5.8(32 and 64 bit) Sun WorkShop 6 update 2 C 5.3 + (Solaris 2.8) Sun WorkShop 6 update 2 Fortran 90 + Sun WorkShop 6 update 2 C++ 5.3 + TFLOPS r1.0.4 v4.4.2 i386 pgcc Rel 3.1-4i with mpich-1.2.4 with + local modifications + IA-32 Linux 2.4.18 gcc 2.96 + Intel(R) C++ Version 7.0 + Intel(R) Fortran Compiler Version 7.0 + + IA-64 Linux 2.4.16 ia64 gcc version 3.0.4 + Intel(R) C++ Version 7.1 + Intel(R) Fortran Compiler Version 7.1 + + IA-64 Linux 2.4.21.SuSE_128.bef1 ia64 + Intel(R) C++ Version 7.1 + Intel(R) Fortran Compiler Version 7.1 + mpich-gm-1.2.5..intel + + Windows 2000 (NT5.0) MSVC++ 6.0 + DEC Visual Fortran 6.0 + Intel C and F90 compilers version 7.1 + Code Warrior 8.0 + Windows XP MSVC++.NET + MAC OS X Darwin 7.2 + gcc and g++ Apple Computer, Inc. GCC + version 1175, based on gcc version 3.3.2 + IBM XL Fortran version 8.1 Beta + + + +Supported Configuration Features Summary +======================================== + +Key: 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 + +Platform C C F90 F90 C++ Shared zlib + parallel parallel libraries (4) +Solaris2.7 64-bit y y (1) y y (1) y y y +Solaris2.7 32-bit y y (1) y y (1) y y y +Solaris2.8 64-bit y y (1) y y (1) y y y +Solaris2.8 32-bit y y y y (1) y y y +IRIX64_6.5 64-bit y y (2) y y y y y +IRIX64_6.5 32-bit y y (2) n n n y y +HPUX11.00 y y (1) y y y y y +OSF1 v5.1 y y y y y y y +T3E y y (5) y y (5) n n y +SV1 y y (5) y y (5) n n y +T90 IEEE y y (5) y y (5) n n y +TFLOPS n y (1) n n n n y +AIX-5.1 32-bit y y y y y n y +AIX-5.1 64-bit y y y y y n y +WinXP Visual Studio (7) y n n n y y y +WinXP Intel y n n n y y y +WinXP CW y n n n n n y +Win2000 Visual Studio y n y n y y y +Win2000 Intel y n y n y y y +Mac OS X 10.3 y n y n y y y +FreeBSD 4.9 y y (1) n n y y y +RedHat 7, 8 & 9 ia32 y y (1) y(PGI) n y y y + W gcc (3) +RedHat 7.3 ia32 W Intel (3) y n y n y n y +RedHat 7.3 ia32 W PGI (3) y n y n y n y +RedHat 7 ia32 C Intel (3) y n y n y n y +RedHat 7.1 ia64 C Intel (3) y n y n y n y +RedHat 8 & SuSe x86_64 y n n n y n y + gcc (3) +Linux 2.4 SGI Altix ia64 y n y n y y y + Intel (3) + + +Platform static- Thread- SZIP GASS STREAM- High- H4/H5 + exec safe VFD level tools + APIs (6) +Solaris2.7 64-bit x y y n y y n +Solaris2.7 32-bit x y y n y y y +Solaris2.8 64-bit x y y n y y n +Solaris2.8 32-bit x y y n y y y +IRIX64_6.5 64-bit x y y y y y y +IRIX64_6.5 32-bit x y y y y y y +HPUX11.00 x n y n y y y +OSF1 v5.1 y n y n y y y +T3E y n n n y y y +SV1 y n n n y y y +T90 IEEE y n n n y y n +TFLOPS y n n n n n n +AIX-5.1 32-bit y n y n y y y +AIX-5.1 64-bit y n y n y y y +WinXP Visual Studio y n y n n y y +WinXP Intel y n y n n y y +WinXP CW y n y n n y y +Win2000 Visual Studio y n y n n y y +Win2000 Intel y n y n n y y +Mac OS X 10.3 y n y n y y n +FreeBSD 4.9 y y y n y y y +RedHat 7, 8 & 9 ia32 y y y n y y y + W gcc (3) +RedHat 7.3 ia32 W Intel (3) y n y n y n n +RedHat 7.3 ia32 W PGI (3) y n y n y n n +RedHat 7 ia32 C Intel (3) y n y n y y y +RedHat 7.1 ia64 C Intel (3) y n y n y y y +RedHat 8 & SuSe x86_64 y n y n y y y + gcc (3) +Linux 2.4 SGI Altix ia64 y n y n y y y + Intel (3) + + +Compiler versions for each platform are listed in the "Platforms Tested" +table found elsewhere in this file (RELEASE.txt). Unless otherwise noted, +compilers used are the system compilers. + +Footnotes: (1) Using mpich 1.2.4. + (2) Using mpt and mpich 1.2.4. + (3) Linux 2.4 with GNU, Intel, and PGI compilers, as indicated. + W or C indicates workstation or cluster, respectively. + (4) Shared libraries are provided only for the C library, + except on Windows where they are provided for C and C++. + (5) Using mpt. + (6) Includes the H4toH5 Library and the h4toh5 and h5toh4 + utilities. + + +Known Problems +============== +* Fortran subroutine h5pget_driver_f doesn't return a correct driver information. + +* There are two h5dump xml tests(h5dump --xml thlink.h5 and h5dump --xml tmany.h5) + failed on windows xp with .NET for debug and debug dll. Release and Release + dll work fine. + +* The h5dump tests may fail to match the expected output on some platforms + (e.g. parallel jobs, Windows) where the error messages directed to + "stderr" do not appear in the "right order" with output from stdout. + This is not an error. + +* The stream-vfd test uses ip port 10007 for testing. If another + application is already using that port address, the test will hang + indefinitely and has to be terminated by the kill command. To try the + test again, change the port address in test/stream_test.c to one not + being used in the host. + +* 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 don't use this option on these platforms + during configuration. + +* The Stream VFD was not tested yet under Windows. It is not supported + in the TFLOPS machine. + + +* The ./dsets tests failed in 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. + +* Certain platforms give false negatives when testing h5ls: + - Cray J90 and Cray T90IEEE give errors during testing when displaying + some floating-point values. These are benign differences due to + the different precision in the values displayed and h5ls appears to + be dumping floating-point numbers correctly. + +* Before building HDF5 F90 Library from source on Crays + replace H5Aff.f90, H5Dff.f90 and H5Pff.f90 files in the fortran/src + subdirectory in the top level directory with the Cray-specific files + from the site: + ftp://hdf.ncsa.uiuc.edu/pub/outgoing/hdf5/hdf5-1.6.2/F90_source_for_Crays + +* On some platforms that use Intel compilers to build HDF5 fortran library, + compilation may fail for fortranlib_test.f90, fflush1.f90 and fflush2.f90 + complaining about exit subroutine. Comment out the line + IF (total_error .ne. 0) CALL exit (total_error) + +* On IA32 and IA64 systems, if you use a compiler other than GCC (such as + Intel's ecc or icc compilers), you will need to modify the generated + "libtool" program after configuration is finished. On or around line 104 of + the libtool file, there are lines which look like: + + # How to pass a linker flag through the compiler. + wl="" + + change these lines to this: + + # How to pass a linker flag through the compiler. + wl="-Wl," + + UPDATE: This is now done automatically by the configure script. However, if + you still experience a problem, you may want to check this line in the + libtool file and make sure that it has the correct value. + +* Information about building with PGI and Intel compilers is available in + INSTALL file sections 5.7 and 5.8 + +* In LANL QSC, the new cc compiler has problems converting small values of + long long (absolute values less than 1**-308) to double. This triggers + the test/dtypes to report failure in the + Testing random sw long double -> double conversions + If -ieee is used, the converted doubles spread over the range 0.0 to 1**-308. + If -ieee is not used, the converted double values are mostly 0.0 but + occassionaly as 1**-308. This has been reported to the system staff. + All other tests have passed. + +* On AIX 5.1 when 64-bit parallel C Library is built with zlib configured in, + compilation fails for H5Zdeflate.c. To bypass the problem, remove "const" + definition in front of H5Z_DEFLATE in H5Zpkg.h line 29. + +%%%%1.6.1%%%% Release Information for hdf5-1.6.1 (16/October/03) + +15. Release information for HDF5 version 1.6.1 +================================================ + +INTRODUCTION + +This document describes the differences between HDF5-1.6.0 and +HDF5-1.6.1, and contains information on the platforms tested and +known problems in HDF5-1.6.1. For more details check the HISTORY.txt +file in the HDF5 source. + +The HDF5 documentation can be found on the NCSA ftp server +(ftp.ncsa.uiuc.edu) in the directory: + + /HDF/HDF5/docs/ + +For more information look at the HDF5 home page at: + + http://hdf.ncsa.uiuc.edu/HDF5/ + +If you have any questions or comments, please send them to: + + hdfhelp@ncsa.uiuc.edu + +CONTENTS + +- New Features +- Support for new platforms and languages +- Bug Fixes since HDF5-1.6.0 +- Documentation +- Platforms Tested +- Known Problems + + +New Features +============ + + Configuration: + -------------- + + Library: + -------- + - Added new fields to the H5G_stat_t for more information about an + object's object header. QAK 2003/10/06 + - Added new H5Fget_freespace() routine to query the free space in a + given file. QAK 2003/10/06 + + Parallel Library: + ----------------- + + Tools: + ------ + + C++ API: + -------- + - Added overloaded functions read and write to H5::Attribute. + BMR - 2003/04/21 + - Added an overloaded constructor H5::StrType so the need to separately + set the length of the string type can be eliminated. BMR - 2003/04/21 + - Added overloaded functions read and write to H5::DataSet. + BMR - 2003/04/27 + + The following items were added but not documented in previous releases: + + - On windows, any application, that uses the C++ API dll, must + include the name HDF5CPP_USEDLL in its project setting. (Feb 17, 2002) + BMR - 2003/10/10 + - Added missing default constructor H5::H5File. (Apr 26, 2002) + BMR - 2003/10/10 + - Added new member function H5::DataSet::fillMemBuf per the new C + API H5Dfill, which fills the elements in a selection for a memory + buffer with a fill value. (May 16, 2002) BMR - 2003/10/10 + - Added the new member function getMemberIndex to H5::EnumType + and H5::CompType to match the new C API H5Tget_member_index. Given + the name of a member of an enumeration or compound datatype, this + new function queries the index of the member. (May 16, 2002) + BMR - 2003/10/10 + - Added these member functions to H5::Group per the new C functions + H5Gget_num_objs, H5Gget_objname_by_idx and H5Gget_objtype_by_idx: + + getNumObjs: Returns the number of objects in the group. + + getObjnameByIdx: Retrieves the name of an object in a group, + given an index + + getObjTypeByIdx: Returns the type of an object in a group, + given an index + (Jan 20, 2003) BMR - 2003/10/10 + + +Support for new platforms, languages and compilers. +======================================= + - gcc 3.3.1 is supported on Linux. + + +Bug Fixes since HDF5-1.6.0 release +================================== + + Library + ------- + - Fixed incorrect datatype of the third parameter to the Fortran90 + h5pset(get)_cache_f functions (INTEGER to INTEGER(SIZE_T)) EIP - 2003/10/13 + - Fixed problems with accessing variable-length data datatypes on + Crays. QAK - 2003/10/10 + - Fixed potential file corruption bug when too many object header + messages (probably attributes, from a user perspective) were + inserted into an object header and certain other conditions were + met. QAK - 2003/10/08 + - Changed implementation of internal ID searching algorithm to avoid + O(n) behavior for many common cases. QAK - 2003/10/06 + - Allow partial parallel writing to compact datasets. QAK - 2003/10/06 + - Correctly create reference to shared datatype in attribute, instead + of making a copy of the shared datatype in the attribute. + QAK - 2003/10/01 + - Revert changes which caused files >2GB to fail when created with + MPI-I/O file driver on certain platforms. QAK - 2003/09/16 + - Allow compound datatypes to grow in size. SLU - 2003/09/10 + - Detect if a type is already packed before attempting to pack it + again or check if it is locked. SLU - 2003/09/10 + - Corrected bug when opening a file twice with read-only permission + for one open and then closing the read-only access file ID would + generate an error. QAK - 2003/09/10 + - Corrected bug in repeated calls to H5Pget_access_plist() which would + incorrectly manage reference counts of internal information and + eventually blow up. QAK - 2003/09/02 + - Return rank of the array datatype on successful call to + H5Tget_array_dims(). QAK - 2003/08/30 + - Corrected bug in H5Tdetect_class which was not correctly detecting + datatype classes of fields in nested compound datatypes in some + circumstances. QAK - 2003/08/30 + - Corrected bug in sieve buffer code which could cause loss of data + when a small dataset was created and deleted in quick succession. + QAK - 2003/08/27 + - Corrected bug in H5Gget_objname_by_idx which was not allowing NULL + for the name when just querying for the object name's length. + QAK - 2003/08/25 + - Corrected bug in variable-length string handling which could + generate a core dump on writing variable-length strings as part + of a compound datatype on certain architectures. QAK - 2003/08/25 + - Corrected bug in H5Tget_native_type which would incorrectly compute + the size of certain compound datatypes and also incorrectly + compute the offset of the last field for those compound datatypes. + QAK - 2003/08/25 + - Corrected bug in H5Tget_native_type which would drop string datatype + metadata (padding, etc.) QAK - 2003/08/25 + - Corrected bugs in H5Gget_num_objs, H5Gget_objname_by_idx and + H5Gget_objtype_by_idx to allow them to accept location IDs, not just + group IDs. QAK - 2003/08/21 + - Corrected bug when using scalar dataspace for memory selection and + operating on chunked dataset. QAK - 2003/08/18 + - Corrected bugs with multiple '/' characters in names for H5Glink + and H5Gunlink. QAK - 2003/08/16 + - Corrected bug with user blocks that didn't allow a user block to + be inserted in front of a file after the file was created. + QAK - 2003/08/13 + - Corrected errors with using point selections to access data in + chunked datasets. QAK - 2003/07/23 + - Corrected error with variable-length datatypes and chunked datasets + which caused H5Dwrite to fail sometimes. QAK - 2003/07/19 + - Modified library and file format to support storing indexed storage + (chunked dataset) B-tree's with non-default internal 'K' values. + QAK - 2003/07/15 + - Returned H5T_BKG_TEMP support to library after it was accidentally + removed. QAK - 2003/07/14 + + Configuration + ------------- + - Fixed the error that caused "make install" to fail because of the + macro definition syntax of "prefix?=..." AKC - 2003/07/22 + + Performance + ------------- + + Tools + ----- + - Fixed a segmentation fault of h5diff when percentage option is used. + AKC - 2003/08/27 + - Switched away from tools using internal "fixtype" function(s) to use + H5Tget_native_type() internally. QAK - 2003/08/25 + + Documentation + ------------- + - Added two missing Fortran APIs (h5pget_fapl_mpiposix_f and + h5pset_fapl_mpiposix_f) to the reference manual. + FMB - 2003/10/15 + - Corrected the reference manual descriptions of H5open/h5open_f and + H5close/h5close_f to indicate that these calls are required in + Fortran90 applications. FMB - 2003/10/15 + + +Documentation +============= + + Fortran90 APIs are being integrated into the main body of the + HDF5 Reference Manual (RM). This process is complete in all RM sections + except H5P. + + A PDF version of the RM will be posted on the HDF5 website + (at http://hdf.ncsa.uiuc.edu/HDF5/doc/PSandPDF/) approximately one week + after the release. + + +Platforms Tested +================ + + AIX 5.1 (32 and 64-bit) xlc 6.0.0.2 + xlf 8.1.0.3 + xlC 6.0.0.4 + xlc 5.0.2.5 + xlf 7.1.1.2 + xlC 5.0.2.5 + mpcc_r 5.0.2.5 + mpxlf_r 7.1.1.2 + poe 3.2.0.10 + Cray T3E sn6606 2.0.6.08 Cray Standard C Version 6.6.0.2 + Cray Fortran Version 3.6.0.2 + Cray SV1 sn9617 10.0.1.2 Cray Standard C Version 6.6.0.2 + Cray Fortran Version 3.6.0.2 + Cray T90IEEE 10.0.1.01y Cray Standard C Version 6.4.0.2.3 + Cray Fortran Version 3.4.0.3 + FreeBSD 4.9 gcc 2.95.4 + g++ 2.95.4 + HP-UX B.11.00 HP C HP92453-01 A.11.01.20 + HP F90 v2.4 + HP ANSI C++ B3910B A.03.13 + HP MPI 01.07.00.00 + IRIX 6.5 MIPSpro cc 7.3.1.2m + IRIX64 6.5 (64 & n32) MIPSpro cc 7.3.1.3m + F90 MIPSpro 7.3.1.3m (64 only) + MPIch 1.2.4 + Linux 2.4.18 gcc 2.96, 3.2.2, 3.3.1 + g++ 3.2.2, 3.2.3 + Intel(R) C++ Version 7.1 + Intel(R) Fortran Compiler Version 7.1 + PGI compilers (pgcc, pgf90, pgCC) version 4.0-2 + MPIch 1.2.4 + Linux 2.4.20-8 gcc 3.2.2 + OSF1 V5.1 Compaq C V6.4-014 + Compaq C V6.3-027 + Compaq Fortran V5.5-2602 + Compaq C++ V6.5-030 + MPI_64bit_R5 + g++ version 3.0 for C++ + SunOS 5.7(32 and 64 bit) WorkShop Compilers 5.0 98/12/15 C 5.0 + (Solaris 2.7) WorkShop Compilers 5.0 98/12/15 C++ 5.0 + WorkShop Compilers 5.0 98/10/25 + FORTRAN 90 2.0 Patch 107356-04 + SunOS 5.8(32 and 64 bit) Sun WorkShop 6 update 2 C 5.3 + (Solaris 2.8) Sun WorkShop 6 update 2 Fortran 90 + Sun WorkShop 6 update 2 C++ 5.3 + TFLOPS r1.0.4 v4.4.0 i386 pgcc Rel 3.1-4i with mpich-1.2.4 with + local modifications + IA-32 Linux 2.4.9 gcc 2.96 + Intel(R) C++ Version 7.0 + Intel(R) Fortran Compiler Version 7.0 + + IA-64 Linux 2.4.16 ia64 gcc version 2.96 20000731 + Intel(R) C++ Version 7.0 + Intel(R) Fortran Compiler Version 7.0 + Windows 2000 (NT5.0) MSVC++ 6.0 + DEC Visual Fortran 6.0 + Intel C and F90 compilers version 7.1 + Code Warrior 8.0 + Windows XP MSVC++.NET + MAC OS X Darwin 6.8 + gcc and g++ Apple Computer, Inc. GCC + version 1175, based on gcc version 3.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 + +Platform C C F90 F90 C++ Shared zlib + parallel parallel libraries (4) +Solaris2.7 64-bit y y (1) y y (1) y y y +Solaris2.7 32-bit y y (1) y y (1) y y y +Solaris2.8 64-bit y y (1) y y (1) y y y +Solaris2.8 32-bit y y y y (1) y y y +IRIX6.5 y y (1) n n n y y +IRIX64_6.5 64-bit y y (2) y y y y y +IRIX64_6.5 32-bit y y (2) n n n y y +HPUX11.00 y y (1) y y y y y +OSF1 v5.1 y y y y y y y +T3E y y (5) y y (5) n n y +SV1 y y (5) y y (5) n n y +T90 IEEE y y (5) y y (5) n n y +TFLOPS n y (1) n n n n y +AIX-5.1 32-bit y y y y y n y +AIX-5.1 64-bit y y y y y n y +WinXP (6) y n n n y y y +WinXP Intel y n n n y y y +Win2000 y n y n y y y +Win2000 Intel y n y n y y y +WinNT CW y n n n n n y +Mac OS X 10.2 y n n n y y y +FreeBSD y y (1) n n y y y +Linux 2.4 gcc (3) y y (1) y (PGI) n y y y +Linux 2.4 Intel (3) y n y n y n y +Linux 2.4 PGI (3) y n y n y n y +Linux 2.4 IA32 Intel y n y n y n y +Linux 2.4 IA64 Intel y n y n y n y + + +ASCII Table 2 -- for RELEASE.txt + +Platform static- Thread- SZIP GASS STREAM- High-level H4/H5 + exec safe VFD APIs tools (7) +Solaris2.7 64-bit x y y n y y n +Solaris2.7 32-bit x y y n y y y +Solaris2.8 64-bit x y y n y y n +Solaris2.8 32-bit x y y n y y y +IRIX6.5 x n y n y y y +IRIX64_6.5 64-bit x y y y y y y +IRIX64_6.5 32-bit x y y y y y y +HPUX11.00 x n y n y y y +OSF1 v5.1 y n y n y y y +T3E y n n n y y y +SV1 y n n n y y y +T90 IEEE y n n n y y n +TFLOPS y n n n n n n +AIX-5.1 32-bit y n y n y y y +AIX-5.1 64-bit y n y n y y y +WinXP (6) y n y n n y y +WinXP Intel y n y n n y y +Win2000 y n y n n y y +Win2000 Intel y n y n n y y +WinNT CW y n y n n y y +Mac OS X 10.2 y n y n y y n +FreeBSD y y y n y y y +Linux 2.4 gcc (3) y y y n y y y +Linux 2.4 Intel (3) y n y n y n n +Linux 2.4 PGI (3) y n y n y n n +Linux 2.4 IA32 Intel y n y n y y y +Linux 2.4 IA64 Intel y n y n y y y + + Notes: (1) Using mpich 1.2.4. + (2) Using mpt and mpich 1.2.4. + (3) Linux 2.4 with GNU, Intel, and PGI compilers, respectively. + (4) Shared libraries are provided only for the C library, except + on Windows where they are provided for C and C++. + (5) Using mpt. + (6) Binaries only; source code for this platform is not being + released at this time. + (7) Includes the H4toH5 Library and the h4toh5 and h5toh4 + utilities. + Compiler versions for each platform are listed in the preceding + "Platforms Tested" table. + + + +Known Problems +============== +* Fortran subroutine h5pget_driver_f doesn't return a correct driver information. + The fix willl be available in the 1.6.2 release. +* There are two h5dump xml tests(h5dump --xml thlink.h5 and h5dump --xml tmany.h5) + failed on windows xp with .NET for debug and debug dll. Release and Release + dll work fine. + +* The h5dump tests may fail to match the expected output on some platforms + (e.g. parallel jobs, Windows) where the error messages directed to + "stderr" do not appear in the "right order" with output from stdout. + This is not an error. + +* The stream-vfd test uses ip port 10007 for testing. If another + application is already using that port address, the test will hang + indefinitely and has to be terminated by the kill command. To try the + test again, change the port address in test/stream_test.c to one not + being used in the host. + +* 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 don't use this option on these platforms + during configuration. + +* With the gcc 2.95.2 compiler, HDF 5 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 Stream VFD was not tested yet under Windows. It is not supported + in the TFLOPS machine. + + +* The ./dsets tests failed in 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. + +* Certain platforms give false negatives when testing h5ls: + - Cray J90 and Cray T90IEEE give errors during testing when displaying + some floating-point values. These are benign differences due to + the different precision in the values displayed and h5ls appears to + be dumping floating-point numbers correctly. + +* Before building HDF5 F90 Library from source on Crays + replace H5Aff.f90, H5Dff.f90 and H5Pff.f90 files in the fortran/src + subdirectory in the top level directory with the Cray-specific files + from the site: + +* On some platforms that use Intel compilers to build HDF5 fortran library, + compilation may fail for fortranlib_test.f90, fflush1.f90 and fflush2.f90 + complaining about exit subroutine. Comment out the line + IF (total_error .ne. 0) CALL exit (total_error) + + ftp://hdf.ncsa.uiuc.edu/pub/outgoing/hdf5/hdf5-1.6.0/F90_source_for_Crays + +* On IA32 and IA64 systems, if you use a compiler other than GCC (such as + Intel's ecc or icc compilers), you will need to modify the generated + "libtool" program after configuration is finished. On or around line 104 of + the libtool file, there are lines which look like: + + # How to pass a linker flag through the compiler. + wl="" + + change these lines to this: + + # How to pass a linker flag through the compiler. + wl="-Wl," + + UPDATE: This is now done automatically by the configure script. However, if + you still experience a problem, you may want to check this line in the + libtool file and make sure that it has the correct value. + +* Information about building with PGI and Intel compilers is available in + INSTALL file sections 5.7 and 5.8 +%%%%1.6.0%%%% Release Information for hdf5-1.6.0 (03/July/03) + +14. Release information for HDF5 version 1.6.0 +================================================ + + +INTRODUCTION + +This document describes the differences between HDF5-1.4.* and +HDF5-1.6.0, and contains information on the platforms tested and +known problems in HDF5-1.6.0. For more details check the HISTORY.txt +file in the HDF5 source. + +The HDF5 documentation can be found on the NCSA ftp server +(ftp.ncsa.uiuc.edu) in the directory: + + /HDF/HDF5/docs/ + +For more information look at the HDF5 home page at: + + http://hdf.ncsa.uiuc.edu/HDF5/ + +If you have any questions or comments, please send them to: + + hdfhelp@ncsa.uiuc.edu + +CONTENTS + +- New Features +- Support for new platforms and languages +- Bug Fixes since HDF5-1.4.0 +- Platforms Tested +- Known Problems + + +New Features +============ + +Configuration: +-------------- +The following flags have been added to the configuration script: +--enable-hdf5v1_4 Compile the HDF5 v1.4 compatibility interface +--enable-filters=all Turn on all internal I/O filters. One may also + specify a comma-separated list of filters or the + word no. The default is all internal I/O filters. +--with-mpe=DIR Use MPE instrumentation [default=no] +--with-szlib=DIR Use szlib library for external szlib I/O filter + [default=no] + +Library: +-------- + Summary: This release has the following new features that are not + available in 1.4.* releases + + 1. Generic properties to give application more control on I/O pipeline + 2. Time allocation and fill value properties + 3. New filters: external compression filter szip + internal shuffling and checksum filters + 4. Compact storage layout for datasets + 5. Redesigned I/O pipeline for better performance. + + For more information see + http://hdf.ncsa.uiuc.edu/HDF5/doc_resource/SZIP/index.html + http://hdf.ncsa.uiuc.edu/HDF5/doc/ADGuide.html + http://hdf.ncsa.uiuc.edu/HDF5/doc/ADGuide/Changes.html + + Complete list of changes: + + * Changed dataset modification time to _not_ be updated when raw data is + written to a dataset. The modification time is only updated when the + dataset's metadata is modified. QAK - 2003/06/10 + * Changed H5Sget_select_bounds to use 'hssize_t *' for start and end + parameters, instead of 'hsize_t *', to better match other parts of the + dataspace API. QAK - 2003/06/04 + * Changed raw data I/O to only access each chunk once, improving performance + in many situations with hyperslabs and large chunks or chunks with + filters. These improvements are currently limited to serial I/O, with + similar parallel I/O improvements forthcoming sometime in the future. + QAK - 2003/05/07 + * Added parameter to the MPI/POSIX driver. If GPFS is enabled (by + modifying the H5FDmpiposix.c file to uncomment the USE_GPFS_HINTS + macro), then this extra parameter will turn GPFS hints on and off + during runtime. BW - 2003/05/05 + * Added option to print 1-byte integer datasets as ASCII to h5dump. BW - + 2003/04/30 + * Added a new utility "h5fc". It can be used to compile easily Fortran + programs which use HDF5. It automatically uses the compiler the HDF5 + library was built with and links in any libraries HDF5 requires. + BW - 2003/04/10 + * Added new dataset creation property list functions for working with + I/O filters: H5Pmodify_filter, H5Pget_filter_by_id and + H5Pall_filters_avail. Also changed H5Zregister to use new method + of registering filters with library. QAK - 2003/04/08 + * The first version of szip compression support were implemented. + User should have static szlib library installed. Using function + H5Pset_szip to pass the szip parameters to the HDF5 library. + More detailed decription of the process will be followed. + KY-2003/04/01 + * Added Fletcher32 checksum as a filter in pipeline. It only works in + chunked dataset. SLU - 2003/2/11 + * MPICH/MPE instrumentation feature added. Use --with-mpe[=DIR] to configure + it. AKC - 2003/1/3 + * New functions H5Gget_num_objs, H5Gget_objname_by_idx and H5Gget_objtype_by_idx + are added to the library. SLU - 2002/11/25 + * H5Dget_offset is added to return the offset of a dataset's data relative + to the beginning of the file. SLU - 2002/11/7 + * Functions H5Tget_native_type and H5Tis_variable_str are added. The first + one reconstructs a datatype based on native memory datatype. The second + one checks if a datatype is variable string. SLU - 2002/11/6 + * Added environment variable "HDF5_DISABLE_VERSION_CHECK", which disables + the version checking between the header files and the library linked into + an application if set to '1'. This should be used with caution, mis- + matched headers and library binaries can cause _serious_ problems. + QAK - 2002/10/15 + * Added new API function to get the name of an object in a file, using + an open ID (hid_t). QAK - 2002/10/14 + * Added API functions to return pointer to low-level file handle + (H5Fget_vfd_handle and H5FDget_vfd_handle) and related property list + setting functions(H5Pset_family_offset and H5Pset_multi_type). + SLU - 2002/09/30 + * Changed "H5P[set|get]_space_time" functions to "H5P[set|get]_alloc_time" + Unify all symbolic names for these functions to use "alloc time" instead + of other names. QAK - 2002/09/13 + * Added "H5D_SPACE_ALLOC_INCR" setting to H5D_SPACE_ALLOC_EARLY and + H5D_SPACE_ALLOC_LATE for H5Dset_space_time(). This allows chunked + datasets to be incrementally allocated as in the 1.4.x branch. + QAK - 2002/08/27 + * Compact dataset is added to the library. The data will be stored in + the header message of dataset layout. Space allocation time has to be + EARLY. No hyperslab is supported for parallel collective write. There + is no API changes except activating H5Pset_layout and H5Pget_layout for + compact dataset. -SLU, 2002/8/20 + * Added 'closing' parameter to VFL 'flush' callback function and H5FDflush. + This allows the library to indicate that the file will be closed + immediately following the call to 'flush' and can be used to avoid actions + that are duplicated in the VFL 'close' callback function. QAK - 2002/05/20 + * Added feature to parallel chunk allocation routine to not write fill + values to chunks allocated if the user has set the "fill time" to never. + This can improve parallel I/O performance for chunked + datasets. QAK - 2002/05/17 + * New functions H5Glink2 and H5Gmove2 were added to allow link and move to + be in different locations in the same file. The old functions H5Glink + and H5Gmove remain valid. SLU - 2002/04/26 + * Fill-value's behaviors for contiguous dataset have been redefined. + Basicly, dataset won't allocate space until it's necessary. Full details + are available at http://hdf.ncsa.uiuc.edu/RFC/Fill_Value, at this moment. + SLU - 2002/04/11 + * Added new routine "H5Dfill" to fill a selection with a particular value + in memory. QAK - 2002/04/09 + * Improved performance of "regular" hyperslab I/O when using MPI-IO and the + datatype conversion is unneccessary. QAK - 2002/04/02 + * Improved performance of single hyperslab I/O when datatype conversion is + unneccessary. QAK - 2002/04/02 + * Added new "H5Sget_select_type" API function to determine which type of + selection is defined for a dataspace ("all", "none", "hyperslab" or + "point"). QAK - 2002/02/07 + * Added support to read/write portions of chunks directly, if they are + uncompressed and too large to cache. This should speed up I/O on chunked + datasets for a few more cases. QAK - 2002/01/31 + * Added H5Rget_obj_type() API function, which performs the same functionality + as H5Rget_object_type(), but requires the reference type as a parameter + in order to correctly handle dataset region references. Moved + H5Rget_object_type() to be only compiled into the library when v1.4 + compatibility is enabled. + * Added a new file access property, file close degree, to control file + close behavior. It has four values, H5F_CLOSE_WEAK, H5F_CLOSE_SEMI, + H5F_CLOSE_STRONG, and H5F_CLOSE_DEFAULT. Two correspont functions + H5Pset_fclose_degree and H5Pget_fclose_degree are also provided. Two + new functions H5Fget_obj_count and H5Fget_obj_ids are offerted to assist + this new feature. For full details, please refer to the reference + manual under the description of H5Fcreate, H5Fopen, H5Fclose and the + functions mentioned above. + * Removed H5P(get|set)_hyper_cache API function, since the property is no + longer used. + * Improved performance of non-contiguous hyperslabs (built up with + several hyperslab selection calls). + * Improved performance of single, contiguous hyperslabs when reading or + writing. + * As part of the transition to using generic properties everywhere, the + parameter of H5Pcreate changed from H5P_class_t to hid_t, as well + the return type of H5Pget_class changed from H5P_class_t to hid_t. + Further changes are still necessary and will be documented here as they + are made. + * Improved regular hyperslab I/O by about a factor of 6 or so. + * Modified the Pablo build procedure to permit building of the instrumented + library to link either with the Trace libraries as before or with the + Pablo Performance Caputure Facility. + * Added new F90 APIs for generic properties, new filters, and + time/space allocation properties. + * C++ API: + - Added two new member functions: Exception::getFuncName() and + Exception::getCFuncName() to provide the name of the member + function, where an exception is thrown. + - IdComponent::operator= becomes a virtual function because + DataType, DataSpace, and PropList provide their own + implementation. The new operator= functions invoke H5Tcopy, + H5Scopy, and H5Pcopy to make a copy of a datatype, dataspace, + and property list, respectively. + +Parallel Library: +----------------- + +Tools: +------ + * When the "-S" option for "simple" output is chosen, h5ls now displays + modification times of datasets in UTC instead of local time. + QAK - 2003/06/06 + * h5diff to compare two HDF5 files was added + * h5import to import ascii and binary data to an HDF5 file was added. + Old h5import tool in the tools/misc directory was renamed to + h5createU8 to reflect its purpose. h5createU8 will be deleted in + 1.6.1 release. + * Two new scripts h5fc and h5c++ were added to compile F90 and C++ + HDF5 applications. + +Support for new platforms, languages and compilers. +======================================= + * Added C++ API support on HPUX11.00. BMR - 2003/03/19 + * Absoft compiler is supported for Fortran HDF5 Library. + When building with Absoft compiler, add -DH5_ABSOFT to + C compilation flags to get correct names of C functions + called by Fortran APIs. + + +Bug Fixes since HDF5-1.4.0 release +================================== + +Library +------- + * Don't attempt to perform collective I/O on chunked datasets with + parallel I/O. QAK - 2003/06/05 + * The library now correctly reuses space when objects are deleted in the + file. This should be handled correctly for every situation, except + datasets with variable-length datatypes are not returning the space they + use in the global heap currently. QAK - 2003/04/13 + * Fixed error in B-tree deletion routine which could cause groups to be + corrupted when objects are removed from them. + QAK - 2003/04/11 + * Fixed error in file space freeing code which could cause metadata to + fail to be written to the file. + QAK - 2003/04/11 + * -O caused errors in AIX 5.x platforms. Removed it from + --enable-production mode. AKC - 2003/03/31 + * Corrected memory/resource leaks in per-thread key information when + thread-safe operation was enabled. QAK - 2003/02/07 + * Improved error assertion for nil VL strings, making it fails with error + stack instead of just assertion failure. SLU - 2002/12/16 + * Added two new API functions: H5Zunregister & H5Zfilter_avail. + QAK - 2002/11/16 + * Add data shuffle filter(source code H5Zshuffle.c), the combination of the + shuffling and compression can make data compression better without suffering + much encoding and decoding CPU time for many application datasets(especially + for floating point data). This adds a new API function: H5Pset_shuffle. + KY - 2002/11/13 + * Allow scalar dataspaces to be used for parallel I/O. QAK - 2002/11/05 + * New functions H5Gget_comment(modification), H5Aget_storage_size, + H5Arename. SLU - 2002/10/29 + * Fixed an assertion of H5S_select_iterate that did not account for scalar + type that has no dimension sizes. AKC - 2002/10/15 + * Partially fixed space allocation inefficiencies in the file by + improving our algorithms for re-using freed space. QAK - 2002/08/27 + * Fixed data corruption problem which could occur when fill values were + written to a contiguously stored dataset in parallel. QAK - 2002/08/27 + * Fixed VL memory leak when data is overwritten. The heap objects holding + old data are freed. If the fill value writting time is set to + H5D_FILL_TIME_NEVER, the library prohibits user to create VL type dataset. + The library free all the heap objects storing VL type if there is nested + VL type(a VL type contains another VL type). SLU - 2002/07/10 + * Tweaked a few API functions to use 'size_t' instead of 'unsigned' or + 'hsize_t', which may cause errors in some cases. + + +Configuration +------------- + * Included the both the examples of fortran and c++ "make check-install" + testing. This tests the correctness of the h5fc command. AKC - 2003/04/22 + * When using gcc 3.x, we use -std=c99 instead of -ansi for compiling. + QAK - 2003/04/11 + * IA64 platform has its own configure setting and use Intel Compilers as + the default compilers (were gcc and pgf90 before.) This also eliminated + the segmentation fault in the fortran test. The missing reference of + "exit" is fixed too. AKC - 2003/04/02 + +Performance +------------- + * Improved dataset creation time by about 30% (relative to the 1.4.x + branch). + +Tools +----- + + * Added a -force option to h5redeploy. AKC - 2003/03/04 + * The VL string bug(data and datatype cannot be shown) in h5dump is fixed. + -SLU - 2002/11/18 + * Fixed segfault if h5dump was invoked with some options but no file + (e.g., h5dump -H). -AKC, 2002/10/15 + * Fixed so that the "-i" flag works correctly with the h5dumper. + * Fixed segfault when "-v" flag was used with the h5dumper. + + +Documentation +------------- + + + + + + +Platforms Tested +================ + + AIX 5.1 (32 and 64-bit) xlc 6.0.0.2 + xlf 8.1.0.3 + xlC 6.0.0.4 + xlc 5.0.2.5 + xlf 7.1.1.2 + xlC 5.0.2.5 + mpcc_r 5.0.2.5 + mpxlf_r 7.1.1.2 + poe 3.2.0.10 + Cray T3E sn6606 2.0.6.08 Cray Standard C Version 6.6.0.2 + Cray Fortran Version 3.6.0.0.2 + mpt 2.2.0.0 + Cray SV1 sn9617 10.0.1.2 Cray Standard C Version 6.6.0.2 + mpt 2.2.0.0 + Cray Fortran Version 3.6.0.0.2 + Cray T90IEEE 10.0.1.01y Cray Standard C Version 6.4.0.2.3 + Cray Fortran Version 3.4.0.3 + mpt 2.1.0.0 + FreeBSD 4.7 gcc 2.95.4 + g++ 2.95.5 + HP-UX B.11.00 HP C HP92453-01 A.11.01.20 + HP F90 v2.4 + HP ANSI C++ B3910B A.03.13 + MPIch 1.2.4 + IRIX 6.5 MIPSpro cc 7.30 + IRIX64 6.5 (64 & n32) MIPSpro cc 7.3.1.3m + F90 MIPSpro 7.3.1.3m (64 only) + MPIch 1.2.4 + Linux 2.4.18 gcc 2.96, 3.2.2, 3.2.3 + g++ 3.2.2, 3.2.3 + Intel(R) C++ Version 7.1 + Intel(R) Fortran Compiler Version 7.1 + PGI compilers (pgcc, pgf90, pgCC) version 4.0-2 + MPIch 1.2.4 + OSF1 V5.1 Compaq C V6.4-014 + Compaq C V6.3-027 + Compaq Fortran V5.5-1877 + Compaq C++ V6.5-014 + MPI_64bit_R5 + g++ version 3.0 for C++ + SunOS 5.7 WorkShop Compilers 5.0 98/12/15 C 5.0 + (Solaris 2.7) WorkShop Compilers 5.0 98/12/15 C++ 5.0 + WorkShop Compilers 5.0 98/10/25 + FORTRAN 90 2.0 Patch 107356-04 + SunOS 5.8/32 Sun WorkShop 6 update 2 C 5.3 + (Solaris 2.8) Sun WorkShop 6 update 2 Fortran 90 + Sun WorkShop 6 update 2 C++ 5.3 + SunOS 5.8/64 Sun WorkShop 6 update 2 C 5.3 + (Solaris 2.8) Sun WorkShop 6 update 2 Fortran 90 + Sun WorkShop 6 update 2 C++ 5.3 + TFLOPS r1.0.4 v4.3.3 i386 pgcc Rel 3.1-4i with mpich-1.2.4 with + local modifications + IA-32 Linux 2.4.9 gcc 2.96 + Intel(R) C++ Version 7.0 + Intel(R) Fortran Compiler Version 7.0 + + IA-64 Linux 2.4.16 ia64 gcc version 2.96 20000731 + Intel(R) C++ Version 7.0 + Intel(R) Fortran Compiler Version 7.0 + Windows 2000 (NT5.0) MSVC++ 6.0 + DEC Visual Fortran 6.0 + Intel C and F90 compilers version 7.1 + Code Warrior 8.0 + Windows XP MSVC++.NET + MAC OS X Darwin 6.5 + gcc and g++ Apple Computer, Inc. GCC + version 1161, based on gcc version 3.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 + +Platform C C F90 F90 C++ Shared zlib + parallel parallel libraries (4) +Solaris2.7 64-bit y y (1) y y (1) y y y +Solaris2.7 32-bit y y (1) y y (1) y y y +Solaris2.8 64-bit y y (1) y y (1) y y y +Solaris2.8 32-bit y y y y (1) y y y +IRIX6.5 y y (1) n n n y y +IRIX64_6.5 64-bit y y (2) y y y y y +IRIX64_6.5 32-bit y y (2) n n n y y +HPUX11.00 y y (1) y y y y y +OSF1 v5.1 y y y y y y y +T3E y y (5) y y (5) n n y +SV1 y y (5) y y (5) n n y +T90 IEEE y y (5) y y (5) n n y +TFLOPS n y (1) n n n n y +AIX-5.1 32-bit y y y y y n y +AIX-5.1 64-bit y y y y y n y +WinXP (6) y n n n y y y +WinXP Intel y n n n y y y +Win2000 y n y n y y y +Win2000 Intel y n y n y y y +WinNT CW y n n n n n y +Mac OS X 10.2 y n n n y y y +FreeBSD y y (1) n n y y y +Linux 2.4 gcc (3) y y (1) y (PGI) n y y y +Linux 2.4 Intel (3) y n y n y n y +Linux 2.4 PGI (3) y n y n y n y +Linux 2.4 IA32 Intel y n y n y n y +Linux 2.4 IA64 Intel y n y n y n y + + +ASCII Table 2 -- for RELEASE.txt + +Platform static- Thread- SZIP GASS STREAM- High-level H4/H5 + exec safe VFD APIs tools (7) +Solaris2.7 64-bit x y y n y y n +Solaris2.7 32-bit x y y n y y y +Solaris2.8 64-bit x y y n y y n +Solaris2.8 32-bit x y y n y y y +IRIX6.5 x n y n y y y +IRIX64_6.5 64-bit x y y y y y y +IRIX64_6.5 32-bit x y y y y y y +HPUX11.00 x n y n y y y +OSF1 v5.1 y n y n y y y +T3E y n n n y y y +SV1 y n n n y y y +T90 IEEE y n n n y y n +TFLOPS y n n n n n n +AIX-5.1 32-bit y n y n y y y +AIX-5.1 64-bit y n y n y y y +WinXP (6) y n y n n y y +WinXP Intel y n y n n y y +Win2000 y n y n n y y +Win2000 Intel y n y n n y y +WinNT CW y n y n n y y +Mac OS X 10.2 y n y n y y n +FreeBSD y y y n y y y +Linux 2.4 gcc (3) y y y n y y y +Linux 2.4 Intel (3) y n y n y n n +Linux 2.4 PGI (3) y n y n y n n +Linux 2.4 IA32 Intel y n y n y y y +Linux 2.4 IA64 Intel y n y n y y y + + Notes: (1) Using mpich 1.2.4. + (2) Using mpt and mpich 1.2.4. + (3) Linux 2.4 with GNU, Intel, and PGI compilers, respectively. + (4) Shared libraries are provided only for the C library, except + on Windows where they are provided for C and C++. + (5) Using mpt. + (6) Binaries only; source code for this platform is not being + released at this time. + (7) Includes the H4toH5 Library and the h4toh5 and h5toh4 + utilities. + Compiler versions for each platform are listed in the preceding + "Platforms Tested" table. + + + +Known Problems +============== + +* PGI C++ compiler fails when compiling the C++ library's tests. + Therefore, we cannot verify that the C++ library built with the PGI C++ + compiler is correct. + +* The h5dump tests may fail to match the expected output on some platforms + (e.g. parallel jobs, Windows) where the error messages directed to + "stderr" do not appear in the "right order" with output from stdout. + This is not an error. + +* The stream-vfd test uses ip port 10007 for testing. If another + application is already using that port address, the test will hang + indefinitely and has to be terminated by the kill command. To try the + test again, change the port address in test/stream_test.c to one not + being used in the host. + +* 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 don't use this option on these platforms + during configuration. + +* With the gcc 2.95.2 compiler, HDF 5 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 Stream VFD was not tested yet under Windows. It is not supported + in the TFLOPS machine. + + +* The ./dsets tests failed in 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. + +* Certain platforms give false negatives when testing h5ls: + - Cray J90 and Cray T90IEEE give errors during testing when displaying + some floating-point values. These are benign differences due to + the different precision in the values displayed and h5ls appears to + be dumping floating-point numbers correctly. + +* Before building HDF5 F90 Library from source on Crays + replace H5Aff.f90, H5Dff.f90 and H5Pff.f90 files in the fortran/src + subdirectory in the top level directory with the Cray-specific files + from the site: + +* On some platforms that use Intel compilers to build HDF5 fortran library, + compilation may fail for fortranlib_test.f90, fflush1.f90 and fflush2.f90 + complaining about exit subroutine. Comment out the line + IF (total_error .ne. 0) CALL exit (total_error) + + ftp://hdf.ncsa.uiuc.edu/pub/outgoing/hdf5/hdf5-1.6.0/F90_source_for_Crays + +* On IA32 and IA64 systems, if you use a compiler other than GCC (such as + Intel's ecc or icc compilers), you will need to modify the generated + "libtool" program after configuration is finished. On or around line 104 of + the libtool file, there are lines which look like: + + # How to pass a linker flag through the compiler. + wl="" + + change these lines to this: + + # How to pass a linker flag through the compiler. + wl="-Wl," + + UPDATE: This is now done automatically by the configure script. However, if + you still experience a problem, you may want to check this line in the + libtool file and make sure that it has the correct value. + +* Information about building with PGI and Intel compilers is available in + INSTALL file sections 5.7 and 5.8 +----------------------------------------------------------------------- +%%%%1.4.5%%%% Release Information for hdf5-1.4.5 (02/February/03) + + +13. Release information for HDF5 version 1.4.5 +============================================================================== + + +INTRODUCTION + +This document describes the differences between HDF5-1.4.4 and +HDF5-1.4.5, and contains information on the platforms tested and +known problems in HDF5-1.4.5. For additional information check the +HISTORY.txt file in the HDF5 source. + +The HDF5 documentation can be found on the NCSA ftp server +(ftp.ncsa.uiuc.edu) in the directory: + + /HDF/HDF5/docs/ + +For more information, see the HDF5 home page at: + + http://hdf.ncsa.uiuc.edu/HDF5/ + +If you have any questions or comments, please send them to: + + hdfhelp@ncsa.uiuc.edu + + +CONTENTS + +- New Features +- Bug Fixes since HDF5-1.4.4 +- Performance Improvements +- Documentation +- Platforms Tested +- Supported Configuration Features +- Known Problems + + +New Features +============ + o Configuration + ================ + * Added "unofficial support" for building with a C++ compiler (or at least + not failing badly when building with a C++ compiler). QAK - 2003/01/09 + * Added "unofficial support" for AIX 64bits. See INSTALL for configure + details. AKC - 2002/08/29 + * Added "--with-dmalloc" flag, to easily enable support for the 'dmalloc' + debugging malloc implementation. QAK - 2002/07/15 + + o Library + ========= + o General + --------- + * Allow scalar dataspaces to be used for parallel I/O. QAK - 2002/11/05 + * Added environment variable "HDF5_DISABLE_VERSION_CHECK", which disables + the version checking between the header files and the library linked + into an application if set to '1'. This should be used with caution, + mis-matched headers and library binaries can cause _serious_ problems. + QAK - 2002/10/15 + * Partially fixed space allocation inefficiencies in the file by + improving our algorithms for re-using freed space. QAK - 2002/08/27 + * API tracing has been improved. Nested API calls don't screw up the + output format; function call and return event times can be logged; + total time spent in each function can be logged. The following + HDF5_DEBUG environment variable words affect tracing: + trace -- turn on/off basic tracing + ttimes -- turn on tracing and report event times and + time spent in each API function. + ttop -- turn on tracing but display only top-level + API calls. + + o APIs + ------ + * Several missing fortran APIs have been added to the library: + + h5get_libversion_f h5tget_member_index_f h5dget_storage_size_f + h5check_version_f h5tvlen_create_f h5dvlen_get_max_len_f + h5garbage_collect_f h5dwrite_vl_f + h5dont_atexit_f h5dread_vl_f + + Functions h5dvlen_get_max_len_f, h5dwrite_vl_f, and h5dread_vl_f support + VL Length C APIs functionality for integer, real and string datatypes. + See HDF5 Reference Manual and HDF5 FORTRAN90 User's Notes for more + information and for the functions description. + + o Parallel library + ================== + * The MPI-posix virtual file driver makes gpfs_fcntl() hints to tell + the underlying GPFS file system to avoid prefetching byte range + tokens if USE_GPFS_HINTS is defined when this file is compiled. + This temporary solution is intended to be removed once the HDF5 + API supports the necessary functionality that makes it possible + for this sort of thing do be done at a higher software layer. + RPM - 2002/12/03 + * Added MPI-posix VFL driver. This VFL driver uses MPI functions to + coordinate actions, but performs I/O directly with POSIX sec(2) + (i.e. open/close/read/write/etc.) calls. This driver should _NOT_ + be used to access files that are not on a parallel filesystem. + The following API functions were added: + herr_t H5Pset_fapl_mpiposix(hid_t fapl_id, MPI_Comm comm); + herr_t H5Pget_fapl_mpiposix(hid_t fapl_id, MPI_Comm *comm/*out*/); + QAK - 2002/07/15 + + + + o Support for new platforms and languages + ========================================= + * C++ API now works on the Origin2000 (IRIX6.5.14.) BMR - 2002/11/14 + + + o Misc. + ========================================= + HDF5 1.4.5 works with Portland Group Compilers (pgcc, pgf90 and pgCC + version 4.0-2) on Linux 2.4 + + +Bug Fixes since HDF5-1.4.4 Release +================================== + * H5Fopen without the H5F_ACC_CREAT flag should not succeed in creating + a new file with the 'core' VFL driver. QAK - 2003/01/24 + * Corrected metadata caching bug in parallel I/O which could cause hangs + when chunked datasets were accessed with independent transfer mode. + QAK - 2003/01/23 + * Allow opening objects with unknown object header messages. + QAK - 2003/01/21 + * Added improved error assertion for nil VL strings. It return error + stack instead of a simple assertion. SLU - 2002/12/16 + * Fixed h5dump bug(cannot dump data and datatype) for VL string. + SLU - 2002/11/18 + * Fixed error condition where "none" selections were not being handled + correctly in serial & parallel. QAK - 2002/10/29 + * Fixed problem where optimized hyperslab routines were incorrectly + invoked for parallel I/O operations in collective mode. QAK - 2002/07/22 + * Fixed metadata corruption problem which could occur when many objects + are created in a file during parallel I/O. QAK - 2002/07/19 + * Fixed minor problem with configuration when users specified /usr/include + and /usr/lib for the --with-* options that some compilers can't + handle. BW - 2003/01/23 + + + +Documentation +============= + New PDF files are not available for this release. + + +Platforms Tested +================ + + AIX 5.1 (32 and 64-bit) C for AIX Compiler, Version 6 + xlf 8.1.0.2 + poe 3.2.0.11 + Cray T3E sn6606 2.0.6.08 Cray Standard C Version 6.6.0.1.3 + Cray Fortran Version 3.6.0.0.12 + Cray SV1 10.0.1. 0 Cray Standard C Version 6.6.0.1.3 + Cray Fortran Version 3.6.0.0.12 + Cray T90IEEE 10.0.1.01u Cray Standard C Version 6.4.0.2.3 + Cray Fortran Version 3.4.0.3 + FreeBSD 4.7 gcc 2.95.4 + g++ 2.95.5 + HP-UX B.11.00 HP C HP92453-01 A.11.01.20 + HP F90 v2.4 + IRIX 6.5 MIPSpro cc 7.30 + IRIX64 6.5 (64 & n32) MIPSpro cc 7.3.1.3m + F90 MIPSpro 7.3.1.3m (64 only) + Linux 2.4.18 gcc 3.2.1 + g++ 3.2.1 + Intel(R) C++ Version 6.0 + Intel(R) Fortran Compiler Version 6.0 + PGI compilers (pgcc, pgf90, pgCC) version 4.0-2 + pgf90 3.2-4 + OSF1 V5.1 Compaq C V6.4-014 + Compaq Fortran X5.4A-1684 + gcc version 3.0 for C++ + SunOS 5.7 WorkShop Compilers 5.0 98/12/15 C 5.0 + (Solaris 2.7) WorkShop Compilers 5.0 98/12/15 C++ 5.0 + WorkShop Compilers 5.0 98/10/25 + FORTRAN 90 2.0 Patch 107356-04 + SunOS 5.8/32 Sun WorkShop 6 update 1 C 5.2 2000/09/11 + (Solaris 2.8) Sun WorkShop 6 update 1 Fortran 95 6.1 + Patch 109503-07 2001/08/11 + Sun WorkShop 6 update 1 C++ 5.2 Patch + 109508-04 2001/07/11 + SunOS 5.8/64 Sun WorkShop 6 update 1 C 5.2 2000/09/11 + (Solaris 2.8) Sun WorkShop 6 update 1 Fortran 95 6.1 + Patch 109503-07 2001/08/11 + Sun WorkShop 6 update 1 C++ 5.2 Patch + 109508-04 2001/07/11 + TFLOPS r1.0.4 v4.3.3 i386 pgcc Rel 3.1-4i with mpich-1.2.4 with + local modifications + IA-32 Linux 2.4.9 gcc 2.96 + Intel(R) C++ Version 7.0 + Intel(R) Fortran Compiler Version 7.0 + + IA-64 Linux 2.4.16 ia64 gcc version 2.96 20000731 + Intel(R) C++ Version 7.0 + Intel(R) Fortran Compiler Version 7.0 + Windows 2000 (NT5.0) MSVC++ 6.0 + DEC Visual Fortran 6.0 + Windows XP .NET + Windows NT4.0 Code Warrior 6.0 + MAC OS X Darwin 6.2 + gcc and g++ Apple Computer, Inc. GCC + version 1161, based on gcc version 3.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 + + + Platform C C F90 F90 C++ Shared zlib + parallel parallel libraries (5) + Solaris2.6 y n y n y y y + Solaris2.7 64-bit y y (1) y y (1) y y y + Solaris2.7 32-bit y y (1) y y (1) y y y + Solaris2.8 64-bit y n y y (1) y y y + Solaris2.8 32-bit y n y y (1) y y y + IRIX6.5 y y (1) n n n y y + IRIX64_6.5 64-bit y y (2) y y y y y + IRIX64_6.5 32-bit y y (2) n n n y y + HPUX11.00 y y (1) y n n y y + OSF1 v5.1 y n y n y y y + T3E (6) y n y n n n y + SV1 y n y n n n y + T90 IEEE y n y n n n y + TFLOPS n y (1) n n n n y + AIX-5.1 32-bit y y y y y n y + AIX-5.1 64-bit y y y y y n y + WinXP (7) y n n n y y y + WinNT/2000 y n y n y y y + WinNT CW y n n n n n y + Mac OS X 10.2 y n n n y y y + FreeBSD y y (1) n n y y y + Linux 2.2 y y (1) y y (1) y y y + Linux 2.4 gcc (3) y y (1) y n y y y + Linux 2.4 Intel (3) y n y n n n y + Linux 2.4 PGI (3) y n y n y n y + Linux 2.4 IA32 y n y n n n y + Linux 2.4 IA64 y n y n n n y + + + Platform static- Thread- SRB GASS STREAM- + exec safe VFD + Solaris2.6 x y n n y + Solaris2.7 64-bit x y n n y + Solaris2.7 32-bit x y n n y + Solaris2.8 64-bit x n n n y + Solaris2.8 32-bit x y n n y + IRIX6.5 x n n n y + IRIX64_6.5 64-bit x y n y y + IRIX64_6.5 32-bit x y n y y + HPUX11.00 x n n n y + OSF1 v5.1 y n n n y + T3E (6) y n n n y + SV1 y n n n y + T90 IEEE y n n n y + TFLOPS y n n n n + AIX-5.1 32-bit y n n n y + AIX-5.1 64-bit y n n n y + WinXP (7) dna n n n n + WinNT/2000 dna n n n n + WinNT CW dna n n n n + Mac OS X 10.2 y n n n y + FreeBSD y y n n y + Linux 2.2 y y n n y + Linux 2.4 gcc (3) y y n n y + Linux 2.4 Intel (3) y n n n y + Linux 2.4 PGI (3) y n n n y + Linux 2.4 IA32 y n n n y + Linux 2.4 IA64 y n n n y + + Notes: (1) Using mpich 1.2.4. + (2) Using mpt and mpich 1.2.4. + (3) Linux 2.4 with GNU, Intel, and PGI compilers. + (4) No HDF4-related tools. + (5) Shared libraries are provided only for the C library, + except on Windows where they are provided for all languages. + (6) Debug mode only. + (7) Binaries only; source code for this platform is not being + released at this time. + + +Known Problems +============== + + * On Linux 2.4 IA64, Fortran test fails for h5dwrite_vl_f + for integer and real base datatypes. + + * When fortran library is built with Intel compilers, compilation + for fflush1.f90, fflush2.f90 and fortanlib_test.f90 will fail + complaining about EXEC function. Comment the call to EXEC subroutine + in each program, or get a patch for the HDF5 Fortran source code. + + * Fortran external dataset test fails on Linux 2.4 with pgf90 compiler. + + * On Windows, h5dump may abort printing if a VL string is longer than 4096 + bytes due to a compiler problem. It'll be fixed in v1.6 release. + + * Datasets or attributes which have a variable-length string datatype are + not printing correctly with h5dump and h5ls. + + * When a dataset with the variable-length datatype is overwritten, + the library can develop memory leaks that cause the file to become + unnecessarily large. This is planned to be fixed in the next release. + + * On the SV1, the h5ls test fails due to a difference between the + SV1 printf precision and the printf precision on other platforms. + + * The h5dump tests may fail to match the expected output on some + platforms (e.g. SP2 parallel, Windows) where the error messages + directed to "stderr" do not appear in the "right order" with output + from stdout. This is not an error. + + * The --enable-static-exec configure flag fails to compile for HP-UX + 11.00 platforms. + + * The executables are always dynamic on IRIX64 6.5(64 and n32) and + IRIX 6.5 even if they are configured with --enable-static-exec. + + * IRIX 6.5 fails to compile if configured with --enable-static-exec. + + * The executables are always dynamic on Solaris 2.7 ans 2.8(64 and n32) + even if they are configured with --enable-static-exec. + + * The HDF5_MPI_OPT_TYPES optimization code in the parallel HDF5 will cause + a hang in some cases when chunked storage is used. This is now set to + be off by default. One may turn it on by setting the environment + variable HDF5_MPI_OPT_TYPES to a non-zero value such as 1. + + * On OSF1 v5.1 and IA32 h5dumpgentst program that generates test files + for h5dump, gives segmentation fault. + + * On Windows platforms, C and Fortran tests fail with the debug DLL version + of the Library if built from all_withf90.zip file. + + * On Cray T3E (sn6606 2.0.6.08 unicosmk CRAY T3E) with Cray Standard C Version 6.6.0.1.3 + compiler optimization causes errors in many HDF5 Library tests. Use -g -h zero flags + to build HDF5 Library. + + * On Cray SV1 10.0.1. 0 datatype convertion test fails. Please check HDF FTP site + if patch is available. We will try to provide one in the nearest future. + + * For configuration, building and testing with Intel and PGI compilers see + corresponding section in INSTALL file. + + +%%%%1.4.4%%%% Release Information for hdf5-1.4.4 (02/July/02) + +12. Release information for HDF5 version 1.4.4 +============================================================================== + +INTRODUCTION + +This document describes the differences between HDF5-1.4.3 and +HDF5-1.4.4, and contains information on the platforms tested and +known problems in HDF5-1.4.4. For more details check the HISTORY.txt +file in the HDF5 source. + +The HDF5 documentation can be found on the NCSA ftp server +(ftp.ncsa.uiuc.edu) in the directory: + + /HDF/HDF5/docs/ + +For more information, see the HDF5 home page at: + + http://hdf.ncsa.uiuc.edu/HDF5/ + +If you have any questions or comments, please send them to: + + hdfhelp@ncsa.uiuc.edu + + +CONTENTS + +- New Features +- Bug Fixes since HDF5-1.4.3 +- Performance Improvements +- Documentation +- Platforms Tested +- Supported Configuration Features +- Known Problems + + +New Features +============ + o Configuration + ================ + * The H4 to H5 tools have been removed from the main source and placed + in a separate package. You can get these tools from the HDF ftp site + (ftp://hdf.ncsa.uiuc.edu/). The "--with-hdf4" command-line option + during configure is no longer valid. BW - 2002/06/25 + + o Library + ========= + o General + --------- + * Fill-value forward-compatibility with release 1.5 was added. SLU - + 2002/04/11 + * A new query function H5Tget_member_index has been added for compound + and enumeration data types. This function retrieves a member's index + by name. SLU - 2002/04/05 + * Added serial multi-gigabyte file size test. "test/big -h" shows + the help page. AKC - 2002/03/29 + + o APIs + ------ + * The F90 subroutines h5dwrite_f, h5dread_f, h5awrite_f, and h5aread_f + were overloaded with a "dims" argument of type INTEGER(HSIZE_T) to + specify the size of the array. We recommend using these subroutines + with the new type; module subroutines that accept "dims" as an i + INTEGER array of size 7 will be deprecated in release 1.6. + EIP - 2002/05/06 + + o Performance + ------------- + * Added internal "small data" aggregation, which can reduce the number of + actual I/O calls made, improving performance. QAK - 2002/06/05 + * Improved internal metadata aggregation, which can reduce the number of + actual I/O calls made, improving performance. Additionally, this can + reduce the size of files produced. QAK - 2002/06/04 + * Improved internal metadata caching, which can reduce the number of + actual I/O calls made by a substantial amount, improving + performance. QAK - 2002/06/03 + + + o Parallel library + ================== + * Fixed bug in parallel I/O routines where a collective I/O which used + MPI derived types, followed by an independent I/O would cause the library + to hang. QAK 2002/06/24 + * Added environment variable flag to control whether creating MPI derived + types is preferred or not. This can affect performance, depending on + which way the MPI-I/O library is optimized. The default is set to + prefer MPI derived types for collective raw data transfers; setting the + HDF5_MPI_PREFER_DERIVED_TYPES environment variable to "0" (i.e.: + "setenv HDF5_MPI_PREFER_DERIVED_TYPES 0") changes the preference to avoid + using them whenever possible. QAK - 2002/06/19 + * Changed MPI I/O routines to avoid creating MPI derived types (and thus + needing to set the file view) for contiguous selections within datasets. + This should result in some performance improvement for those types of + selections. QAK - 2002/06/18 + * Changed MPI type support for collective I/O to be enabled by default. + This can be disabled by setting the HDF5_MPI_OPT_TYPES environment + variable to the value "0". QAK - 2002/06/14 + * Allowed chunks in chunked datasets to be cached when parallel file is + opened for read-only access (bug #709). QAK - 2002/06/10 + * Changed method for allocating chunked dataset blocks to only allocate + blocks that don't already exist, instead of attempting to create all the + blocks all the time. This improves performance for chunked + datasets. QAK - 2002/05/17 + * Allowed the call to MPI_File_sync to be avoided when the file is going to + immediately be closed, improving performance. QAK - 2002/05/13 + * Allowed the metadata writes to be shared among all processes, easing the + burden on process 0. QAK - 2002/05/10 + + + o Tools + ======= + * h5redeploy utility was added. It updates HDF5 compiler tools + after the HDF5 software has been installed in a new location. + + + o Support for new platforms and languages + ========================================= + * Parallel Fortran Library works now on HP-UX B.11.00 Sys V. + EIP - 2002/05/06 + * Intel C++ and F90 compilers Version 6.0 are supported on Linux 2.4. + * Intel C++ compilers Version 6.0 are supported on Windows 2000. + + + o Misc. + ========================================= + * zlib has been moved out of the Windows source release. Users should go to + the ZLIB homepage(http://www.zlib.org) to download the corresponding + zlib library. + * The Windows binary release is built with the old version of the zlib + library. We expect users to use zlib 1.1.4 to build with the source + release. + * In the Windows-specific install document, we specify how to test backward + compatibility. However, in this release, we are not testing the backward + compatibility of HDF5. + + +Bug Fixes since HDF5-1.4.3 Release +================================== + * Fixed bug in chunking routines where they were using internal allocation + free routines, instead of malloc/free, preventing user filters from + working correctly. Chunks are now allocated/freed with malloc/free and + so should the chunks in user filters. QAK 2002/06/18 + * Fixed bug where regular hyperslab selection could get incorrectly + transferred when the number of elements in a row did not fit evenly + into the buffer provided. QAK 2002/06/12 + * Fixed bug (#499) which allowed an "empty" compound or enumerated datatype + (one with no members) to be used to create a dataset or to be committed + to a file. QAK - 2002/06/11 + * Fixed bug (#777) which allowed a compound datatype to be inserted into + itself. QAK - 2002/06/10 + * Fixed bug (#789) where creating 1-D dataset region reference caused the + library to go into infinite loop. QAK - 2002/06/10 + * Fixed bug (#699, fix provided by a user) where a scalar dataspace was + written to the file and then subsequently queried with the + H5Sget_simple_extent_type function; type was reported as H5S_SIMPLE + instead of H5S_SCALAR. EIP - 2002/06/04 + * Clear symbol table node "dirty" flag when flushing symbol tables to + disk, to reduce I/O calls made & improve performance. QAK - 2002/06/03 + * Fixed bug where an object's header could get corrupted in certain + obscure situations when many objects were created in the + file. QAK - 2002/05/31 + * Fixed bug where read/write intent in file IDs created with H5Freopen + was not being kept the same as the original file. QAK - 2002/05/14 + * Fixed bug where selection offsets were not being used when iterating + through point and hyperslab selections with + H5Diterate(). QAK - 2002/04/29 + * Fixed bug where the data for several level deep nested compound & + variable-length datatypes used for datasets were getting corrupted when + written to the file. QAK - 2002/04/17 + * Fixed bug where selection offset was being ignored for certain hyperslab + selections when optimized I/O was being performed. QAK - 2002/04/02 + * Fixed limitation in h5dumper with object names which reached over 1024 + characters in length. We can now handle arbitrarily larger sizes for + object names. BW - 2002/03/29 + * Fixed bug where variable-length string type did not behave as a + string. SLU - 2002/03/28 + * Fixed bug in H5Gget_objinfo() which was not setting the 'fileno' + of the H5G_stat_t struct. QAK - 2002/03/27 + * Fixed data corruption bug in hyperslab routines when contiguous + hyperslab that spans entire dimension and is larger than type + conversion buffer is attempted to be read. QAK - 2002/03/26 + + +Performance Improvements +======================== + This release of the HDF5 library has been extensively tuned to improve +performance, especially to improve parallel I/O performance. + Most of the specific information for particular performance improvements +is mentioned in the "New Features" and "Bug Fixes since HDF5-1.4.3" sections +of this document, but in general, the library should make fewer and larger +I/O requests when accessing a file. Additionally, improvements to the parallel +I/O portions of the library should have reduced the communications and barriers +used in various internal algorithms, improving the performance of the library. + However, with the extensive changes to some portions of the library that +were required for these improvements, some errors or unanticipated results may +have been introduced also. Please report any problems encountered to our +support team at hdfhelp@ncsa.uiuc.edu. + Hopefully these improvements will benefit all HDF5 applications, but if +there are particular I/O patterns that appear to be slower than necessary, +please send e-mail to hdfhelp@ncsa.uiuc.edu with a sample program showing the +problem behavior; we will look into the issue to see if it is possible to +address it. + + +Documentation +============= + * Documentation was updated for the hdf5-1.4.4 release. + * A new "HDF5 User's Guide" is under development. See + http://hdf.ncsa.uiuc.edu/HDF5/doc_dev_snapshot/H5_NewUG/current/. + * A "Parallel HDF5 Tutorial" is available at + http://hdf.ncsa.uiuc.edu/HDF5/doc/Tutor/. + * The "HDF5 Tutorial" is not distributed with this release. It is + available at http://hdf.ncsa.uiuc.edu/HDF5/doc/Tutor/. + + +Platforms Tested +================ + + AIX 4.3.3.0 (IBM SP powerpc) xlc 5.0.2.0 + mpcc_r 5.0.2.0 + xlf 07.01.0000.0002 + mpxlf 07.01.0000.0002 + AIX 4.3 (IBM SP RS6000) C for AIX Compiler, Version 5.0.2.0 + xlf 7.1.0.2 + poe 3.1.0.12 (includes mpi) + AIX 5.1 xlc 5.0.2.0 + xlf 07.01.0000.0002 + mpcc_r 5.0.2.0; mpxlf_r 07.01.0000.0002 + Cray T3E sn6711 2.0.5.57 Cray Standard C Version 6.5.0.3 + Cray Fortran Version 3.5.0.4 + Cray SV1 10.0.1.1 Cray Standard C Version 6.5.0.3 + Cray Fortran Version 3.5.0.4 + FreeBSD 4.6 gcc 2.95.4 + g++ 2.95.4 + HP-UX B.10.20 HP C HP92453-01 A.10.32.30 + HP F90 v2.3 + HP-UX B.11.00 HP C HP92453-01 A.11.01.20 + HP F90 v2.4 + HP-UX B.11.00 SysV HP C HP92453-01 A.11.01.20 + HP F90 v2.4 + HP MPI [not a product] (03/24/2000) B6060BA + IRIX 6.5 MIPSpro cc 7.30 + IRIX64 6.5 (64 & n32) MIPSpro cc 7.3.1.3m + F90 MIPSpro 7.3.1.3m (64 only) + Linux 2.4.9-31smp gcc 2.95.3 + g++ 2.95.3 + Intel(R) C++ Version 6.0 + Intel(R) Fortran Compiler Version 6.0 + MPICH 1.2.2 + Linux 2.2.18smp gcc 2.95.2 + gcc 2.95.2 with mpich 1.2.1 + g++ 2.95.2 + pgf90 3.2-4 + OSF1 V5.1 Compaq C V6.4-014 + Compaq Fortran V5.5-1877-48BBF + gcc version 3.0 for C++ + SunOS 5.7 WorkShop Compilers 5.0 98/12/15 C 5.0 + (Solaris 2.7) WorkShop Compilers 5.0 98/12/15 C++ 5.0 + WorkShop Compilers 5.0 98/10/25 + FORTRAN 90 2.0 Patch 107356-04 + SunOS 5.8/32 Sun WorkShop 6 update 1 C 5.2 2000/09/11 + (Solaris 2.8) Sun WorkShop 6 update 1 Fortran 95 6.1 + Patch 109503-07 2001/08/11 + Sun WorkShop 6 update 1 C++ 5.2 Patch + 109508-04 2001/07/11 + SunOS 5.8/64 Sun WorkShop 6 update 1 C 5.2 2000/09/11 + (Solaris 2.8) Sun WorkShop 6 update 1 Fortran 95 6.1 + Patch 109503-07 2001/08/11 + Sun WorkShop 6 update 1 C++ 5.2 Patch + 109508-04 2001/07/11 + TFLOPS r1.0.4 v4.2.2 i386 pgcc Rel 3.1-4i with mpich-1.2.3 with + local modifications + IA-32 Linux 2.4.9 cc Intel 5.0.1 + gcc 2.96 + Intel(R) C++ Version 6.0 + Intel(R) Fortran Compiler Version 6.0 + + IA-64 Linux 2.4.16 ia64 gcc version 2.96 20000731 + Intel(R) C++ Version 6.0 + Intel(R) Fortran Compiler Version 6.0 + Windows 2000 (NT5.0) MSVC++ 6.0 + DEC Visual Fortran 6.0 + Windows NT4.0 MSVC++ 6.0 + DEC Visual Fortran 6.0 + Windows NT4.0 Code Warrior 6.0 + + +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 + ( ) = footnote appears below second table + + + Platform C C F90 F90 C++ Shared zlib Tools + parallel parallel libraries(5) + Solaris2.6 y n y n y y y y + Solaris2.7 64 y y (1) y n y y y y + Solaris2.7 32 y y (1) y n y y y y + Solaris2.8 64 y n y n y y y y + Solaris2.8 32 y n y n y y y y + IRIX6.5 y y (1) n n n y y y + IRIX64_6.5 64 y y (2) y y n y y y + IRIX64_6.5 n32 y y (2) n n n y y y + HPUX10.20 y n y n n y y y + HPUX11.00 y n y n n y y y + HPUX11 SysV y y y y n y y y + OSF1 v5.1 y n y n y y y y + T3E y y y y n n y y + SV1 y n y n n n y y + TFLOPS n y (1) n n n n y y (4) + AIX-4.3 y y y y y n y y + AIX-5.1 y y y y n n y y + WinNT/2000 y n y n y y y y + WinNT CW y n n n n n y y + FreeBSD y n n n y y y y + Linux 2.2 y y (1) y n y y y y + Linux 2.4 y y (1) n n y y y y + Linux 2.4 Intel(6) y n y n y n y y + Linux 2.4 IA32 y n y n n n y y + Linux 2.4 IA64 y n y n n n y y + + + Platform 1.2 static- Thread- SRB GASS STREAM- + compatibility exec safe VFD + Solaris2.6 y x y n n y + Solaris2.7 64 y x y n n y + Solaris2.7 32 y x y n n y + Solaris2.8 64 y y n n n y + Solaris2.8 32 y x y n n y + IRIX6.5 y x n n n y + IRIX64_6.5 64 y x y n y y + IRIX64_6.5 n32 y x y n y y + HPUX10.20 y y n n n y + HPUX11.00 y x n n n y + HPUX11 SysV y x n n n y + OSF1 v5.1 y y n n n y + T3E y y n n n y + SV1 y y n n n y + TFLOPS y y n n n n + AIX-4.3 y y (3) n n n y + AIX-5.1 y y n n n y + WinNT/2000 y y n n n n + WinNT CW n n n n n n + FreeBSD y y y n n y + Linux 2.2 y y y n n y + Linux 2.4 y y y n n y + Linux 2.4 Intel(6) y y n n n y + Linux 2.4 IA32 y y n n n y + Linux 2.4 IA64 y y n n n y + + + Footnotes: (1) Using mpich. + (2) Using mpt and mpich. + (3) When configured with static-exec enabled, tests fail in + serial mode. + (4) No HDF4-related tools. + (5) Shared libraries are provided only for the C library, + except on Windows where they are provided for all languages. + (6) Linux 2.4 with Intel compilers. + + +Known Problems +============== + + * Datasets or attributes which have a variable-length string datatype are + not printing correctly with h5dump and h5ls. + + * When a dataset with the variable-length datatype is overwritten, + the library can develop memory leaks that cause the file to become + unnecessarily large. This is planned to be fixed in the next release. + + * On the SV1, the h5ls test fails due to a difference between the + SV1 printf precision and the printf precision on other platforms. + + * The h5dump tests may fail to match the expected output on some + platforms (e.g. SP2 parallel, Windows) where the error messages + directed to "stderr" do not appear in the "right order" with output + from stdout. This is not an error. + + * The --enable-static-exec configure flag fails to compile for HP-UX + 11.00 platforms. + + * The executables are always dynamic on IRIX64 6.5(64 and n32) and + IRIX 6.5 even if they are configured with --enable-static-exec. + + * IRIX 6.5 fails to compile if configured with --enable-static-exec. + + * The HDF5_MPI_OPT_TYPES optimization code in the parallel HDF5 will cause + a hang in some cases when chunked storage is used. This is now set to + be off by default. One may turn it on by setting the environment + variable HDF5_MPI_OPT_TYPES to a non-zero value such as 1. + + * On IA32 and IA64 systems, if you use a compiler other than GCC (such as + Intel's ecc or icc compilers), you will need to modify the generated + "libtool" program after configuration is finished. On or around line 104 + of the libtool file, there are lines which look like: + + # How to pass a linker flag through the compiler. + wl="" + + Change these lines to this: + + # How to pass a linker flag through the compiler. + wl="-Wl," + + * To build the Fortran library using Intel compilers, one has to + x modify the source code in the fortran/src directory to remove the + !DEC and !MS compiler directives. + x The build will fail in the fortran/test directory and then in the + fortran/examples directory; to proceed, edit the work.pcl files in + those directories to contain two lines + + work.pc + ../src/work.pc + + * To build the Fortran library on IA64 use + setenv CC "ecc -DIA64" + setenv F9X "efc -cl,work.pcl" + before running configure and see the steps described above. + + +%%%%1.4.3%%%% Release Information for hdf5-1.4.3 (18/Februaru/02) + +11. Release information for HDF5 version 1.4.3 +============================================================================== + + +INTRODUCTION + +This document describes the differences between HDF5-1.4.2 and +HDF5-1.4.3, and contains information on the platforms tested and +known problems in HDF5-1.4.2. For more details check the HISTORY.txt +file in the HDF5 source. + +The HDF5 documentation can be found on the NCSA ftp server +(ftp.ncsa.uiuc.edu) in the directory: + + /HDF/HDF5/docs/ + +For more information look at the HDF5 home page at: + + http://hdf.ncsa.uiuc.edu/HDF5/ + +If you have any questions or comments, please send them to: + + hdfhelp@ncsa.uiuc.edu + + +CONTENTS + +- New Features +- Bug Fixes since HDF5-1.4.2 +- Documentation +- Platforms Tested +- Supported Configuration Features +- Known Problems + + +New Features +============ + o Configuration + ================ + * Can use just enable-threadsafe if the C compiler has built-in pthreads + support. + + o Library + ========= + o General + --------- + * Added a new test to verify the information provided by the configure + command. + * Changed internal error handling macros to reduce code size of library by + about 10%. + + o APIs + ------ + * Changed prototype for H5Awrite from: + H5Awrite(hid_t attr_id, hid_t type_id, void *buf) + to: + H5Awrite(hid_t attr_id, hid_t type_id, const void *buf) + * The H5Pset_fapl_split() accepts raw and meta file names similar to the + syntax of H5Pset_fapl_multi() in addition to what it used to accept. + + C++ API: + * Added operator= to class PredType + * Add the overloaded member function Attribute::getName to return + the attribute name's length as in C API. Note that the current + Attribute::getName, that returns "string", is still available. + * Following the change in the C library, the corresponding C++ API + is changed from: + void Attribute::write( const DataType& mem_type, void *buf ) + to: + void Attribute::write( const DataType& mem_type, const void *buf ) + + o Performance + ------------- + * Added perform programs to test the HDF5 library performance. Programs + are installed in directory perform/. + * Improved performance of byte-swapping during data conversions. + * Improved performance of single, contiguous hyperslabs when reading or + writing. + * Added support to read/write portions of chunks directly, if they are + uncompressed and too large to cache. This should speed up I/O on chunked + datasets for a few more cases. -QAK, 1/31/02 + + o Parallel Library + ================== + * Parallel C HDF5 now works on HP-UX platforms, Compaq clusters, + Linux clusters, Cplants (alpha-linux clusters). + + o Tools + ======= + * A helper script called ``h5cc'', which helps compilation of HDF5 + programs, is now distributed with HDF5. See the reference manual + for information on how to use this feature. + * The H5Dumper can now dump comments associated with groups. -WCW 01-05-02 + + o Support for new platforms and languages + ========================================= + * HDF5 C++ Library is supported on Windows platforms (shared and static) + * HDF5 F90 shared library is supported on Windows platforms. + * HDF5 C Library is supported on IA32 and IA64 platforms. + + + +Bug Fixes since HDF5-1.4.2 Release +================================== + + * Fixed a bug when reading chunked datasets where the edge of the dataset + would be incorrectly detected and generate an assertion failure. + * Fixed a bug where reading an entire dataset wasn't being handled + optimally when the dataset had unlimited dimensions. Dataset is read + in a single low-level I/O now, instead of being broken into separate + pieces internally. + * Fixed a bug where reading or writing chunked data which needed datatype + conversion could result in data values getting corrupted. + * Fixed a bug where appending a point selection to the current selection + would not actually append the point when there were no points defined + currently. + * Fixed a bug where 'or'ing a hyperslab with a 'none' selection would + fail. Now adds that hyperslab as the first hyperlab in the selection. + * Fixed a bug in the 'big' test where quota limits weren't being detected + properly if they caused close() to fail. + * Fixed a bug in internal B-tree code where a B-tree was not being copied + correctly. + * Fixed an off-by-one error in H5Sselect_valid when hyperslab selections + which would allow hyperslab selections which overlapped the edge of the + selection by one element as valid. + * Fixed the internal macros used to encode & decode file metadata, to avoid + an unaligned access warning on IA64 machines. + * Corrected behavior of H5Tinsert to not allow compound datatype fields to + be inserted past the end of the datatype. + * Retired the DPSS virtual file driver (--with-gridstorage configure + option). + * Fixed bug where variable-length datatypes for attributes was not working + correctly. + * Fixed bug where raw data re-allocated from the free-list would sometimes + overlap with the metadata accumulator and get corrupted. QAK - 1/23/02 + * Fixed bug where a preempted chunk in the chunk data could still be + used by an internal pointer and cause an assertion failure or core + dump. QAK - 2/13/02 + * Fixed bug where non-zero fill-value was not being read correctly from + certain chunked datasets when using an "all" or contiguous hyperslab + selection. QAK - 2/14/02 + + +Documentation +============= + * Documentation was updated for the hdf5-1.4.3 release. + * A new "HDF5 User's Guide" is under development. See + http://hdf.ncsa.uiuc.edu/HDF5/doc_dev_snapshot/H5_NewUG/current/. + * Parallel Tutorial is available at http://hdf.ncsa.uiuc.edu/HDF5/doc/Tutor/ + + +Platforms Tested +================ + + AIX 4.3.3.0 (IBM SP powerpc) xlc 5.0.2.0 + mpcc_r 5.0.2.0 + xlf 07.01.0000.0002 + mpxlf 07.01.0000.0002 + AIX 4.3 (IBM SP RS6000) C for AIX Compiler, Version 5.0.2.0 + xlf 7.1.0.2 + poe 3.1.0.12 (includes mpi) + Cray T3E sn6711 2.0.5.57 Cray Standard C Version 6.5.0.3 + Cray Fortran Version 3.5.0.4 + Cray SV1 10.0.0.8 Cray Standard C Version 6.5.0.3 + Cray Fortran Version 3.5.0.4 + FreeBSD 4.5 gcc 2.95.3 + g++ 2.95.3 + HP-UX B.10.20 HP C HP92453-01 A.10.32.30 + HP F90 v2.3 + HP-UX B.11.00 HP C HP92453-01 A.11.01.20 + HP F90 v2.4 + HP-UX B.11.00 SysV HP C HP92453-01 A.11.01.20 + HP F90 v2.4 + HP MPI [not a product] (03/24/2000) B6060BA + IRIX 6.5 MIPSpro cc 7.30 + IRIX64 6.5 (64 & n32) MIPSpro cc 7.3.1.2m + Linux 2.4.4 gcc 2.95.3 + g++ 2.95.3 + Linux 2.2.18smp gcc 2.95.2 + gcc 2.95.2 with mpich 1.2.1 + g++ 2.95.2 + pgf90 3.2-4 + OSF1 V5.1 Compaq C V6.3-028 + Compaq Fortran V5.4-1283 + SunOS 5.7 WorkShop Compilers 5.0 98/12/15 C 5.0 + (Solaris 2.7) Workshop Compilers 5.0 98/12/15 C++ 5.0 + Workshop Compilers 5.0 98/10/25 + FORTRAN 90 2.0 Patch 107356-04 + SunOS 5.8/32 Sun WorkShop 6 update 1 C 5.2 2000/09/11 + (Solaris 2.8) Sun WorkShop 6 update 1 Fortran 95 6.1 + Patch 109503-07 2001/08/11 + Sun WorkShop 6 update 1 C++ 5.2 Patch + 109508-04 2001/07/11 + SunOS 5.8/64 Sun WorkShop 6 update 1 C 5.2 2000/09/11 + (Solaris 2.8) Sun WorkShop 6 update 1 Fortran 95 6.1 + Patch 109503-07 2001/08/11 + Sun WorkShop 6 update 1 C++ 5.2 Patch + 109508-04 2001/07/11 + TFLOPS r1.0.4 v4.0.8 i386 pgcc Rel 3.1-4i with mpich-1.2.1 with + local modifications + IA-32 Linux 2.2.10smpx cc Intel 5.0.1 + egcs-2.91.66 + IA-64 Linux 2.4.16 ia64 gcc version 2.96 20000731 + Intel(R) C++ Itanium(TM) Compiler + for the Itanium(TM)-based applications, + Version 6.0 Beta, Build 20010905 + Windows 2000 (NT5.0) MSVC++ 6.0 + DEC Visual Fortran 6.0 + Windows NT4.0 MSVC++ 6.0 + DEC Visual Fortran 6.0 + Windows NT4.0 Code Warrior 6.0 + Windows 98 MSVC++ 6.0 + DEC Visual Fortran 6.0 + + +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 + ( ) = footnote appears below second table + + + Platform C C F90 F90 C++ Shared zlib Tools + parallel parallel libraries + (5) + Solaris2.7 y y (1) y n y y y y + Solaris2.8 64 y n y n y y y y + Solaris2.8 32 y n y n y y y y + IA-64 y n n n n n y y + IRIX6.5 y y (1) n n n y y y + IRIX64_6.5 64 y y (2) y y n y y y + IRIX64_6.5 32 y y (2) n n n y y y + HPUX10.20 y n y n n y y y + HPUX11.00 y y y n n y y y + HPUX11 SysV y y y n n y y y + DECOSF y n y n y y y y + T3E y y y y n n y y + SV1 y n y n n n y y + TFLOPS y y (1) n n n n y y (4) + AIX-4.3 SP2 y y y y n n y n + AIX-4.3 SP3 y y y y y n y n + Win2000 y n y n y (6) y y y + Win98 y n y n y (6) y y y + WinNT y n y n y (6) y y y + WinNT CW y n n n n n y y + FreeBSD y n n n y y y y + Linux 2.2 y y (1) y n y y y y + Linux 2.4 y y (1) n n y y y y + + + Platform 1.2 static- Thread- SRB GASS STREAM- + compatibility exec safe VFD + Solaris2.7 n x y n n y + Solaris2.8 64 n y n n n y + Solaris2.8 32 n x n n n y + IA-64 n n n n n y + IRIX6.5 n x y n n y + IRIX64_6.5 64 n x y n y y + IRIX64_6.5 32 n x y n y y + HPUX10.20 n y n n n y + HPUX11.00 n x n n n y + HPUX11 SysV n x n n n y + DECOSF n y n n n y + T3E n y n n n y + SV1 n y n n n y + TFLOPS n y n n n n + AIX-4.3 SP2 n y (3) n n n y + AIX-4.3 SP3 n y n n n y + Win2000 n y n n n n + Win98 n y n n n n + WinNT n y n n n n + WinNT CW n n n n n n + FreeBSD n y y n n y + Linux 2.2 n y y n n y + Linux 2.4 n y y n n y + + + Footnotes: (1) Using mpich. + (2) Using mpt and mpich. + (3) When configured with static-exec enabled, tests fail + in serial mode. + (4) No HDF4-related tools. + (5) Shared libraries are provided only for the C library. + (6) Exception of (5): DLL is available for C++ API on Windows + + +Known Problems +============== + + * Datasets or attributes which have a variable-length string datatype are + not printing correctly with h5dump and h5ls. + + * When a dataset with the variable-legth datatype is overwritten, + the library can develop memory leaks that cause the file to become + unnecessarily large. This is planned to be fixed in the next release. + + * On the SV1, the h5ls test fails due to a difference between the + SV1 printf precision and the printf precision on other platforms. + + + * The h5dump tests may fail to match the expected output in some + platforms (e.g. SP2 parallel, Windows) where the error messages + directed to "stderr" do not appear in the "right order" with output + from stdout. This is not an error. + + * The --enable-static-exec configure flag fails to compile for HP-UX + 11.00 platforms. + + * The executables are always dynamic on IRIX64 6.5(64 and n32) and + IRIX 6.5 even if they are configured with --enable-static-exec. + + * IRIX 6.5 fails to compile if configured with --enable-static-exec. + + * The HDF5_MPI_OPT_TYPES optimization code in the parallel HDF5 will cause + a hang in some cases when chunked storage is used. This is now set to + be off by default. One may turn it on by setting environment variable + HDF5_MPI_OPT_TYPES to a non-zero value such as 1. + + * On IA64 systems one has to use -DIA64 compilation flag to compile + h4toh5 and h5toh4 utilites. After configuration step manually modify + Makefile in the tools/h4toh4 and tools/h5toh4 directories to add + -DIA64 to the compilation flags. + + * On IA32 ansd IA64 systems, if you use a compiler other than GCC + (such as Intel's ecc compiler), you will need to modify the generated + "libtool" program after configuration is finished. On or around line 102 + of the libtool file, there are lines which look like: + + # How to pass a linker flag through the compiler. + wl="" + + change the lines to this: + + # How to pass a linker flag through the compiler. + wl="-Wl," + + +%%%%1.4.2%%%% Release Information for hdf5-1.4.2 (31/July/01) + +10. Release Information for hdf5-1.4.2 +================================================================= + + +INTRODUCTION + +This document describes the differences between HDF5-1.4.1 and +HDF5-1.4.2, and contains information on the platforms tested and +known problems in HDF5-1.4.2. + +The HDF5 documentation can be found on the NCSA ftp server +(ftp.ncsa.uiuc.edu) in the directory: + + /HDF/HDF5/docs/ + +For more information look at the HDF5 home page at: + + http://hdf.ncsa.uiuc.edu/HDF5/ + +If you have any questions or comments, please send them to: + + hdfhelp@ncsa.uiuc.edu + + +CONTENTS + +- New Features +- Bug Fixes since HDF5-1.4.1 +- Documentation +- Platforms Tested +- Supported Configuration Features +- Known Problems + + +New Features +============ + + * File sizes greater than 2GB are now supported on Linux systems with + version 2.4.x or higher kernels. + * Added a global string variable H5_lib_vers_info_g which holds the + HDF5 library version information. This can be used to identify + an hdf5 library or hdf5 application binary. + Also added a verification of the consistency between H5_lib_vers_info_g + and other version information in the source code. + * Parallel HDF5 now runs on the HP V2500 and HP N4000 machines. + * F90 API: + - Added aditional parameter "dims" to the h5dread_f/h5dwrite_f and + h5aread_f/h5awrite_f subroutines. This parameter is a 1-D array + of size 7 and contains the sizes of the data buffer dimensions. + This change enables portability between Windows and UNIX platforms. + In previous versions of the F90 APIs, the data buffer parameters of + the above functions were declared as assumed-shape arrays, which + were passed to the C functions by a descriptor. There is no + portable means, however, of passing descriptors from F90 to C, + causing portability problems between Windows and UNIX and among + UNIX platforms. With this change, the data buffers are assumed- + size arrays, which can be portably passed to the C functions. + * F90 static library is available on Windows platforms. + See INSTALL_Windows_withF90.txt for details. + * F90 APIs are available on HPUX 11.00 and 10.20 and IBM SP platforms. + * H5 <-> GIF convertor has been added. This is available under + tools/gifconv. The convertor supports the ability to create animated + gifs as well. + * Verified correct operation of library on Solaris 2.8 in both 64-bit and + 32-bit compilation modes. See INSTALL document for instructions on + compiling the distribution with 64-bit support. + * Added support for the Metrowerks Code Warrior compiler for Windows. + * For H4->H5 converter utility, added a new option to choose not to convert + HDF4 specified attributes(reference number, class) into HDF5 attributes. + * Added support chunking and compression in SDS and image in H4->H5 converter. + Currently HDF5 only supports gzip compression, so by default an HDF4 file + with any other compression method will be converted into an HDF5 file in + gzip compression. + * correct the order or reading HDF4 image array in H4->H5 conversion. + * Added new parallel hdf5 tests in t_mpi. The new test checks if the + filesystem or the MPI-IO can really handle greater than 2GB files. + If it fails, it prints information message only without failing the + test. + * Added a parallel HDF5 example examples/ph5example.c to illustrate + the basic way of using parallel HDF5. + * Added a new public macro, H5_VERS_INFO, which is a string holding + the HDF5 library version information. This string is also compiled + into all HDF5 binary code which helps to identify the version information + of the binary code. One may use the Unix strings command on the binary + file and looks for the pattern "HDF5 library version". + * Added new checking in H5check_version() to verify the five HDF5 version + information macros (H5_VERS_MAJOR, H5_VERS_MINOR, H5_VERS_RELEASE, + H5_VERS_SUBRELEASE and H5_VERS_INFO) are consistent. + + +Bug Fixes since HDF5-1.4.1 Release +================================== + + * Fixed bug with non-zero userblock sizes causing raw data to not + write correctly. + * Fixed problems with Pablo build and linking with non-standard MPI I/O. + * Fixed build on Linux systems with --enable-static-exec flag. It now + works correctly. + * IMPORTANT: Fixed file metadata corruption bug which could cause + metadata data loss in certain situations. + * The allocation by alignment (H5Pset_alignment) feature code somehow + got dropped in some 1.3.x version. Re-implemented it with "new and + improved" algorithm. It keeps track of "wasted" file-fragment in + the free-list too. + * Removed limitation that the data transfer buffer size needed to be + set for datasets whose dimensions were too large for the 'all' + selection code to handle. Any size dimensioned datasets should be + handled correctly now. + * Changed behavior of H5Tget_member_type to correctly emulate HDF5 v1.2.x + when --enable-hdf5v1_2 configure flag is enabled. + * Added --enable-linux-lfs flag to allow more control over whether to + enable or disable large file support on Linux. + * Fixed various bugs releated to SDS dimensional scale conversions in H4->H5 + converter. + * Fixed a bug to correctly convert HDF4 objects with fill value into HDF5. + * Fixed a bug of H5pubconf.h causing repeated definitions if it is included + more than once. hdf5.h now includes H5public.h which includes + H5pubconf.h. Applications should #include hdf5.h which handles multiple + inclusion correctly. + * Fixed H5FDmpio.h to be C++ friendly by making Parallel HDF5 API's to be + external to C++. + * Fixed a bug in H5FD_mpio_flush() that might result in negative file seek + if both MPIO and Split-file drivers are used together. + + + +Documentation +============= + + * The H5T_conv_t and H5T_cdata_t structures are now properly defined + in the H5Tregister entry in the "H5T" section of the "HDF5 Reference + Manual" and described in detail in section 12, "Data Conversions," in + the "Datatypes" chapter of the "HDF5 User's Guide." + * The new tools h52gif and gif2h5 have been added to the "Tools" section + of the Reference Manual. + * A "Freespace Management" section has been added to the "Performance" + chapter of the User's Guide. + * Several user-reported bugs have been fixed since Release 1.4.1. + * The "HDF5 Image and Palette Specification" (in the "HDF5 Application + Developer's Guide") has been heavily revised. Based on extensive user + feedback and input from visualization software developers, Version 1.2 + of the image specification is substantially different from prior + versions. + + +Platforms Tested +================ + + AIX 4.3.3.0 (IBM SP powerpc) xlc 3.6.6.0 + mpcc_r 3.6.6.0 + xlf 07.01.0000.0002 + mpxlf 07.01.0000.0002 + AIX 4.3 (IBM SP RS6000) C for AIX Compiler, Version 5.0.2.0 + xlf 7.1.0.2 + poe 2.4.0.14 (includes mpi) + Cray T3E sn6711 2.0.5.49a Cray Standard C Version 6.5.0.1 + Cray SV1 10.0.0.2 Cray Standard C Version 6.5.0.1 + Cray Fortran Version 3.5.0.1 + FreeBSD 4.3 gcc 2.95.3 + g++ 2.95.3 + HP-UX B.10.20 HP C HP92453-01 A.10.32.30 + HP F90 v2.3 + HP-UX B.11.00 HP C HP92453-01 A.11.01.20 + HP F90 v2.4 + HP-UX B.11.00 SysV HP C HP92453-01 A.11.01.20 + HP F90 v2.4 + IRIX 6.5 MIPSpro cc 7.30 + IRIX64 6.5 (64 & n32) MIPSpro cc 7.3.1.2m + Linux 2.4.4 gcc 2.95.3 + g++ 2.95.3 + Linux 2.2.18smp gcc 2.95.2 + gcc 2.95.2 with mpich 1.2.1 + g++ 2.95.2 + pgf90 3.2-4 + OSF1 V4.0 DEC-V5.2-040 on Digital UNIX V4.0 (Rev 564) + Digital Fortran 90 V4.1-270 + SunOS 5.6 WorkShop Compilers 5.0 98/12/15 C 5.0 + (Solaris 2.6) WorkShop Compilers 5.0 98/10/25 FORTRAN 90 + 2.0 Patch 107356-04 + SunOS 5.7 WorkShop Compilers 5.0 98/12/15 C 5.0 + (Solaris 2.7) Workshop Compilers 5.0 98/12/15 C++ 5.0 + Workshop Compilers 5.0 98/10/25 FORTRAN 90 + 2.0 Patch 107356-04 + SunOS 5.8/32 Sun WorkShop 6 update 1 C 5.2 2000/09/11 + (Solaris 2.8) Sun WorkShop 6 update 1 Fortran 95 6.1 + 2000/09/11 + Sun WorkShop 6 update 1 C++ 5.2 2000/09/11 + SunOS 5.8/64 Sun WorkShop 6 update 1 C 5.2 2000/09/11 + (Solaris 2.8) Sun WorkShop 6 update 1 Fortran 95 6.1 + 2000/09/11 + Sun WorkShop 6 update 1 C++ 5.2 2000/09/11 + TFLOPS r1.0.4 v4.0.7 i386 pgcc Rel 3.1-4i with mpich-1.2.1 with + local modifications + Windows 2000 (NT5.0) MSVC++ 6.0 + Windows NT4.0 MSVC++ 6.0 + DEC Visual Fortran 6.0 + Windows NT4.0 Code Warrior 6.0 + Windows 98 MSVC++ 6.0 + DEC Visual Fortran 6.0 + + +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 + ( ) = footnote appears below second table + + + Platform C C F90 F90 C++ Shared zlib Tools + parallel parallel libraries + (5) + Solaris2.6 y n y n y y y y + Solaris2.7 y y (1) y n y y y y + Solaris2.8 64 y n n n y y y y + Solaris2.8 32 y n y n y y y y + IRIX6.5 y y (1) n n n y y y + IRIX64_6.5 64 y y (2) y y n y y y + IRIX64_6.5 32 y y (2) n n n y y y + HPUX10.20 y n y n n y y y + HPUX11.00 y n y n n y y y + HPUX11 SysV y n y n n y y y + DECOSF y n y n n y y y + T3E y y y y n n y y + SV1 y n y n n n y y + TFLOPS y y (1) n n n n y y (4) + AIX-4.3 SP2 y y y y n n y n + AIX-4.3 SP3 y y y y n n y n + Win2000 y n n n n y y y + Win98 y n y n n y y y + WinNT y n y n n y y y + WinNT CW y n n n n n y y + FreeBSD y n n n y y y y + Linux 2.2 y y (1) y n y y y y + Linux 2.4 y y (1) n n y y y y + + + Platform 1.2 static- Thread- SRB GASS STREAM- + compatibility exec safe VFD + Solaris2.6 y x n n n y + Solaris2.7 y x y n n y + Solaris2.8 64 y y n n n y + Solaris2.8 32 y x n n n y + IRIX6.5 y x y n n y + IRIX64_6.5 64 y x n n n y + IRIX64_6.5 32 y x n n n y + HPUX10.20 y y n n n y + HPUX11.00 y x n n n y + HPUX11 SysV y x n n n y + DECOSF y y n n n y + T3E y y n n n y + SV1 y y n n n y + TFLOPS y y n n n n + AIX-4.3 SP2 y y (3) n n n y + AIX-4.3 SP3 y y n n n y + Win2000 y y n n n n + Win98 n y n n n n + WinNT y y n n n n + WinNT CW n n n n n n + FreeBSD y y n n n y + Linux 2.2 y y y n n y + Linux 2.4 y y y n n y + + + Footnotes: (1) Using mpich. + (2) Using mpt and mpich. + (3) When configured with static-exec enabled, tests fail + in serial mode. + (4) No HDF4-related tools. + (5) Shared libraries are provided only for the C library. + + +Known Problems +============== + + * When a dataset with the variable-legth datatype is overwritten, + the library can develop memory leaks that cause the file to become + unnecessarily large. This is planned to be fixed in the next release. + + * On the SV1, the h5ls test fails due to a difference between the + SV1 printf precision and the printf precision on other platforms. + + * The h5dump tests may fail to match the expected output in some + platforms (e.g. SP2 parallel, Windows) where the error messages + directed to "stderr" do not appear in the "right order" with output + from stdout. This is not an error. + + * The --enable-static-exec configure flag fails to compile for HP-UX + 11.00 platforms. + + * The executables are always dynamic on IRIX64 6.5(64 and n32) and + IRIX 6.5 even if they are configured with --enable-static-exec. + + * IRIX 6.5 fails to compile if configured with --enable-static-exec. + + * For 24-bit image conversion from H4->H5, the current conversion is + not consistent with HDF5 image specification. + + * In some cases, and SDS with an UNLIMITED dimension that has not + been written (current size = 0) is not converted correctly. + + * After "make install" or "make install-doc" one may need to reload + the source from the tar file before doing another build. + + * The HDF5_MPI_OPT_TYPES optimization code in the parallel HDF5 will cause + a hang in some cases when chunked storage is used. This is now set to + be off by default. One may turn it on by setting environment variable + HDF5_MPI_OPT_TYPES to a non-zero value such as 1. + +%%%%1.4.1%%%% Release Information for hdf5-1.4.1 (April/01) + +9. Release Information for hdf5-1.4.1 (April/01) +===================================================================== + + + + HDF5 Release 1.4.1 + + +INTRODUCTION + +This document describes the differences between HDF5-1.4.0 and +HDF5-1.4.1, and contains information on the platforms tested and +known problems in HDF5-1.4.1. + +The HDF5 documentation can be found on the NCSA ftp server +(ftp.ncsa.uiuc.edu) in the directory: + + /HDF/HDF5/docs/ + +For more information look at the HDF5 home page at: + + http://hdf.ncsa.uiuc.edu/HDF5/ + +If you have any questions or comments, please send them to: + + hdfhelp@ncsa.uiuc.edu + + +CONTENTS + +- New Features +- Bug Fixes since HDF5-1.4.0 +- Documentation +- Platforms Tested +- Supported Configuration Features +- Known Problems + + +New Features +============ + + * XML output option for h5dump utility. + + A new option --xml to output data in XML format has been added. The + XML output contains a complete description of the file, marked up in + XML. + + The XML conforms to the HDF5 Document Type Definition (DTD), which + is available at: + + http://hdf.ncsa.uiuc.edu/DTDs/HDF5-File.dtd + + The XML output is suitable for use with other tools, including the + Java Tools: + + http://hdf.ncsa.uiuc.edu/java-hdf5-html + + +Bug Fixes since HDF5-1.4.0 Release +================================== + + * h4toh5 utility: conversion of images is fixed + + Earlier releases of the h4toh5 utility produced images that did not + correctly conform to the HDF5 Image and Palette Specification. + + http://hdf.ncsa.uiuc.edu/HDF5/doc/ImageSpec.html + + Several required HDF5 attributes are omitted, and the dataspace + is reversed (i.e., the ht. and width of the image dataset is + incorrectly described.) For more information, please see: + + http://hdf.ncsa.uiuc.edu/HDF5/H5Image/ImageDetails.htm + + * Fixed bug with contiguous hyperslabs not being detected, causing + slower I/O than necessary. + * Fixed bug where non-aligned hyperslab I/O on chunked datasets was + causing errors during I/O + * The RCSID string in H5public.h was causing the C++ compiling problem + because when it was included multiple times, C++ did not like + multiple definitions of the same static variable. All occurance of + RCSID definition are removed since we have not used it consistently + before. + + +Documentation +============= + + PDF and Postscript versions of the following documents are available + for this release: + Document Filename + -------- -------- + Introduction to HDF5 H5-R141-Introduction.pdf + HDF5 Reference Manual H5-R141-RefManual.pdf + C++ APIs to HDF5 documents H5-R141-Cplusplus.pdf + Fortran90 APIs to HDF5 documents H5-R141-Fortran90.pdf + + PDF and Postscript files containing H5-R141-DocSet.pdf + all of the above H5-R141-DocSet.ps + + These files are not included in this distribution, but are available + via the Web or FTP at the following locations: + http://hdf.ncsa.uiuc.edu/HDF5/doc/PSandPDF/ + ftp://ftp.ncsa.uiuc.edu/HDF/HDF5/docs/ + + While these documents are labeled Release 1.4.1, they describe + Release 1.4.0 as well. + + +Platforms Tested +================ + +Due to the nature of this release only C, C++ libraries and tools were tested. + + AIX 4.3.3.0 (IBM SP powerpc) xlc 3.6.6 + mpcc_r 3.6.6 + Cray T3E sn6711 2.0.5.47 Cray Standard C Version 6.5.0.0 + Cray SV1 10.0.0.8 Cray Standard C Version 6.5.0.0 + FreeBSD 4.3 gcc 2.95.2 + HP-UX B.10.20 HP C HP92453-01 A.10.32.30 + HP-UX B.11.00 HP C HP92453-01 A.11.01.20 + IRIX 6.5 MIPSpro cc 7.30 + IRIX64 6.5 (64 & n32) MIPSpro cc 7.3.1m + Linux 2.2.18smp gcc-2.95.2 + g++ 2.95.2 + OSF1 V4.0 DEC-V5.2-040 + Digital Fortran 90 V4.1-270 + SunOS 5.6 WorkShop Compilers 5.0 98/12/15 C 5.0 + (Solaris 2.6) + + SunOS 5.7 WorkShop Compilers 5.0 98/12/15 C 5.0 + (Solaris 2.7) Workshop Compilers 5.0 98/12/15 C++ 5.0 + TFLOPS r1.0.4 v4.0 mpich-1.2.1 with local changes + Windows NT4.0, 2000 (NT5.0) MSVC++ 6.0 + Windows 98 MSVC++ 6.0 + + +Supported Configuration Features Summary +======================================== + + * See "Supported Configuration Features Summary" section for the HDF5 + 1.4.0 release in the HISTORY.txt file. + +Known Problems +============== + + * The h5dump tests may fail to match the expected output in some + platforms (e.g. SP2 parallel, Windows) where the error messages + directed to "stderr" do not appear in the "right order" with output + from stdout. This is not an error. + + * The --enable-static-exec configure flag fails to compile for HP-UX + 11.00 platforms. + + * The executable are always dynamic on IRIX64 6.5(64 and n32) and + IRIX 6.5 even if they are configured with --enable-static-exec. + + * The shared library failed compilation on IRIX 6.5. + + * After "make install" or "make install-doc" one may need to reload the source + from the tar file before doing another build. + + * See "Known problems" section for the HDF5 1.4.0 release in the + HISTORY.txt file. + +%%%%1.4.0%%%% Release Information for hdf5-1.4.0 (2/22/01) + +8. Release Information for hdf5-1.4.0 +=================================================================== + + HDF5 Release 1.4.0 + + +INTRODUCTION + +This document describes the differences between HDF5-1.2.0 and +HDF5-1.4.0, and contains information on the platforms tested and +known problems in HDF5-1.4.0. For more details check the HISTORY.txt +file in the HDF5 source. + +The HDF5 documentation can be found on the NCSA ftp server +(ftp.ncsa.uiuc.edu) in the directory: + + /HDF/HDF5/docs/ + +For more information look at the HDF5 home page at: + + http://hdf.ncsa.uiuc.edu/HDF5/ + +If you have any questions or comments, please send them to: + + hdfhelp@ncsa.uiuc.edu + + +CONTENTS + +- New Features +- h4toh5 Utility +- F90 Support +- C++ Support +- Pablo Support +- Bug Fixes since HDF5-1.2.0 +- Bug Fixes since HDF5-1.4.0-beta2 +- Bug Fixes since HDF5-1.4.0 +- Documentation +- Platforms Tested +- Supported Configuration Features +- Known Problems + + +New Features +============ + * The Virtual File Layer, VFL, was added to replace the old file + drivers. It also provides an API for user defined file drivers. + * New features added to snapshots. Use 'snapshot help' to see a + complete list of features. + * Improved configure to detect if MPIO routines are available when + parallel mode is requested. + * Added Thread-Safe support. Phase I implemented. See: + + http://hdf.ncsa.uiuc.edu/HDF5/papers/mthdf/MTHDFpaper.htm + + for more details. + * Added data sieve buffering to raw data I/O path. This is enabled + for all VFL drivers except the mpio & core drivers. Setting the + sieve buffer size is controlled with the new API function, + H5Pset_sieve_buf_size(), and retrieved with H5Pget_sieve_buf_size(). + * Added new Virtual File Driver, Stream VFD, to send/receive entire + HDF5 files via socket connections. + * As parts of VFL, HDF-GASS and HDF-SRB are also added to this + release. To find out details, please read INSTALL_VFL file. + * Increased maximum number of dimensions for a dataset (H5S_MAX_RANK) + from 31 to 32 to align with HDF4 & netCDF. + * Added 'query' function to VFL drivers. Also added 'type' parameter to + VFL 'read' & 'write' calls, so they are aware of the type of data + being accessed in the file. Updated the VFL document also. + * A new h4toh5 utility, to convert HDF4 files to analogous HDF5 files. + * Added a new array datatype to the datatypes which can be created. + Removed "array fields" from compound datatypes (use an array datatype + instead). + * Parallel HDF5 works correctly with mpich-1.2.1 on Solaris, SGI, Linux. + * You can now install the HDF5 documentation using the + ``make install-doc'' command. The documentation is installed in the + $(prefix)/doc directory where $(prefix) is the prefix specified by + the (optional) ``--prefix'' flag during configuration. + * HDF5 can operate correctly in the OpenMP environment in a limited way. + Check doc/html/TechNotes/openmp-hdf5.html for details. + + +h4toh5 Utility +============== + The h4toh5 utility is a new utility that converts an HDF4 file to an + HDF5 file. For details, see the document, "Mapping HDF4 Objects to + HDF5 Objects": + http://hdf.ncsa.uiuc.edu/HDF5/papers/H4-H5MappingGuidelines.pdf + + Known Bugs: + + The h4toh5 utility produces images that do not correctly conform + to the HDF5 Image and Palette Specification. + + http://hdf.ncsa.uiuc.edu/HDF5/doc/ImageSpec.html + + Several required HDF5 attributes are omitted, and the dataspace + is reversed (i.e., the ht. and width of the image dataset is + incorrectly described.) For more information, please see: + + http://hdf.ncsa.uiuc.edu/HDF5/H5Image/ImageDetails.html + + This bug has been fixed for the snapshot of hdf5 1.4 release. March 12th,2001 + + Known Limitations of the h4toh5 release + --------------------------------------------- + + 1. Error handlings + + h4toh5 utility will print out an error message when an error occurs. + + 2. String Datatype + + HDF4 has no 'string' type. String valued data are usually defined as + an array of 'char' in HDF4. The h4toh5 utility will generally map + these to HDF5 'String' types rather than array of char, with the + following additional rules: + + * For the data of an HDF4 SDS, image, and palette, if the data is + declared 'DFNT_CHAR8' it will be assumed to be integer and will + be an H5T_INTEGER type. + * For attributes of any HDF4 object, data of type 'DFNT_CHAR8' + will be converted to an HDF5 'H5T_STRING' type. + * For an HDF4 Vdata, it is difficult to determine whether data + of type 'DFNT_CHAR8' is intended to be bytes or characters. The + h4toh5 utility will consider them to be C characters, and will + convert them to an HDF5 'H5T_STRING' type. + + + 3. Compression, Chunking and External Storage + + Chunking is supported, but compression and external storage is not. + + An HDF4 object that uses chunking will be converted to an HDF5 file + with analogous chunked storage. + + An HDF4 object that uses compression will be converted to an + uncompressed HDF5 object. + + An HDF4 object that uses external storage will be converted to an + HDF5 object without external storage. + + 4. Memory Use + + This version of the h4toh5 utility copies data from HDF4 objects + in a single read followed by a single write to the HDF5 object. For + large objects, this requires a very large amount of memory, which may + be extremely slow or fail on some platforms. + + Note that a dataset that has only been partly written will + be read completely, including uninitialized data, and all the + data will be written to the HDF5 object. + + 5. Platforms + + The h4toh5 utility requires HDF5-1.4.0 and HDF4r1.4 + + h4toh5 utility has been tested on all platforms listed below (see + section "Platforms Tested") except TFLOPS. + + +F90 Support +=========== + This is the first release of the HDF5 Library with fully integrated + F90 API support. The Fortran Library is created when the + --enable-fortran flag is specified during configuration. + + Not all F90 subroutines are implemented. Please refer to the HDF5 + Reference Manual for more details. + + F90 APIs are available for the Solaris 2.6 and 2.7, Linux, DEC UNIX, + T3E, SV1 and O2K (64 bit option only) platforms. The Parallel version of + the HDF5 F90 Library is supported on the O2K and T3E platforms. + + Changes since the last prototype release (July 2000) + ---------------------------------------------------- + * h5open_f and h5close_f must be called instead of h5init_types and + h5close_types. + + * The following subroutines are no longer available: + + h5pset_xfer_f + h5pget_xfer_f + h5pset_mpi_f + h5pget_mpi_f + h5pset_stdio_f + h5pget_stdio_f + h5pset_sec2_f + h5pget_sec2_f + h5pset_core_f + h5pget_core_f + h5pset_family_f + h5pget_family_f + + * The following functions have been added: + + h5pset_fapl_mpio_f + h5pget_fapl_mpio_f + h5pset_dxpl_mpio_f + h5pget_dxpl_mpio_f + + * In the previous HDF5 F90 releases, the implementation of object + references and dataset region references was not portable. This + release introduces a portable implementation, but it also introduces + changes to the read/write APIs that handle references. If object or + dataset region references are written or read to/from an HDF5 file, + h5dwrite_f and h5dread_f must use the extra parameter, n, for the + buffer size: + + h5dwrite(read)_f(dset_id, mem_type_id, buf, n, hdferr, & + ^^^ + mem_space_id, file_space_id, xfer_prp) + + For other datatypes the APIs were not changed. + + +C++ Support +=========== + This is the first release of the HDF5 Library with fully integrated + C++ API support. The HDF5 C++ library is built when the --enable-cxx + flag is specified during configuration. + + Check the HDF5 Reference Manual for available C++ documentation. + + C++ APIs are available for Solaris 2.6 and 2.7, Linux, and FreeBSD. + + +Pablo Support +============= + This version does not allow proper building of the Pablo-instrumented + version of the library. A version supporting the pablo build is + available on the Pablo Website at + www-pablo.cs.uiuc.edu/pub/Pablo.Release.5/HDFLibrary/hdf5_v1.4.tar.gz + + +Bug Fixes since HDF5-1.2.0 +========================== + +Library +------- + * The function H5Pset_mpi is renamed as H5Pset_fapl_mpio. + * Corrected a floating point number conversion error for the Cray J90 + platform. The error did not convert the value 0.0 correctly. + * Error was fixed which was not allowing dataset region references to + have their regions retrieved correctly. + * Corrected a bug that caused non-parallel file drivers to fail in + the parallel version. + * Added internal free-lists to reduce memory required by the library + and H5garbage_collect API function + * Fixed error in H5Giterate which was not updating the "index" + parameter correctly. + * Fixed error in hyperslab iteration which was not walking through the + correct sequence of array elements if hyperslabs were staggered in a + certain pattern + * Fixed several other problems in hyperslab iteration code. + * Fixed another H5Giterate bug which was causes groups with large + numbers of objects in them to misbehave when the callback function + returned non-zero values. + * Changed return type of H5Aiterate and H5A_operator_t typedef to be + herr_t, to align them with the dataset and group iterator functions. + * Changed H5Screate_simple and H5Sset_extent_simple to not allow + dimensions of size 0 with out the same dimension being unlimited. + * QAK - 4/19/00 - Improved metadata hashing & caching algorithms to + avoid many hash flushes and also remove some redundant I/O when + moving metadata blocks in the file. + * The "struct(opt)" type conversion function which gets invoked for + certain compound datatype conversions was fixed for nested compound + types. This required a small change in the datatype conversion + function API. + * Re-wrote lots of the hyperslab code to speed it up quite a bit. + * Added bounded garbage collection for the free lists when they run + out of memory and also added H5set_free_list_limits API call to + allow users to put an upper limit on the amount of memory used for + free lists. + * Checked for non-existent or deleted objects when dereferencing one + with object or region references and disallow dereference. + * "Time" datatypes (H5T_UNIX_D*) were not being stored and retrieved + from object headers correctly, fixed now. + * Fixed H5Dread or H5Dwrite calls with H5FD_MPIO_COLLECTIVE requests + that may hang because not all processes are transfer the same amount + of data. (A.K.A. prematured collective return when zero amount data + requested.) Collective calls that may cause hanging is done via the + corresponding MPI-IO independent calls. + * If configure with --enable-debug=all, couple functions would issue + warning messages to "stderr" that the operation is expensive time-wise. + This messed up applications (like testings) that did not expect the + extra output. It is changed so that the warning will be printed only + if the corresponding Debug key is set. + +Configuration +------------- + * The hdf5.h include file was fixed to allow the HDF5 Library to be + compiled with other libraries/applications that use GNU autoconf. + * Configuration for parallel HDF5 was improved. Configure now attempts + to link with libmpi.a and/or libmpio.a as the MPI libraries by + default. It also uses "mpirun" to launch MPI tests by default. It + tests to link MPIO routines during the configuration stage, rather + than failing later as before. One can just do "./configure + --enable-parallel" if the MPI library is in the system library. + * Added support for pthread library and thread-safe option. + * The libhdf5.settings file shows the correct machine byte-sex. + * Added option "--enable-stream-vfd" to configure w/o the Stream VFD. + For Solaris, added -lsocket to the LIBS list of libraries. + +Tools +----- + * h5dump now accepts both short and long command-line parameters: + -h, --help Print a usage message and exit + -B, --bootblock Print the content of the boot block + -H, --header Print the header only; no data is displayed + -i, --object-ids Print the object ids + -V, --version Print version number and exit + -a P, --attribute=P Print the specified attribute + -d P, --dataset=P Print the specified dataset + -g P, --group=P Print the specified group and all members + -l P, --soft-link=P Print the value(s) of the specified soft link + -o F, --output=F Output raw data into file F + -t T, --datatype=T Print the specified named data type + -w #, --width=# Set the number of columns + + P - is the full path from the root group to the object. + T - is the name of the data type. + F - is a filename. + # - is an integer greater than 1. + * A change from the old way command line parameters were interpreted + is that multiple attributes, datasets, groups, soft-links, and + object-ids cannot be specified with just one flag but you have to + use a flag with each object. I.e., instead of doing this: + + h5dump -a /attr1 /attr2 foo.h5 + + do this: + + h5dump -a /attr1 -a /attr2 foo.h5 + + The cases are similar for the other object types. + * h5dump correctly displays compound datatypes. + * Corrected an error in h5toh4 which did not convert the 32bits + int from HDF5 to HDF4 correctly for the T3E platform. + * h5dump correctly displays the committed copy of predefined types + correctly. + * Added an option, -V, to show the version information of h5dump. + * Fixed a core dumping bug of h5toh4 when executed on platforms like + TFLOPS. + * The test script for h5toh4 used to not able to detect the hdp + dumper command was not valid. It now detects and reports the + failure of hdp execution. + * Merged the tools with the 1.2.2 branch. Required adding new + macros, VERSION12 and VERSION13, used in conditional compilation. + Updated the Windows project files for the tools. + * h5dump displays opaque and bitfield data correctly. + * h5dump and h5ls can browse files created with the Stream VFD + (eg. "h5ls <hostname>:<port>"). + * h5dump has a new feature "-o <filename>" which outputs the raw data + of the dataset into ascii text file <filename>. + * h5toh4 used to converts hdf5 strings type to hdf4 DFNT_INT8 type. + Corrected to produce hdf4 DFNT_CHAR type instead. + * h5dump and h5ls displays array data correctly. + + +Bug Fixes since HDF5-1.4.0-beta2 +================================ + * Fixed a bug in the conversion from a little endian double to a big + endian float in some special cases. + * Corrected configuration error which was not including compression + support correctly. + * Cleaned up lots of warnings. + * Changed a few h5dump command line switches and added long versions of + the switches. + * Changed parameters for H5Tconvert, H5Pset_bufer and H5Pget_buffer from + size_t to hsize_t + * Fixed fairly obscure bug in hyperslab I/O which could (in rare cases) + not copy all the data during a transfer. + * Removed ragged array code from library. + * F90 library and module files are installed properly now on all supported + platforms. + + +Bug Fixes since HDF5-1.4.0 Release +================================== + + * Fixed bug with contiguous hyperslabs not being detected, causing + slower I/O than necessary. + * Fixed bug where non-aligned hyperslab I/O on chunked datasets was + causing errors during I/O + * Implemented XML support in h5dump. + + +Documentation +============= + * A new document summarizing the changes in the library leading up to + the current release has been added: + HDF5 Software Changes from Release to Release + This document is in the Application Developer's Guide and is of + particular interest to developers who must keep an application + synchronized with the library. + * The documentation for the Fortran90 and C++ APIs is linked to the + opening page of the Reference Manual. Fortran90 functions are + individually referenced from the corresponding C functions through- + out the Reference Manual. + * User's Guide and Reference Manual were updated to reflect changed + function syntax and to fix reported bugs. + * Functions that are new at this release were added to the Reference + Manual. + * Functions that have been removed from the library were removed from + the User's Guide and the Reference Manual. + * PostScript and PDF versions of the Release 1.4 document set are + not available at the time of Release 1.4.0. + + +Platforms Tested +================ + AIX 4.3.3.0 (IBM SP powerpc) xlc 3.6.6 + mpcc_r 3.6.6 + Cray T3E sn6711 2.0.5.45 Cray Standard C Version 6.4.0.0 + Cray Fortran Version 3.4.0.2 + Cray SV1 sn9605 10.0.0.7 Cray Standard C Version 6.4.0.0 + Cray Fortran Version 3.4.0.2 + FreeBSD 4.2 gcc 2.95.2 + g++ 2.95.2 + HP-UX B.10.20 HP C HP92453-01 A.10.32.30 + HP-UX B.11.00 HP C HP92453-01 A.11.00.13 + IRIX 6.5 MIPSpro cc 7.30 + mpich-1.2.1 + IRIX64 6.5 (64 & n32) MIPSpro cc 7.3.1m + mpt.1.4.0.2 + mpich-1.2.1 + Linux 2.2.16-3smp gcc-2.95.2 + g++ 2.95.2 + pgf90 3.1-3 + mpich-1.2.1 + OSF1 V4.0 DEC-V5.2-040 + Digital Fortran 90 V4.1-270 + SunOS 5.6 WorkShop Compilers 5.0 98/12/15 C 5.0 + (Solaris 2.6) WorkShop Compilers 5.0 99/10/25 Fortran 90 + 2.0 Patch 107356-04 + Workshop Compilers 5.0 98/12/15 C++ 5.0 + SunOS 5.7 WorkShop Compilers 5.0 98/12/15 C 5.0 + (Solaris 2.7) WorkShop Compilers 5.0 99/10/25 Fortran 90 + 2.0 Patch 107356-04 + Workshop Compilers 5.0 98/12/15 C++ 5.0 + mpich-1.2.1 + SunOS 5.5.1 gcc-2.7.2 + (Solaris 2.5.1 (x86)) + TFLOPS r1.0.4 v4.0 mpich-1.2.1 with local changes + Windows NT4.0, 2000 (NT5.0) MSVC++ 6.0 + Windows 98 MSVC++ 6.0 + + +Supported Configuration Features Summary +======================================== + In the tables below + y = tested and supported + n = not supported or not working in this release + ( ) = footnote appears below table + + Platform C C F90 F90 C++ Shared zlib Tools + parallel parallel libraries + Solaris2.6 y n y n y y y y + Solaris2.7 y y (1) y n y y y y + Solarisx86 y n n n n y y y + IRIX6.5 y y (1) n n n n y y + IRIX64_6.5 64 y y (2) y y n y y y + IRIX64_6.5 32 y y (2) n n n y y y + HPUX10.20 y n n n n y y y + DECOSF y n y n n y y y + T3E y y y y n n y y + SV1 y n y n n n y y + TFLOPS y y (1) n n n n y y (4) + AIX-4.3 y y n n n n y n + Win2000 y n n n n y y y + Win98 y n n n n y y y + WinNT y n n n n y y y + FreeBSD y n n n y y y y + Linux y y (1) y n y y y y + + + Platform 1.2 static- Thread- SRB GASS STREAM- + compatibility exec safe VFD + Solaris2.6 y n n n n y + Solaris2.7 y n y n n y + Solarisx86 y n n n n y + IRIX6.5 y n y n n y + IRIX64_6.5 64 y n n n n y + IRIX64_6.5 32 y n n n n y + HPUX10.20 y y n n n y + DECOSF y y n n n y + T3E y y n n n y + SV1 y y n n n y + TFLOPS y y n n n n + AIX-4.3 y y (3) n n n y + Win2000 y y n n n n + Win98 y y n n n n + WinNT y y n n n n + FreeBSD y y n n n y + Linux y n y n n y + + Footnotes: (1) Using mpich. + (2) Using mpt and mpich. + (3) When configured with static-exec enabled, tests fail + in serial mode. + (4) No HDF4-related tools. + + +Known Problems +============== + * The stream-vfd test uses ip port 10007 for testing. If another + application is already using that port address, the test will hang + indefinitely and has to be terminated by the kill command. To try the + test again, change the port address in test/stream_test.c to one not + being used in the host. + + * 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 Linux platforms using the gcc-2.95.2 compiler. + + 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. + + The compilation fails if configured with --enable-static-exec on IRIX 6.5. + + The executable files in hdf5/bin are dynamic-linked for IRIX64 6.5(64 and + n32 modes) and IRIX 6.5, even though they are compiled with static library. + + It is suggested that you don't use this option on these platforms + during configuration. + + * testhdf5 got bus error with configuration options --prefix and --with-hdf4 + on IRIX 6.5. + + * With the gcc 2.95.2 compiler, HDF 5 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. + + * SunOS 5.6 with C WorkShop Compilers 4.2: Hyperslab selections will + fail if library is compiled using optimization of any level. + + * When building hdf5 tools and applications on windows platform, a linking + warning: defaultlib "LIBC" conflicts with use of other libs will appear + on debug version when running VC++6.0. This warning doesn't affect building + and testing hdf5 applications. We will continue investigating this. + + * h5toh4 converter fails two cases(tstr.h5 and tmany.h5) for release dll + version on windows 2000 and NT. The reason is possibly due to Windows NT + DLL convention on freeing memory. It seems that memory cannot be freed + across library or DLL. It is still under investigation. + + * HDF-GASS testings and testhdf5 in the test directory will get bus error if + the configured with --with-gass. + + * HDF-SRB testing got segmentation error on Solaris 2.7. + + * The Stream VFD was not tested yet under Windows. + It is not supported in the TFLOPS machine. + + * Shared library option is broken for IBM SP and some Origin 2000 platforms. + One needs to run ./configure with '--disable-shared --enable-static'. + + * The ./dsets tests failed in 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. + + * Certain platforms give false negatives when testing h5ls: + - Solaris x86 2.5.1, Cray T3E and Cray J90 give errors during testing + when displaying object references in certain files. These are benign + differences due to the difference in sizes of the objects created on + those platforms. h5ls appears to be dumping object references + correctly. + - Cray J90 give errors during testing when displaying + some floating-point values. These are benign differences due to the + different precision in the values displayed and h5ls appears to be + dumping floating-point numbers correctly. + + * Before building HDF5 F90 Library from source on Crays (T3E and SV1) + replace H5Aff.f90, H5Dff.f90 and H5Pff.f90 files in the fortran/src + subdirectory in the top level directory with the Cray-specific files from + the ftp://ftp.ncsa.uiuc.edu/HDF/HDF5/hdf5-1.4.0/src/crayf90/ directory. + + * The h4toh5 utility produces images that do not correctly conform + to the HDF5 Image and Palette Specification. + + http://hdf.ncsa.uiuc.edu/HDF5/doc/ImageSpec.html + + Several required HDF5 attributes are omitted, and the dataspace + is reversed (i.e., the ht. and width of the image dataset is + incorrectly described.) For more information, please see: + + http://hdf.ncsa.uiuc.edu/HDF5/H5Image/ImageDetails.htm + +%%%%1.2.2%%%% Release Information for hdf5-1.2.2 (6/23/00) + +7. Release Information for hdf5-1.2.2 +================================================================= +INTRODUCTION + +This document describes the differences between HDF5-1.2.1 and +HDF5-1.2.2, and contains information on the platforms where HDF5-1.2.2 +was tested and known problems in HDF5-1.2.2. + +The HDF5 documentation can be found on the NCSA ftp server +(ftp.ncsa.uiuc.edu) in the directory: + + /HDF/HDF5/docs/ + +For more information look at the HDF5 home page at: + + http://hdf.ncsa.uiuc.edu/HDF5/ + +If you have any questions or comments, please send them to: + + hdfhelp@ncsa.uiuc.edu + + +CONTENTS + +- Features Added since HDF5-1.2.1 +- Bug Fixes since HDF5-1.2.1 +- Known Problems +- Platforms Tested + + +Features Added since HDF5-1.2.1 +=============================== + * Added internal free-lists to reduce memory required by the library and + H5garbage_collect API function. + * h5dump displays opaque and bitfield types. + * New features added to snapshots. Use 'snapshot help' to see a + complete list of features. + * Improved configure to detect if MPIO routines are available when + parallel mode is requested. + +Bug Fixes since HDF5-1.2.1 +========================== + * h5dump correctly displays compound datatypes, including simple and + nested compound types. + * h5dump correctly displays the committed copy of predefined types. + * Corrected an error in h5toh4 which did not convert the 32-bit + int from HDF5 to HDF4 correctly for the T3E platform. + * Corrected a floating point number conversion error for the + Cray J90 platform. The error did not convert the value 0.0 + correctly. + * Fixed error in H5Giterate which was not updating the "index" parameter + correctly. + * Fixed error in hyperslab iteration which was not walking through the + correct sequence of array elements if hyperslabs were staggered in a + certain pattern. + * Fixed several other problems in hyperslab iteration code. + * Fixed another H5Giterate bug which caused groups with large numbers + of objects in them to misbehave when the callback function returned + non-zero values. + * Changed return type of H5Aiterate and H5A_operator_t typedef to be + herr_t, to align them with the dataset and group iterator functions. + * Changed H5Screate_simple and H5Sset_extent_simple to not allow dimensions + of size 0 without the same dimension being unlimited. + * Improved metadata hashing & caching algorithms to avoid + many hash flushes and also removed some redundant I/O when moving metadata + blocks in the file. + * The libhdf5.settings file shows the correct machine byte-sex. + * The "struct(opt)" type conversion function which gets invoked for + certain compound datatype conversions was fixed for nested compound + types. This required a small change in the datatype conversion + function API. + +Known Problems +============== + +o SunOS 5.6 with C WorkShop Compilers 4.2: hyperslab selections will + fail if library is compiled using optimization of any level. +o TFLOPS: dsets test fails if compiled with optimization turned on. +o J90: tools fail to dispay data for the datasets with a compound datatype. + +Platforms Tested +================ + + AIX 4.3.3 (IBM SP) 3.6.6 | binaries + mpicc using mpich 1.1.2 | are not + mpicc_r using IBM MPI-IO prototype | available + AIX 4.3.2.0 (IBM SP) xlc 5.0.1.0 + Cray J90 10.0.0.7 cc 6.3.0.2 + Cray T3E 2.0.5.29 cc 6.3.0.2 + mpt.1.3 + FreeBSD 4.0 gcc 2.95.2 + HP-UX B.10.20 HP C HP92453-01 A.10.32 + HP-UX B.11.00 HP92453-01 A.11.00.13 HP C Compiler + (static library only, h5toh4 tool is not available) + IRIX 6.5 MIPSpro cc 7.30 + IRIX64 6.5 (64 & n32) MIPSpro cc 7.3.1m + mpt.1.4 + + Linux 2.2.10 SMP gcc 2.95.1 + mpicc(gcc-2.95.1) + gcc (egcs-2.91.66) + mpicc (egcs-2.91.66) + Linux 2.2.16 (RedHat 6.2) gcc 2.95.2 + + OSF1 V4.0 DEC-V5.2-040 + SunOS 5.6 cc WorkShop Compilers 5.0 no optimization + SunOS 5.7 cc WorkShop Compilers 5.0 + SolarisX86 SunOS 5.5.1 gcc version 2.7.2 with --disable-hsizet + TFLOPS 3.2.1 pgcc Rel 3.1-3i + mpich-1.1.2 with local changes + Windows NT4.0 sp5 MSVC++ 6.0 + Windows 98 MSVC++ 6.0 + Windows 2000 MSVC++ 6.0 + + + +%%%%1.2.1%%%% Release Information for hdf5-1.2.1 + +6. Release Information for hdf5-1.2.1 +================================================================ + + +Bug fixes since HDF5-1.2.0 +========================== + +Configuration +------------- + + * The hdf5.h include file was fixed to allow the HDF5 Library to be compiled + with other libraries/applications that use GNU autoconf. + * Configuration for parallel HDF5 was improved. Configure now attempts to + link with libmpi.a and/or libmpio.a as the MPI libraries by default. + It also uses "mpirun" to launch MPI tests by default. It tests to + link MPIO routines during the configuration stage, rather than failing + later as before. One can just do "./configure --enable-parallel" + if the MPI library is in the system library. + +Library +------- + + * Error was fixed which was not allowing dataset region references to have + their regions retrieved correctly. + * Added internal free-lists to reduce memory required by the library and + H5garbage_collect API function + * Fixed error in H5Giterate which was not updating the "index" parameter + correctly. + * Fixed error in hyperslab iteration which was not walking through the + correct sequence of array elements if hyperslabs were staggered in a + certain pattern + * Fixed several other problems in hyperslab iteration code. + +Tests +------ + + * Added additional tests for group and attribute iteration. + * Added additional test for staggered hyperslab iteration. + * Added additional test for random 5-D hyperslab selection. + +Tools +------ + + * Added an option, -V, to show the version information of h5dump. + * Fixed a core dumping bug of h5toh4 when executed on platforms like + TFLOPS. + * The test script for h5toh4 used to not able to detect the hdp + dumper command was not valid. It now detects and reports the + failure of hdp execution. + +Documentation +------------- + + * User's Guide and Reference Manual were updated. + See doc/html/PSandPDF/index.html for more details. + + +Platforms Tested: +================ +Note: Due to the nature of bug fixes, only static versions of the library and tools were tested. + + + AIX 4.3.2 (IBM SP) 3.6.6 + Cray T3E 2.0.4.81 cc 6.3.0.1 + mpt.1.3 + FreeBSD 3.3-STABLE gcc 2.95.2 + HP-UX B.10.20 HP C HP92453-01 A.10.32 + IRIX 6.5 MIPSpro cc 7.30 + IRIX64 6.5 (64 & n32) MIPSpro cc 7.3.1m + mpt.1.3 (SGI MPI 3.2.0.0) + + Linux 2.2.10 SuSE egcs-2.91.66 configured with + (i686-pc-linux-gnu) --disable-hsizet + mpich-1.2.0 egcs-2.91.66 19990314/Linux + + OSF1 V4.0 DEC-V5.2-040 + SunOS 5.6 cc WorkShop Compilers 4.2 no optimization + SunOS 5.7 cc WorkShop Compilers 5.0 + TFLOPS 2.8 cicc (pgcc Rel 3.0-5i) + mpich-1.1.2 with local changes + Windows NT4.0 sp5 MSVC++ 6.0 + +Known Problems: +============== + +o SunOS 5.6 with C WorkShop Compilers 4.2: Hyperslab selections will + fail if library is compiled using optimization of any level. + + + +%%%%1.2.0%%%% Release Information for hdf5-1.2.0 + +5. Release Information for hdf5-1.2.0 +=================================================================== + +A. Platforms Supported + ------------------- + +Operating systems listed below with compiler information and MPI library, if +applicable, are systems that HDF5 1.2.0 was tested on. + + Compiler & libraries + Platform Information Comment + -------- ---------- -------- + + AIX 4.3.2 (IBM SP) 3.6.6 + + Cray J90 10.0.0.6 cc 6.3.0.0 + + Cray T3E 2.0.4.61 cc 6.2.1.0 + mpt.1.3 + + FreeBSD 3.2 gcc 2.95.1 + + HP-UX B.10.20 HP C HP92453-01 A.10.32 + gcc 2.8.1 + + IRIX 6.5 MIPSpro cc 7.30 + + IRIX64 6.5 (64 & n32) MIPSpro cc 7.3.1m + mpt.1.3 (SGI MPI 3.2.0.0) + + Linux 2.2.10 egcs-2.91.66 configured with + --disable-hsizet + lbraries: glibc2 + + OSF1 V4.0 DEC-V5.2-040 + + SunOS 5.6 cc WorkShop Compilers 4.2 + no optimization + gcc 2.8.1 + + SunOS 5.7 cc WorkShop Compilers 5.0 + gcc 2.8.1 + + TFLOPS 2.7.1 cicc (pgcc Rel 3.0-4i) + mpich-1.1.2 with local changes + + Windows NT4.0 intel MSVC++ 5.0 and 6.0 + + Windows NT alpha 4.0 MSVC++ 5.0 + + Windows 98 MSVC++ 5.0 + + +B. Known Problems + -------------- + +* NT alpha 4.0 + Dumper utiliy h5dump fails if linked with DLL. + +* SunOS 5.6 with C WorkShop Compilers 4.2 + Hyperslab selections will fail if library is compiled using optimization + of any level. + + +C. Changes Since Version 1.0.1 + --------------------------- + +1. Documentation + ------------- + +* More examples + +* Updated user guide, reference manual, and format specification. + +* Self-contained documentation for installations isolated from the + Internet. + +* HDF5 Tutorial was added to the documentation + +2. Configuration + ------------- + +* Better detection and support for MPI-IO. + +* Recognition of compilers with known code generation problems. + +* Support for various compilers on a single architecture (e.g., the + native compiler and the GNU compilers). + +* Ability to build from read-only media and with different compilers + and/or options concurrently. + +* Added a libhdf5.settings file which summarizes the configuration + information and is installed along with the library. + +* Builds a shared library on most systems that support it. + +* Support for Cray T3E, J90 and Windows/NT. + +3. Debugging + --------- + +* Improved control and redirection of debugging and tracing messages. + +4. Datatypes + --------- + +* Optimizations to compound datatype conversions and I/O operations. + +* Added nearly 100 optimized conversion functions for native datatypes + including support for non-aligned data. + +* Added support for bitfield, opaque, and enumeration types. + +* Added distinctions between signed and unsigned char types to the + list of predefined native hdf5 datatypes. + +* Added HDF5 type definitions for C9x types like int32_t. + +* Application-defined type conversion functions can handle non-packed + data. + +* Changed the H5Tunregister() function to use wildcards when matching + conversion functions. H5Tregister_hard() and H5Tregister_soft() + were combined into H5Tregister(). + +* Support for variable-length datatypes (arrays of varying length per + dataset element). Variable length strings currently supported only + as variable length arrays of 1-byte integers. + +5. Dataspaces + ---------- + +* New query functions for selections. + +* I/O operations bypass the stripmining loop and go directly to + storage for certain contiguous selections in the absense of type + conversions. In other cases the stripmining buffers are used more + effectively. + +* Reduced the number of I/O requests under certain circumstances, + improving performance on systems with high I/O latency. + +6. Persistent Pointers + ------------------- + +* Object (serial and parallel) and dataset region (serial only) + references are implemented. + +7. Parallel Support + ---------------- + +* Improved parallel I/O performance. + +* Supported new platforms: Cray T3E, Linux, DEC Cluster. + +* Use vendor supported version of MPIO on SGI O2K and Cray platforms. + +* Improved the algorithm that translates an HDF5 hyperslab selection + into an MPI type for better collective I/O performance. + +8. New API functions + ----------------- + + a. Property List Interface: + ------------------------ + + H5Pset_xfer - set data transfer properties + H5Pset_preserve - set dataset transfer property list status + H5Pget_preserve - get dataset transfer property list status + H5Pset_hyper_cache - indicates whether to cache hyperslab blocks during I/O + H5Pget_hyper_cache - returns information regarding the caching of + hyperslab blocks during I/O + H5Pget_btree_ratios - sets B-tree split ratios for a dataset + transfer property list + H5Pset_btree_ratios - gets B-tree split ratios for a dataset + transfer property list + H5Pset_vlen_mem_manager - sets the memory manager for variable-length + datatype allocation + H5Pget_vlen_mem_manager - sets the memory manager for variable-length + datatype allocation + + b. Dataset Interface: + ------------------ + + H5Diterate - iterate over all selected elements in a dataspace + H5Dget_storage_size - return the amount of storage required for a dataset + H5Dvlen_reclaim - reclaim VL datatype memory buffers + + c. Dataspace Interface: + -------------------- + H5Sget_select_hyper_nblocks - get number of hyperslab blocks + H5Sget_select_hyper_blocklist - get the list of hyperslab blocks + currently selected + H5Sget_select_elem_npoints - get the number of element points + in the current selection + H5Sget_select_elem_pointlist - get the list of element points + currently selected + H5Sget_select_bounds - gets the bounding box containing + the current selection + + d. Datatype Interface: + ------------------- + H5Tget_super - return the base datatype from which a + datatype is derived + H5Tvlen_create - creates a new variable-length dataype + H5Tenum_create - creates a new enumeration datatype + H5Tenum_insert - inserts a new enumeration datatype member + H5Tenum_nameof - returns the symbol name corresponding to a + specified member of an enumeration datatype + H5Tvalueof - return the value corresponding to a + specified member of an enumeration datatype + H5Tget_member_value - return the value of an enumeration datatype member + H5Tset_tag - tags an opaque datatype + H5Tget_tag - gets the tag associated with an opaque datatype + + e. Identifier Interface: + --------------------- + H5Iget_type - retrieve the type of an object + + f. Reference Interface: + -------------------- + H5Rcreate - creates a reference + H5Rdereference - open the HDF5 object referenced + H5Rget_region - retrieve a dataspace with the specified region selected + H5Rget_object_type - retrieve the type of object that an + object reference points to + + g. Ragged Arrays (alpha) (names of those API functions were changed): + ------------------------------------------------------------------ + H5RAcreate - create a new ragged array (old name was H5Rcreate) + H5RAopen - open an existing array (old name was H5Ropen) + H5RAclose - close a ragged array (old name was H5Rclose) + H5RAwrite - write to an array (old name was H5Rwrite) + H5RAread - read from an array (old name was H5Rread) + + +9. Tools + ----- + +* Enhancements to the h5ls tool including the ability to list objects + from more than one file, to display raw hexadecimal data, to + show file addresses for raw data, to format output more reasonably, + to show object attributes, and to perform a recursive listing, + +* Enhancements to h5dump: support new data types added since previous + versions. + +* h5toh4: An hdf5 to hdf4 converter. + + + +%%%%1.0.1%%%% Release Information for hdf5-1.0.1 + +4. Changes from Release 1.0.0 to Release 1.0.1 +===================================================================== + +* [Improvement]: configure sets up the Makefile in the parallel tests + suit (testpar/) correctly. + +* [Bug-Fix]: Configure failed for all IRIX versions other than 6.3. + It now configures correctly for all IRIX 6.x version. + +* Released Parallel HDF5 + + Supported Features: + ------------------ + + HDF5 files are accessed according to the communicator and INFO + object defined in the property list set by H5Pset_mpi. + + Independent read and write accesses to fixed and extendable dimension + datasets. + + Collective read and write accesses to fixed dimension datasets. + + Supported Platforms: + ------------------- + + Intel Red + IBM SP2 + SGI Origin 2000 + + Changes In This Release: + ----------------------- + + o Support of Access to Extendable Dimension Datasets. + Extendable dimension datasets must use chunked storage methods. + A new function, H5Dextend, is created to extend the current + dimensions of a dataset. The current release requires the + MPI application must make a collective call to extend the + dimensions of an extendable dataset before writing to the + newly extended area. (The serial does not require the + call of H5Dextend. The dimensions of an extendable + dataset is increased when data is written to beyond the + current dimensions but within the maximum dimensions.) + The required collective call of H5Dextend may be relaxed + in future release. + + This release only support independent read and write accesses + to extendable datasets. Collective accesses to extendable + datasets will be implemented in future releases. + + o Collective access to fixed dimension datasets. + Collective access to a dataset can be specified in the transfer + property list argument in H5Dread and H5Dwrite. The current + release supports collective access to fixed dimension datasets. + Collective access to extendable datasets will be implemented in + future releases. + + o HDF5 files are opened according to Communicator and INFO object. + H5Dopen now records the communicator and INFO setup by H5Pset_mmpi + and pass them to the corresponding MPIO open file calls for + processing. + + o This release has been tested on IBM SP2, Intel Red and SGI Origin 2000 + systems. It uses the ROMIO version of MPIO interface for parallel + I/O supports. + + + +%%%%1.0.0%%%% Release Information for hdf5-1.0.0 + +3. Changes from the Beta 1.0.0 Release to Release 1.0.0 +==================================================================== + +* Added fill values for datasets. For contiguous datasets fill value + performance may be quite poor since the fill value is written to the + entire dataset when the dataset is created. This will be remedied + in a future version. Chunked datasets using fill values do not + incur any additional overhead. See H5Pset_fill_value(). + +* Multiple hdf5 files can be "mounted" on one another to create a + larger virtual file. See H5Fmount(). + +* Object names can be removed or changed but objects are never + actually removed from the file yet. See H5Gunlink() and H5Gmove(). + +* Added a tuning mechanism for B-trees to insure that sequential + writes to chunked datasets use less overhead. See H5Pset_btree_ratios(). + +* Various optimizations and bug fixes. + + + +%%%%1.0.0 Beta%%%% Release Information for hdf5-1.0.0 Beta + +2. Changes from the Second Alpha 1.0.0 Release to the Beta 1.0.0 Release +========================================================================= + +* Strided hyperslab selections in dataspaces now working. + +* The compression API has been replaced with a more general filter + API. See doc/html/Filters.html for details. + +* Alpha-quality 2d ragged arrays are implemented as a layer built on + top of other hdf5 objects. The API and storage format will almost + certainly change. + +* More debugging support including API tracing. See Debugging.html. + +* C and Fortran style 8-bit fixed-length character string types are + supported with space or null padding or null termination and + translations between them. + +* Added function H5Fflush() to write all cached data immediately to + the file. + +* Datasets maintain a modification time which can be retrieved with + H5Gstat(). + +* The h5ls tool can display much more information, including all the + values of a dataset. + + + +%%%%1.0.0 Alpha 2%%%% Release Information for hdf5-1.0.0 Alpha 2 + +1. Changes from the First Alpha 1.0.0 Release to + the Second Alpha 1.0.0 Release +===================================================================== + +* Two of the packages have been renamed. The data space API has been + renamed from `H5P' to `H5S' and the property list (template) API has + been renamed from `H5C' to `H5P'. + +* The new attribute API `H5A' has been added. An attribute is a small + dataset which can be attached to some other object (for instance, a + 4x4 transformation matrix attached to a 3-dimensional dataset, or an + English abstract attached to a group). + +* The error handling API `H5E' has been completed. By default, when an + API function returns failure an error stack is displayed on the + standard error stream. The H5Eset_auto() controls the automatic + printing and H5E_BEGIN_TRY/H5E_END_TRY macros can temporarily + disable the automatic error printing. + +* Support for large files and datasets (>2GB) has been added. There + is an html document that describes how it works. Some of the types + for function arguments have changed to support this: all arguments + pertaining to sizes of memory objects are `size_t' and all arguments + pertaining to file sizes are `hsize_t'. + +* More data type conversions have been added although none of them are + fine tuned for performance. There are new converters from integer + to integer and float to float, but not between integers and floating + points. A bug has been fixed in the converter between compound + types. + +* The numbered types have been removed from the API: int8, uint8, + int16, uint16, int32, uint32, int64, uint64, float32, and float64. + Use standard C types instead. Similarly, the numbered types were + removed from the H5T_NATIVE_* architecture; use unnumbered types + which correspond to the standard C types like H5T_NATIVE_INT. + +* More debugging support was added. If tracing is enabled at + configuration time (the default) and the HDF5_TRACE environment + variable is set to a file descriptor then all API calls will emit + the function name, argument names and values, and return value on + that file number. There is an html document that describes this. + If appropriate debugging options are enabled at configuration time, + some packages will display performance information on stderr. + +* Data types can be stored in the file as independent objects and + multiple datasets can share a data type. + +* The raw data I/O stream has been implemented and the application can + control meta and raw data caches, so I/O performance should be + improved from the first alpha release. + +* Group and attribute query functions have been implemented so it is + now possible to find out the contents of a file with no prior + knowledge. + +* External raw data storage allows datasets to be written by other + applications or I/O libraries and described and accessed through + HDF5. + +* Hard and soft (symbolic) links are implemented which allow groups to + share objects. Dangling and recursive symbolic links are supported. + +* User-defined data compression is implemented although we may + generalize the interface to allow arbitrary user-defined filters + which can be used for compression, checksums, encryption, + performance monitoring, etc. The publicly-available `deflate' + method is predefined if the GNU libz.a can be found at configuration + time. + +* The configuration scripts have been modified to make it easier to + build debugging vs. production versions of the library. + +* The library automatically checks that the application was compiled + with the correct version of header files. + + + Parallel HDF5 Changes + +* Parallel support for fixed dimension datasets with contiguous or + chunked storages. Also, support unlimited dimension datasets which + must use chunk storage. No parallel support for compressed datasets. + +* Collective data transfer for H5Dread/H5Dwrite. Collective access + support for datasets with contiguous storage only, thus only fixed + dimension datasets for now. + +* H5Pset_mpi and H5Pget_mpi no longer have the access_mode + argument. It is taken over by the data-transfer property list + of H5Dread/H5Dwrite. + +* New functions H5Pset_xfer and H5Pget_xfer to handle the + specification of independent or collective data transfer_mode + in the dataset transfer properties list. The properties + list can be used to specify data transfer mode in the H5Dwrite + and H5Dread function calls. + +* Added parallel support for datasets with chunked storage layout. + When a dataset is extend in a PHDF5 file, all processes that open + the file must collectively call H5Dextend with identical new dimension + sizes. + + + LIST OF API FUNCTIONS + +The following functions are implemented. Errors are returned if an +attempt is made to use some feature which is not implemented and +printing the error stack will show `not implemented yet'. + +Library + H5check - check that lib version matches header version + H5open - initialize library (happens automatically) + H5close - shut down the library (happens automatically) + H5dont_atexit - don't call H5close on exit + H5get_libversion - retrieve library version info + H5check_version - check for specific library version + +Property Lists + H5Pclose - release template resources + H5Pcopy - copy a template + H5Pcreate - create a new template + H5Pget_chunk - get chunked storage properties + H5Pset_chunk - set chunked storage properties + H5Pget_class - get template class + H5Pget_istore_k - get chunked storage properties + H5Pset_istore_k - set chunked storage properties + H5Pget_layout - get raw data layout class + H5Pset_layout - set raw data layout class + H5Pget_sizes - get address and size sizes + H5Pset_sizes - set address and size sizes + H5Pget_sym_k - get symbol table storage properties + H5Pset_sym_k - set symbol table storage properties + H5Pget_userblock - get user-block size + H5Pset_userblock - set user-block size + H5Pget_version - get file version numbers + H5Pget_alignment - get data alignment properties + H5Pset_alignment - set data alignment properties + H5Pget_external_count- get count of external data files + H5Pget_external - get information about an external data file + H5Pset_external - add a new external data file to the list + H5Pget_driver - get low-level file driver class + H5Pget_stdio - get properties for stdio low-level driver + H5Pset_stdio - set properties for stdio low-level driver + H5Pget_sec2 - get properties for sec2 low-level driver + H5Pset_sec2 - set properties for sec2 low-level driver + H5Pget_core - get properties for core low-level driver + H5Pset_core - set properties for core low-level driver + H5Pget_split - get properties for split low-level driver + H5Pset_split - set properties for split low-level driver + H5P_get_family - get properties for family low-level driver + H5P_set_family - set properties for family low-level driver + H5Pget_cache - get meta- and raw-data caching properties + H5Pset_cache - set meta- and raw-data caching properties + H5Pget_buffer - get raw-data I/O pipe buffer properties + H5Pset_buffer - set raw-data I/O pipe buffer properties + H5Pget_preserve - get type conversion preservation properties + H5Pset_preserve - set type conversion preservation properties + H5Pget_nfilters - get number of raw data filters + H5Pget_filter - get raw data filter properties + H5Pset_filter - set raw data filter properties + H5Pset_deflate - set deflate compression filter properties + H5Pget_mpi - get MPI-IO properties + H5Pset_mpi - set MPI-IO properties + H5Pget_xfer - get data transfer properties + + H5Pset_xfer - set data transfer properties + + H5Pset_preserve - set dataset transfer property list status + + H5Pget_preserve - get dataset transfer property list status + + H5Pset_hyper_cache - indicates whether to cache hyperslab blocks during I/O + + H5Pget_hyper_cache - returns information regarding the caching of + hyperslab blocks during I/O + + H5Pget_btree_ratios - sets B-tree split ratios for a dataset + transfer property list + + H5Pset_btree_ratios - gets B-tree split ratios for a dataset + transfer property list + + H5Pset_vlen_mem_manager - sets the memory manager for variable-length + datatype allocation + + H5Pget_vlen_mem_manager - sets the memory manager for variable-length + datatype allocation + +Datasets + H5Dclose - release dataset resources + H5Dcreate - create a new dataset + H5Dget_space - get data space + H5Dget_type - get data type + H5Dget_create_plist - get dataset creation properties + H5Dopen - open an existing dataset + H5Dread - read raw data + H5Dwrite - write raw data + H5Dextend - extend a dataset + + H5Diterate - iterate over all selected elements in a dataspace + + H5Dget_storage_size - return the amount of storage required for a dataset + + H5Dvlen_reclaim - reclaim VL datatype memory buffers + +Attributes + H5Acreate - create a new attribute + H5Aopen_name - open an attribute by name + H5Aopen_idx - open an attribute by number + H5Awrite - write values into an attribute + H5Aread - read values from an attribute + H5Aget_space - get attribute data space + H5Aget_type - get attribute data type + H5Aget_name - get attribute name + H5Anum_attrs - return the number of attributes for an object + H5Aiterate - iterate over an object's attributes + H5Adelete - delete an attribute + H5Aclose - close an attribute + +Errors + H5Eclear - clear the error stack + H5Eprint - print an error stack + H5Eget_auto - get automatic error reporting settings + H5Eset_auto - set automatic error reporting + H5Ewalk - iterate over the error stack + H5Ewalk_cb - the default error stack iterator function + H5Eget_major - get the message for the major error number + H5Eget_minor - get the message for the minor error number + +Files + H5Fclose - close a file and release resources + H5Fcreate - create a new file + H5Fget_create_plist - get file creation property list + H5Fget_access_plist - get file access property list + H5Fis_hdf5 - determine if a file is an hdf5 file + H5Fopen - open an existing file + H5Freopen - reopen an HDF5 file + H5Fmount - mount a file + H5Funmount - unmount a file + H5Fflush - flush all buffers associated with a file to disk + +Groups + H5Gclose - close a group and release resources + H5Gcreate - create a new group + H5Gopen - open an existing group + H5Giterate - iterate over the contents of a group + H5Gmove - change the name of some object + H5Glink - create a hard or soft link to an object + H5Gunlink - break the link between a name and an object + H5Gget_objinfo - get information about a group entry + H5Gget_linkval - get the value of a soft link + H5Gget_comment - get the comment string for an object + H5Gset_comment - set the comment string for an object + +Dataspaces + H5Screate - create a new data space + H5Scopy - copy a data space + H5Sclose - release data space + H5Screate_simple - create a new simple data space + H5Sset_space - set simple data space extents + H5Sis_simple - determine if data space is simple + H5Sset_extent_simple - set simple data space dimensionality and size + H5Sget_simple_extent_npoints - get number of points in simple extent + H5Sget_simple_extent_ndims - get simple data space dimensionality + H5Sget_simple_extent_dims - get simple data space size + H5Sget_simple_extent_type - get type of simple extent + H5Sset_extent_none - reset extent to be empty + H5Sextent_copy - copy the extent from one data space to another + H5Sget_select_npoints - get number of points selected for I/O + H5Sselect_hyperslab - set hyperslab dataspace selection + H5Sselect_elements - set element sequence dataspace selection + H5Sselect_all - select entire extent for I/O + H5Sselect_none - deselect all elements of extent + H5Soffset_simple - set selection offset + H5Sselect_valid - determine if selection is valid for extent + + H5Sget_select_hyper_nblocks - get number of hyperslab blocks + + H5Sget_select_hyper_blocklist - get the list of hyperslab blocks + currently selected + + H5Sget_select_elem_npoints - get the number of element points + in the current selection + + H5Sget_select_elem_pointlist - get the list of element points + currently selected + + H5Sget_select_bounds - gets the bounding box containing + the current selection + +Datatypes + H5Tclose - release data type resources + H5Topen - open a named data type + H5Tcommit - name a data type + H5Tcommitted - determine if a type is named + H5Tcopy - copy a data type + H5Tcreate - create a new data type + H5Tequal - compare two data types + H5Tlock - lock type to prevent changes + H5Tfind - find a data type conversion function + H5Tconvert - convert data from one type to another + H5Tregister - register a conversion function + H5Tunregister - remove a conversion function + H5Tget_overflow - get function that handles overflow conv. cases + H5Tset_overflow - set function to handle overflow conversion cases + H5Tget_class - get data type class + H5Tget_cset - get character set + H5Tget_ebias - get exponent bias + H5Tget_fields - get floating point fields + H5Tget_inpad - get inter-field padding + H5Tget_member_dims - get struct member dimensions + H5Tget_member_name - get struct member name + H5Tget_member_offset - get struct member byte offset + H5Tget_member_type - get struct member type + H5Tget_nmembers - get number of struct members + H5Tget_norm - get floating point normalization + H5Tget_offset - get bit offset within type + H5Tget_order - get byte order + H5Tget_pad - get padding type + H5Tget_precision - get precision in bits + H5Tget_sign - get integer sign type + H5Tget_size - get size in bytes + H5Tget_strpad - get string padding + H5Tinsert - insert scalar struct member + H5Tinsert_array - insert array struct member + H5Tpack - pack struct members + H5Tset_cset - set character set + H5Tset_ebias - set exponent bias + H5Tset_fields - set floating point fields + H5Tset_inpad - set inter-field padding + H5Tset_norm - set floating point normalization + H5Tset_offset - set bit offset within type + H5Tset_order - set byte order + H5Tset_pad - set padding type + H5Tset_precision - set precision in bits + H5Tset_sign - set integer sign type + H5Tset_size - set size in bytes + H5Tset_strpad - set string padding + + H5Tget_super - return the base datatype from which a + datatype is derived + + H5Tvlen_create - creates a new variable-length dataype + + H5Tenum_create - creates a new enumeration datatype + + H5Tenum_insert - inserts a new enumeration datatype member + + H5Tenum_nameof - returns the symbol name corresponding to a + specified member of an enumeration datatype + + H5Tvalueof - return the value corresponding to a + specified member of an enumeration datatype + + H5Tget_member_value - return the value of an enumeration datatype member + + H5Tset_tag - tags an opaque datatype + + H5Tget_tag - gets the tag associated with an opaque datatype + + - H5Tregister_hard - register specific type conversion function + - H5Tregister_soft - register general type conversion function + +Filters + H5Tregister - register a conversion function + +Compression + H5Zregister - register new compression and uncompression + functions for a method specified by a method number + +Identifiers + + H5Iget_type - retrieve the type of an object + +References + + H5Rcreate - creates a reference + + H5Rdereference - open the HDF5 object referenced + + H5Rget_region - retrieve a dataspace with the specified region selected + + H5Rget_object_type - retrieve the type of object that an + object reference points to + +Ragged Arrays (alpha) + H5RAcreate - create a new ragged array + H5RAopen - open an existing array + H5RAclose - close a ragged array + H5RAwrite - write to an array + H5RAread - read from an array + + |