diff options
Diffstat (limited to 'doc/html/ADGuide')
-rwxr-xr-x | doc/html/ADGuide/Changes.html | 1086 | ||||
-rwxr-xr-x | doc/html/ADGuide/H4toH5Mapping.doc | bin | 238592 -> 0 bytes | |||
-rw-r--r-- | doc/html/ADGuide/H4toH5Mapping.pdf | bin | 823200 -> 0 bytes | |||
-rw-r--r-- | doc/html/ADGuide/HISTORY.txt | 3180 | ||||
-rwxr-xr-x | doc/html/ADGuide/ImageSpec.html | 1279 | ||||
-rw-r--r-- | doc/html/ADGuide/Makefile.am | 18 | ||||
-rw-r--r-- | doc/html/ADGuide/Makefile.in | 487 | ||||
-rwxr-xr-x | doc/html/ADGuide/PaletteExample1.gif | bin | 2731 -> 0 bytes | |||
-rwxr-xr-x | doc/html/ADGuide/Palettes.fm.anc.gif | bin | 4748 -> 0 bytes | |||
-rw-r--r-- | doc/html/ADGuide/RELEASE.txt | 906 |
10 files changed, 0 insertions, 6956 deletions
diff --git a/doc/html/ADGuide/Changes.html b/doc/html/ADGuide/Changes.html deleted file mode 100755 index 813da28..0000000 --- a/doc/html/ADGuide/Changes.html +++ /dev/null @@ -1,1086 +0,0 @@ -<html> - <head> - <title>HDF5 Software Changes</title> - -<!-- #BeginLibraryItem "/ed_libs/styles_Gen.lbi" --> -<!-- - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * - * Copyright by the Board of Trustees of the University of Illinois. * - * All rights reserved. * - * * - * This file is part of HDF5. The full HDF5 copyright notice, including * - * terms governing use, modification, and redistribution, is contained in * - * the files COPYING and Copyright.html. COPYING can be found at the root * - * of the source code distribution tree; Copyright.html can be found at the * - * root level of an installed copy of the electronic HDF5 document set and * - * is linked from the top-level documents page. It can also be found at * - * http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html. If you do not have * - * access to either file, you may request a copy from hdfhelp@ncsa.uiuc.edu. * - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * - --> - -<link href="../ed_styles/GenElect.css" rel="stylesheet" type="text/css"> -<!-- #EndLibraryItem --></head> - - <body bgcolor="#FFFFFF"> - - -<!-- #BeginLibraryItem "/ed_libs/NavBar_ADevG.lbi" --><hr> -<center> -<table border=0 width=98%> -<tr><td valign=top align=left> - <a href="../index.html">HDF5 documents and links</a> <br> - <a href="../H5.intro.html">Introduction to HDF5</a> <br> - <!-- - <a href="Glossary.html">Glossary</a><br> - --> -</td> -<td valign=top align=right> - <a href="http://hdf.ncsa.uiuc.edu/HDF5/doc/UG/index.html">HDF5 User's Guide</a> <br> - <a href="../RM_H5Front.html">HDF5 Reference Manual</a> <br> - <a href="../ADGuide.html">HDF5 Application Developer's Guide</a> <br> -</td></tr> -</table> -</center> -<hr> -<!-- #EndLibraryItem --><center> -<h1>HDF5 Software Changes from Release to Release</h1> -</center> - -<!-- Document API CHANGES ONLY in this file. --> - -This document is intended to assist application developers who must keep -an application synchronized with the HDF5 library or related software. - - -<h2>Release 1.7.x (current release) versus Release 1.6</h2> - -<dir> - - <h3>Deleted Functions</h3> - The following functions are removed from HDF5 Release 1.7.x as the GASS - virtual file driver has been retired. - - <dir> - <table border=0> - <tr valign="top" align="left"><td> - - </td><td> -<pre> -<code>H5Pget_fapl_gass</code> -</pre> - </td><td> - - </td><td> -<pre> -<code>H5Pset_fapl_gass</code> -</pre> - </td><td> - - </td><td> - </td></tr> - </table> - </dir> -</dir> -<p> - -<h2>Release 1.6.0 (current release) versus Release 1.4.5</h2> - -<dir> - -This section lists the API-level changes that have been made in the -transition from the HDF5 Release 1.4.<i>x</i> series to Release 1.6.0. - - - <h3>New Functions and Tools</h3> - <dl> - <dt>The following functions are new for Release 1.6.0 and are included in the - <a href="../RM_H5Front.html"><cite>HDF5 Reference Manual</cite></a>. - -<dd> -<table border="0"> - <tr> - <td align="left" valign="top"><code>H5Dget_offset</code></td> - <td align="left" valign="top"><em>hsize_t</em> <code>H5Dget_offset</code> (<em>hid_t </em><code>dset_id</code>)</td> - </tr> - <tr> - <td align="left" valign="top"><code>H5Dget_space_status</code></td> - <td align="left" valign="top"><em>hid_t</em> <code>H5Dget_space_status</code> (<em>hid_t</em> - <code>dset_id</code>, <em>H5D_space_status_t *</em><code>status</code>) - </td> - </td> - </tr> - <tr> - <td align="left" valign="top"><code>H5Fget_obj_ids</code></td> - <td align="left" valign="top"> - <em>int </em><code>H5Fget_obj_ids</code> (<em>hid_t</em> <code>file_id</code>, - <em>unsigned int</em> <code>types</code>, - <em>int</em> <code>max_objs</code>, <em>hid_t *</em><code>obj_id_list</code>) - </td> - </tr> - <tr> - <td align="left" valign="top"><code>H5Fget_vfd_handle</code></td> - <td align="left" valign="top"> - <em>herr_t </em><code>H5Fget_vfd_handle</code> (<em>hid_t</em> <code>file_id</code>, - <em>hid_t</em> <code>fapl_id</code>, <em>void *</em><code>file_handle</code>) - </td> - </tr> - <tr> - <td align="left" valign="top"><code>H5Gget_num_objs</code></td> - <td align="left" valign="top"> - <em>herr_t</em> <code>H5Gget_num_objs</code> (<em>hid_t</em> <code>loc_id</code>, - <em>hsize_t* </em> <code>num_obj</code>) - </td> - </tr> - <tr> - <td align="left" valign="top"><code>H5Gget_objname_by_idx</code></td> - <td align="left" valign="top"> - <em>ssize_t</em> <code>H5Gget_objname_by_idx</code> (<em>hid_t</em> <code>group_id</code>, - <em>hsize_t</em> <code>idx</code>, <em>char *</em><code>name</code>, - <em>size_t*</em> <code>size</code>) - </td> - </tr> - <tr> - <td align="left" valign="top"><code>H5Gget_objtype_by_idx</code></td> - <td align="left" valign="top"> - <em>int</em> <code>H5Gget_objtype_by_idx</code> (<em>hid_t</em> <code>group_id</code>, - <em>hsize_t</em> <code>idx</code>) - </td> - </tr> - <tr> - <td align="left" valign="top"><code>H5Iget_name</code></td> - <td align="left" valign="top"> - <em>ssize_t</em> <code>H5Iget_name</code> (<em>hid_t</em> <code>obj_id</code>, - <em>char *</em><code>name</code>, <em>size_t</em> <code>size</code>) - </td> - </tr> - <tr> - <td align="left" valign="top"><code>H5Pall_filters_avail</code></td> - <td align="left" valign="top"> - <em>htri_t</em> <code>H5Pall_filters_avail</code> (<em>hid_t</em> <code>dcpl_id</code>) - </td> - </tr> - <tr> - <td align="left" valign="top"><code>H5Pfill_value_defined</code></td> - <td align="left" valign="top"> - <em>herr_t </em><code>H5Pfill_value_defined</code> (<em>hid_t</em> <code>plist_id</code>, - <em>H5D_fill_value_t *</em><code>status</code>) - </td> - </tr> - <tr> - <td align="left" valign="top"><code>H5Pget_alloc_time</code></td> - <td align="left" valign="top"> - <em>herr_t </em><code>H5Pget_alloc_time</code> (<em>hid_t</em> <code>plist_id</code>, - <em>H5D_alloc_time_t *</em><code>alloc_time</code>) - </td> - </tr> - <tr> - <td align="left" valign="top"><code>H5Pget_edc_check</code></td> - <td align="left" valign="top"> - <em>H5Z_EDC_t</em> <code>H5Pget_edc_check</code> (<em>hid_t</em> - <code>plist</code>) - </td> - </tr> - <tr> - <td align="left" valign="top"><code>H5Pget_family_offset</code></td> - <td align="left" valign="top"> - <em>herr_t</em> <code>H5Pget_family_offset</code> (<em>hid_t</em> <code>fapl_id</code>, - <em>hsize_t *</em><code>offset</code>) - </td> - </tr> - <tr> - <td align="left" valign="top"><code>H5Pget_fapl_mpiposix</code></td> - <td align="left" valign="top"> - <em>herr_t</em> <code>H5Pget_fapl_mpiposix</code> (<em>hid_t</em> <code>fapl_id</code>, - <em>MPI_Comm *</em><code>comm</code>) - </td> - </tr> - <tr> - <td align="left" valign="top"><code>H5Pget_fill_time</code></td> - <td align="left" valign="top"> - <em>herr_t </em><code>H5Pget_fill_time</code> (<em>hid_t</em> <code>plist_id</code>, - <em>H5D_fill_time_t *</em><code>fill_time</code>) - </td> - </tr> - <tr> - <td align="left" valign="top"><code>H5Pget_filter_by_id</code></td> - <td align="left" valign="top"> - <em>herr_t</em> <code>H5Pget_filter_by_id</code> (<em>hid_t</em> <code>plist_id</code>, - <em>H5Z_filter_t</em> <code>filter</code>, <em>unsigned int *</em><code>flags</code>, - <em>size_t *</em><code>cd_nelmts</code>, <em>unsigned int</em> <code>cd_values[]</code>, - <em>size_t</em> <code>namelen</code>, <em>char *</em><code>name[]</code>) - </td> - </tr> - <tr> - <td align="left" valign="top"><code>H5Pget_hyper_vector_size</code></td> - <td align="left" valign="top"> - <em>herr_t</em> <code>H5Pget_hyper_vector_size</code> (<em>hid_t</em> <code>dxpl_id</code>, - <em>size_t *</em><code>vector_size</code>) - </td> - </tr> - <tr> - <td align="left" valign="top"><code>H5Pget_multi_type</code></td> - <td align="left" valign="top"> - <em>herr_t</em> <code>H5Pget_multi_type</code> (<em>hid_t</em> <code>fapl_id</code>, - <em>H5FD_mem_t *</em><code>type</code>) - </td> - </tr> - <tr> - <td align="left" valign="top"><code>H5Pmodify_filter</code></td> - <td align="left" valign="top"> - <em>herr_t</em> <code>H5Pmodify_filter</code> (<em>hid_t</em> <code>plist</code>, - <em>H5Z_filter_t</em> <code>filter</code>, <em>unsigned int</em> <code>flags</code>, - <em>size_t</em> <code>cd_nelmts</code>, <em>const unsigned int</em> <code>cd_values[]</code>) - </td> - </tr> - <tr> - <td align="left" valign="top"><code>H5Pset_alloc_time</code></td> - <td align="left" valign="top"> - <em>herr_t </em><code>H5Pset_alloc_time</code> (<em>hid_t</em> - <code>plist_id</code>, <em>H5D_alloc_time_t</em> <code>alloc_time</code>) - </td> - </tr> - <tr> - <td align="left" valign="top"><code>H5Pset_edc_check</code></td> - <td align="left" valign="top"> - <em>herr_t</em> <code>H5Pset_edc_check</code> (<em>hid_t</em> - <code>plist</code>, <em>H5Z_EDC_t</em> <code>check</code>) - </td> - </tr> - <tr> - <td align="left" valign="top"><code>H5Pset_family_offset</code></td> - <td align="left" valign="top"> - <em>herr_t</em> <code>H5Pset_family_offset</code> (<em>hid_t</em> <code>fapl_id</code>, - <em>hsize_t</em> <code>offset</code>) - </td> - </tr> - <tr> - <td align="left" valign="top"><code>H5Pset_fapl_mpiposix</code></td> - <td align="left" valign="top"> - <em>herr_t</em> <code>H5Pset_fapl_mpiposix</code> (<em>hid_t</em> <code>fapl_id</code>, - <em>MPI_Comm</em> <code>comm</code>) - </td> - </tr> - <tr> - <td align="left" valign="top"><code>H5Pset_fill_time</code></td> - <td align="left" valign="top"> - <em>herr_t </em><code>H5Pset_fill_time</code> (<em>hid_t</em> <code>plist_id</code>, - <em>H5D_fill_time_t</em> <code>fill_time</code>) - </td> - </tr> - <tr> - <td align="left" valign="top"><code>H5Pset_filter</code></td> - <td align="left" valign="top"> - <em>herr_t</em> <code>H5Pset_filter</code> - (<em>hid_t</em> <code>plist</code>, <em>H5Z_filter_t</em> <code>filter</code>, - <em>unsigned int</em> <code>flags</code>, <em>size_t</em> <code>cd_nelmts</code>, - <em>const unsigned int</em> <code>cd_values[])</code> - </td> - </tr> - <tr> - <td align="left" valign="top"><code>H5Pset_filter_callback</code></td> - <td align="left" valign="top"> - <em>herr_t</em> <code>H5Pset_filter_callback</code> (<em>hid_t</em> - <code>plist</code>, <em>H5Z_filter_func_t</em> <code>func</code>, - <em>void *</em><code>op_data</code>) - </td> - </tr> - <tr> - <td align="left" valign="top"><code>H5Pset_fletcher32</code></td> - <td align="left" valign="top"> - <em>herr_t</em> <code>H5Pset_fletcher32</code> (<em>hid_t</em> - <code>plist</code>) - </td> - </tr> - <tr> - <td align="left" valign="top"><code>H5Pset_hyper_vector_size</code> </td> - <td align="left" valign="top"> - <em>herr_t</em> <code>H5Pset_hyper_vector_size</code> (<em>hid_t</em> <code>dxpl_id</code>, - <em>size_t</em> <code>vector_size</code>) - </td> - </tr> - <tr> - <td align="left" valign="top"><code>H5Pset_multi_type</code></td> - <td align="left" valign="top"> - <em>herr_t</em> <code>H5Pset_multi_type</code> (<em>hid_t</em> <code>fapl_id</code>, - <em>H5FD_mem_t</em> <code>type</code>) - </td> - </tr> - <tr> - <td align="left" valign="top"><code>H5Pset_shuffle</code></td> - <td align="left" valign="top"> - <em>herr_t</em> <code>H5Pset_shuffle</code> (<em>hid_t</em> <code>plist_id</code>) - </td> - </tr> - <tr> - <td align="left" valign="top"><code>H5Pset_szip</code></td> - <td align="left" valign="top"> - <em>herr_t</em> <code>H5Pset_szip</code> (<em>hid_t</em> <code>plist</code>, - <em>unsigned int</em> <code>options_mask</code>, <em>unsigned int</em> - <code>pixels_per_block</code>) - </td> - </tr> - <tr> - <td align="left" valign="top"><code>H5Rget_object_type</code></td> - <td align="left" valign="top"> - <em>int</em> <code>H5Rget_object_type</code> (<em>hid_t</em> <code>id</code>, - <em>void *</em><code>ref</code>) - </td> - </tr> - <tr> - <td align="left" valign="top"><code>H5set_free_list_limits</code></td> - <td align="left" valign="top"> - <em>herr_t</em> <code>H5set_free_list_limits</code> (<em>int</em> <code>reg_global_lim</code>, - <em>int</em> <code>reg_list_lim</code>, <em>int</em> <code>arr_global_lim</code>, - <em>int</em> <code>arr_list_lim</code>, <em>int</em> <code>blk_global_lim</code>, - <em>int</em> <code>blk_list_lim</code>) - </td> - </tr> - <tr> - <td align="left" valign="top"><code>H5Sget_select_type</code></td> - <td align="left" valign="top"> - <em>H5S_sel_type</em> <code>H5Sget_select_type</code> (<em>hid_t</em> <code>space_id</code>) - </td> - </tr> - <tr> - <td align="left" valign="top"><code>H5Tdetect_class</code></td> - <td align="left" valign="top"> - <em>htri_t </em><code>H5Tdetect_class</code> (<em>hid_t</em> <code>dtype_id</code>, - <em>H5T_class_t</em> <code>dtype_class</code>) - </td> - </tr> - <tr> - <td align="left" valign="top"><code>H5Tget_native_type</code></td> - <td align="left" valign="top"> - <em>hid_t</em> <code>H5Tget_native_type</code> (<em>hid_t</em> <code>type_id</code>, - <em>H5T_direction_t</em> <code>direction</code>) - </td> - </tr> - <tr> - <td align="left" valign="top"><code>H5Tis_variable_str</code></td> - <td align="left" valign="top"> - <em>htri_t </em><code>H5Tis_variable_str</code> (<em>hid_t </em><code>dtype_id</code>) - </td> - </tr> - <tr> - <td align="left" valign="top"><code>H5Zfilter_avail</code></td> - <td align="left" valign="top"> - <em>herr_t</em> <code>H5Zfilter_avail</code> (<em>H5Z_filter_t</em> <code>filter</code>) - </td> - </tr> - <tr> - <td align="left" valign="top"><code>H5Zunregister</code></td> - <td align="left" valign="top"> - <em>herr_t</em> <code>H5Zunregister</code> (<em>H5Z_filter_t</em> <code>filter</code>) - </td> - </tr> -</table> - </dd> - <dd> </dd> - - </dt> - <dt>The following tools are new for Release 1.5 and are included in the - <a href="../RM_H5Front.html"><cite>HDF5 Reference Manual</cite></a>. - <dd><code>h5diff</code> - <dd><code>h5import</code> - <dd><code>h5fc</code> - <dd><code>h5c++</code> - <dd><code>h5perf</code> - <dd><code>h5redeploy</code> - </dt> -</dl> - - - <h3>Deleted Functions</h3> - The following functions are deprecated in HDF5 Release 1.6.0. - A backward compatibility mode is provided in this release, - enabling these functions and other Release 1.4.x compatibility - features, but is available only when the HDF5 library is - configured with the flag <code>H5_WANT_H5_V1_4_COMPAT</code>. - The backward compatibility mode is not enabled in the - binaries distributed by NCSA. - - <dir> - <table border=0> - <tr valign="top" align="left"><td> - - </td><td> -<pre> -<code>H5Pset_hyper_cache</code> -<code>H5Pget_hyper_cache</code> -</pre> - </td><td> - - </td><td> -<pre> -<code>H5Rget_object_type</code> -</pre> - </td><td> - - </td><td> -<pre> - -</pre> - </td></tr> - </table> - </dir> - <p> - The above functions will eventually be removed from the HDF5 - distribution and from the <cite>HDF5 Reference Manual</cite>. - - - <h3>Functions with Changed Syntax</h3> - The following functions have changed as noted. - <dir> - <dl> - <dt>C functions: - <dt><code>H5FDflush and VFL "flush" callbacks</code> - <dd>An extra parameter <code>closing</code> has been added to - these functions, - to allow the library to indicate that the file will be closed - following the call to "flush". Actions in the "flush" call - that are duplicated in the VFL "close" call may be omitted by - the VFL driver. - <dt>* <code>H5Gget_objtype_by_idx</code> - <dd>The function return type has changed from - <code><em>int</em></code> to - the enumerated type <code><em>H5G_obj_t</em></code>. - <dt>* <code>H5Pset(get)_buffer</code> - <dd>The <code>size</code> parameter for <code>H5Pset_buffer</code> - has changed from type <code><em>hsize_t</em></code> to - <code><em>size_t</em></code>. - <dd>The <code>H5Pget_buffer</code> return type has similarly - changed from <code><em>hsize_t</em></code> to - <code><em>size_t</em></code>. - <dt>* <code>H5Pset(get)_cache</code> - <dd>The <code>rdcc_nelmts</code> parameter has changed from type - <code><em>int</em></code> to - <code><em>size_t</em></code>. - <dt>* <code>H5Pset_fapl_log</code> - <dd>The <code>verbosity</code> parameter has been removed. - <dd>Two new parameters have been added: - <code>flags</code> of type <code><em>unsigned</em></code> and - <code>buf_size</code> of type <code><em>size_t</em></code>. - <dt>* <code>H5Pset(get)_fapl_mpiposix</code> - <dd>A <code>use_gpfs</code> parameter of type - <code><em>hbool_t</em></code> has been added. - <dt>* <code>H5Pset(get)_sieve_buf_size</code> - <dd>The <code>size</code> parameter has changed from type - <code><em>hsize_t</em></code> to - <code><em>size_t</em></code>. - <dt>* <code>H5Pset(get)_sym_k</code> - <dd>The <code>lk</code> parameter has changed from type - <code><em>int</em></code> to - <code><em>unsigned</em></code>. - <dt>* <code>H5Sget_select_bounds</code> - <dd>The <code>start</code> and <code>end</code> parameters have - changed from type <code><em>hsize_t *</em></code> - to <code><em>hssize_t *</em></code> to better match the - rest of the dataspace API. - <dt>* <code>H5Zregister</code> - <dd>This function is substantially revised in Release 1.6.0 with - a new <code>H5Z_class_t</code> struct and - new <i>set local</i> and <i>can apply</i> callback functions. - <dt> - <dt>Fortran90 functions: - <dt><code>h5pset(get)_fapl_core_f</code> - <dd>The <code>backing_store</code> parameter has changed from - <code><em>INTEGER</em></code> to <code><em>LOGICAL</em></code> - to better match the C API. - <dt><code>h5pset(get)_preserve_f</code> - <dd>The <code>flag</code> parameter has changed from - <code><em>INTEGER</em></code> to <code><em>LOGICAL</em></code> - to better match the C API. - </dl> - </dir> - - <p> - Backward compatibility with the Release 1.4.x syntax is available - for the functions indicated above with a leading asterisk (*). - The backward compatibility features are available only when the - HDF5 library is configured with the flag - <code>H5_WANT_H5_V1_4_COMPAT</code>, - is not enabled in the binaries distributed by NCSA, and - will eventually be removed from the HDF5 distribution. - - - <h3>Constants with Changed Values</h3> - - -</dir> -<p> - - - - - - -<h2>Release 1.4.5 versus Release 1.4.4</h2> -<dir> - <h3>C Library</h3> - <dir> - - <b>Added functions:</b> - <dir> - <table border=0> - <tr valign=top align=left><td> -<pre> -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*/); -</pre> - </td></tr> - </table> - </dir> - - <b>Changed functions:</b> - <dir> - The following functions have changed behavior. - <p> - <table border=0> - <tr valign=top align=left><td> - <code>H5Pset_fapl_mpio </code><br> - <code>H5Pget_fapl_mpio</code><br> - <code>H5Fcreate</code><br> - <code>H5Fopen</code><br> - <code>H5Fclose</code> - </td><td> - Previously, the Communicator and Info object arguments supplied - to <code>H5Pset_fapl_mpio</code> were stored in the property with - its handle values. - This meant changes to the communicator or the Info object - after calling <code>H5Pset_fapl_mpio</code> would affect the how - the property list functioned. - This was also the case when <code>H5Fopen/create</code> operated. - They just stored the handle value. This is not according to the - MPI-2 defined behavior of how Info objects should be handled. - (MPI-2 defines Info objects must be parsed when called.)<br> - <code>H5Pset_fapl_mpio</code> now stores a duplicate of each of - the communicator and Info object.<br> - <code>H5Pget_fapl_mpio</code> now returns a duplicate of its - stored communicator and Info object. - It is now the responsibility of the applications to free - those objects when done.<p> - <code>H5Fcreate</code> and <code>H5Fopen</code> also store - a duplicate of the communicator and Info - object supplied by the file access property List. - <code>H5Fclose</code> frees the duplicates.<p> - Advice to users: User applications should release the communicator and - Info object returned by <code>H5Pget_fapl_mpio</code> when they are - no longer needed. - </td></tr> - </table> - </dir> - - - - <b>Removed functions:</b> - <dir> - <table border=0> - <tr valign=top align=left><td> -None -<!-- -<pre> -List deleted function(s) here. Remove forced spaces. -</pre> ---> - </td><td> - - </td><td> -<pre> -<!-- List deleted function(s) here. Remove forced spaces. --> -</pre> - </td></tr> - </table> - </dir> - - There were no other public API changes in the C library for this release. - - </dir> - <h3>Fortran90 Library</h3> - <dir> - - - The following missing Fortran functions were added: -<br> -<br> - <code> h5get_libversion_f, h5check_version_f, h5garbage_collect_f, h5dont_atexit_f </code> -<br> - <code> h5tget_member_index_f, h5tvlen_create_f </code> -<br> - <code> h5dget_storage_size_f, h5dvlen_get_max_len_f , h5dwrite_vl_f, h5dread_vl_f</code> -<br> -<br> - Only <code>integer, real</code> and - <code>character</code> types are supported for VL datatypes. - - </dir> -</dir> - - -<!-- Document API CHANGES ONLY in this file. --> - -<h2>Release 1.4.4 versus Release 1.4.3</h2> -<dir> - <h3>C Library</h3> - <dir> - - <b>Added functions:</b> - <dir> - <table border=0> - <tr valign=top align=left><td> -<pre> -H5Pget_small_data_block_size -H5Pset_small_data_block_size -H5Tget_member_index -</pre> - </td><td> - - </td><td> -<pre> -<!-- List added function(s) here. Remove forced spaces. --> -</pre> - </td></tr> - </table> - </dir> - - <b>Changed functions:</b> - <dir> - <table border=0> - <tr valign=top align=left><td> -None -<!-- -<pre> -List deleted function(s) here. Remove forced spaces. -</pre> ---> - </td><td> - - </td><td> -<pre> -<!-- List deleted function(s) here. Remove forced spaces. --> -</pre> - </td></tr> - </table> - </dir> - - <b>Removed functions:</b> - <dir> - <table border=0> - <tr valign=top align=left><td> -None -<!-- -<pre> -List deleted function(s) here. Remove forced spaces. -</pre> ---> - </td><td> - - </td><td> -<pre> -<!-- List deleted function(s) here. Remove forced spaces. --> -</pre> - </td></tr> - </table> - </dir> - - There were no other public API changes in the C library for this release. - - </dir> - <h3>Fortran90 Library</h3> - <dir> - - <code>h5dwrite_f, h5dread_f, h5awrite_f, h5aread_f </code>were overloaded - with <code>dims</code> argument to be assumed size array of type <code>INTEGER(HSIZE_T).</code> - We recommend to use the subroutines with the new type. Module subroutines - that accept <code>dims</code> as <code>INTEGER</code> array of size <code>7</code> will be deprecated in the 1.6.0 release. - - </dir> -</dir> - -<h2>Release 1.4.3 versus Release 1.4.2</h2> -<dir> - <h3>C Library</h3> - <dir> - - <b>Removed function:</b> - <dir> - <table border=0> - <tr valign=top align=left><td> -<pre> -H5Pset_fapl_dpss </pre> - </td><td> - - </td><td> -<pre> -<!-- new deleted functions here. Remove forced spaces. --> -</pre> - </td><td> - - </td><td> -<pre> -<!-- new deleted functions here. Remove forced spaces. --> -</pre> - </td></tr> - </table> - </dir> - - There were no other public API changes in the C library for this release. - - </dir> - <h3>Fortran90 Library</h3> - <dir> - - There were no changes to the public Fortran90 APIs for this release. - - </dir> -</dir> - -<h2>Release 1.4.2 versus Release 1.4.1</h2> -<dir> - <h3>C Library</h3> - The HDF5 Release 1.4.2 C library is a "Bugfix Release"; - there are no API changes in the underlying HDF5 library. - - <h3>Fortran90 Library</h3> - The following functions in the HDF5 Release 1.4.2 Fortran90 library - have an additional parameter, <code>dims</code>, that was not present - in Release 1.4.1: - -<dir> -<pre> -<font color=red>h5aread_f</font>(attr_id, memtype_id, buf, dims, hdferr) -<font color=red>h5awrite_f</font>(attr_id, memtype_id, buf, dims, hdferr) -<font color=red>h5dread_f</font>(dset_id, mem_type_id, buf, dims, hdferr, mem_space_id, & - file_space_id, xfer_prp) -<font color=red>h5dwrite_f</font>(dset_id, mem_type_id, buf, dims, hdferr, mem_space_id, & - file_space_id, xfer_prp) -</pre> -</dir> - - The <code>dims</code> parameter enables library portability - between the UNIX and Microsoft Windows platforms. - -</dir> - - -<h2>Release 1.4.1 versus Release 1.4.0</h2> -<dir> - Release 1.4.1 is a "Tools Release"; there are no API changes in the - underlying HDF5 library. -</dir> - - -<h2>Release 1.4.0 versus Release 1.2.2</h2> - -<dir> - - Several functions were added to or removed from the HDF5 library - in the development of Release 1.4.0. - A few functions have been modified in minor ways. - - <h3>New Functions</h3> - The following functions are new for Release 1.4.0 and are included in the - <a href="../RM_H5Front.html"><cite>HDF5 Reference Manual</cite></a>. - -<dir> -<pre> -herr_t <font color=red>H5Dvlen_get_buf_size</font> (hid_t dataset_id, hid_t type_id, - hid_t space_id, hsize_t *size); -herr_t <font color=red>H5Epush</font> (const char *file, const char *func, - unsigned line, H5E_major_t maj, H5E_minor_t min, - const char *str); -hid_t <font color=red>H5Pget_driver</font> (hid_t plist_id); -void *<font color=red>H5Pget_driver_info</font> (hid_t plist_id); -herr_t <font color=red>H5Pget_dxpl_mpio</font> (hid_t dxpl_id, - H5FD_mpio_xfer_t *xfer_mode/*out*/); -herr_t <font color=red>H5Pget_dxpl_multi</font> (hid_t dxpl_id, - hid_t *memb_dxpl/*out*/); -herr_t <font color=red>H5Pget_fapl_core</font> (hid_t fapl_id, size_t *increment/*out*/, - hbool_t *backing_store/*out*/) -herr_t <font color=red>H5Pget_fapl_family</font> (hid_t fapl_id, - hsize_t *memb_size/*out*/, hid_t *memb_fapl_id/*out*/); -herr_t <font color=red>H5Pget_fapl_mpio</font> (hid_t fapl_id, MPI_Comm *comm/*out*/, - MPI_Info *info/*out*/); -herr_t <font color=red>H5Pget_fapl_multi</font> (hid_t fapl_id, - H5FD_mem_t *memb_map/*out*/, hid_t *memb_fapl/*out*/, - char **memb_name/*out*/, haddr_t *memb_addr/*out*/, - hbool_t *relax/*out*/); -herr_t <font color=red>H5Pget_fapl_stream</font> (hid_t fapl_id, - H5FD_stream_fapl_t *fapl /*out*/ ); -herr_t <font color=red>H5Pget_meta_block_size</font> (hid_t fapl_id, - hsize_t *size/*out*/); -herr_t <font color=red>H5Pget_sieve_buf_size</font> (hid_t fapl_id, - hsize_t *size/*out*/); -herr_t <font color=red>H5Pset_driver</font> (hid_t plist_id, hid_t driver_id, - const void *driver_info); -herr_t <font color=red>H5Pset_dxpl_mpio</font> (hid_t dxpl_id, - H5FD_mpio_xfer_t xfer_mode); -herr_t <font color=red>H5Pset_dxpl_multi</font> (hid_t dxpl_id, - const hid_t *memb_dxpl); -herr_t <font color=red>H5Pset_fapl_core</font> (hid_t fapl_id, size_t increment, - hbool_t backing_store) -herr_t <font color=red>H5Pset_fapl_family</font> (hid_t fapl_id, hsize_t memb_size, - hid_t memb_fapl_id); -herr_t <font color=red>H5Pset_fapl_log</font> (hid_t fapl_id, char *logfile, - int verbosity); -herr_t <font color=red>H5Pset_fapl_mpio</font> (hid_t fapl_id, MPI_Comm comm, - MPI_Info info); -herr_t <font color=red>H5Pset_fapl_multi</font> (hid_t fapl_id, - const H5FD_mem_t *memb_map, const hid_t *memb_fapl, - const char **memb_name, const haddr_t *memb_addr, - hbool_t relax); -herr_t <font color=red>H5Pset_fapl_sec2</font> (hid_t fapl_id); -herr_t <font color=red>H5Pset_fapl_split</font> (hid_t fapl, const char *meta_ext, - hid_t meta_plist_id, const char *raw_ext, - hid_t raw_plist_id); -herr_t <font color=red>H5Pset_fapl_stdio</font> (hid_t fapl_id); -herr_t <font color=red>H5Pset_fapl_stream</font> (hid_t fapl_id, - H5FD_stream_fapl_t *fapl); -herr_t <font color=red>H5Pset_meta_block_size</font>(hid_t fapl_id, hsize_t size); -herr_t <font color=red>H5Pset_sieve_buf_size</font>(hid_t fapl_id, hsize_t size); -hid_t <font color=red>H5Tarray_create</font> (hid_t base, int rank, const hsize_t dims[], - const int perm[]) -int <font color=red>H5Tget_array_dims</font> (hid_t adtype_id, hsize_t *dims[], int *perm[]) -int <font color=red>H5Tget_array_ndims</font> (hid_t adtype_id) -</pre> -</dir> - - - <p> - The following functions are new for Release 1.4.0, but - are intended only for use in specialized environments. - These are also included in the - <a href="../RM_H5Front.html"><cite>HDF5 Reference Manual</cite></a>. - -<dir> -<pre> -herr_t <font color=red>H5Pget_fapl_dpss</font> (hid_t fapl_id); -herr_t <font color=red>H5Pget_fapl_gass</font> (hid_t fapl_id, GASS_Info *info/*out*/); -herr_t <font color=red>H5Pget_fapl_srb</font> (hid_t fapl_id, SRB_Info *info); -herr_t <font color=red>H5Pset_fapl_dpss</font> (hid_t fapl_id); -herr_t <font color=red>H5Pset_fapl_gass</font> (hid_t fapl_id, GASS_Info info); -herr_t <font color=red>H5Pset_fapl_srb</font> (hid_t fapl_id, SRB_Info info); -</pre> -</dir> - - - <p> - The following functions are new for Release 1.4.0 but are intended - only for driver development work, not for general use. - They are listed in the - <a href="../TechNotes/VFLfunc.html"><cite>List of VFL Functions</cite></a> - document in the - <a href="../TechNotes.html"><cite>HDF5 Technical Notes</cite></a>. - They are described in detail only in the source code and - do not appear in the <cite>HDF5 Reference Manual</cite>. - -<dir> -<pre> -haddr_t <font color=red>H5FDalloc</font> (H5FD_t *file, H5FD_mem_t type, - hsize_t size); -herr_t <font color=red>H5FDclose</font> (H5FD_t *file); -int <font color=red>H5FDcmp</font> (const H5FD_t *f1, const H5FD_t *f2); -herr_t <font color=red>H5FDflush</font> (H5FD_t *file); -herr_t <font color=red>H5FDfree</font> (H5FD_t *file, H5FD_mem_t type, - haddr_t addr, hsize_t size); -haddr_t <font color=red>H5FDget_eoa</font> (H5FD_t *file); -haddr_t <font color=red>H5FDget_eof</font> (H5FD_t *file); -H5FD_t *<font color=red>H5FDopen</font> (const char *name, unsigned flags, - hid_t fapl_id, haddr_t maxaddr); -int <font color=red>H5FDquery</font> (const H5FD_t *f, unsigned long *flags); -herr_t <font color=red>H5FDread</font> (H5FD_t *file, hid_t dxpl_id, haddr_t addr, - hsize_t size, void *buf/*out*/); -haddr_t <font color=red>H5FDrealloc</font> (H5FD_t *file, H5FD_mem_t type, - haddr_t addr, hsize_t old_size, hsize_t new_size); -hid_t <font color=red>H5FDregister</font> (const H5FD_class_t *cls); -herr_t <font color=red>H5FDset_eoa</font> (H5FD_t *file, haddr_t eof); -herr_t <font color=red>H5FDunregister</font> (hid_t driver_id); -herr_t <font color=red>H5FDwrite</font> (H5FD_t *file, H5FD_mem_t type, - hid_t dxpl_id, haddr_t addr, hsize_t size, - const void *buf); -</pre> -</dir> - - - <h3>Deleted Functions</h3> - The following functions have been removed from the HDF5 library - and from the <cite>HDF5 Reference Manual</cite>. - <dir> - <table> - <tr valign=top align=left><td> -<pre> -H5Pget_core -H5Pget_driver -H5Pget_family -H5Pget_mpi -H5Pget_sec2 -H5Pget_split -H5Pget_stdio -H5Pget_xfer -</pre> - </td><td> - - </td><td> -<pre> -H5Pset_core -H5Pset_family -H5Pset_mpi -H5Pset_sec2 -H5Pset_split -H5Pset_stdio -H5Pset_xfer -</pre> - </td><td> - - </td><td> -<pre> -H5RAclose -H5RAcreate -H5RAopen -H5RAread -H5RAwrite -H5Tget_member_dims -H5Tinsert_array -</pre> - </td></tr> - </table> - </dir> - Note that the entire H5RA interface, an experimental interface for - ragged arrays, has been removed from the library. - - - <h3>Functions with Changed Syntax</h3> - The following functions have changed slightly. - <dir> - <dl> - <dt><code>H5Pget_buffer</code> - <dd>Return type has changed to <em>hsize_t</em>. - <dt><code>H5Pset_buffer</code> - <dd>The type of the <code>size</code> parameter has changed - to <em>hsize_t</em>. - <dt><code>H5Tconvert</code> - <dd>The type of the <code>nelmts</code> parameter has changed - to <em>hsize_t</em>. - </dl> - </dir> - - <h3>Constants with Changed Values</h3> - The values of the constants <code>H5P_DEFAULT</code> and - <code>H5S_ALL</code> have been changed from <code>-2</code> - to <code>0</code>. - These default values had to be special-cased in situations where - they could be returned to distinguish them from error values. - -</dir> -<p> - -<h2>Migration from Release 1.2.2 to Release 1.4.<em>x</em></h2> - -<dir> - <h3>H5Tinsert_array</h3> - The functionality of <code>H5Tinsert_array</code> has been replaced by - <code>H5Tarray_create</code>. - Here is an example of changing code from <code>H5Tinsert_array</code> - to <code>H5Tarray_create</code>. -<pre> -V1.2.2 -{ - struct tmp_struct { - int a; - float f[3]; - double d[2][4]; - }; - size_t f_dims[1]={3}; - size_t d_dims[2]={2,4}; - hid_t compound_type; - - compound_type=H5Tcreate(H5T_COMPOUND,sizeof(struct tmp_struct)); - H5Tinsert(compound_type,"a",HOFFSET(struct tmp_struct,a),H5T_NATIVE_INT); - H5Tinsert_array(compound_type,"f",HOFFSET(struct tmp_struct,f),1,f_dims,NULL,H5T_NATIVE_FLOAT); - H5Tinsert_array(compound_type,"d",HOFFSET(struct tmp_struct,d),2,d_dims,NULL,H5T_NATIVE_DOUBLE); -} - -V1.4.0 -{ - struct tmp_struct { - int a; - float f[3]; - double d[2][4]; - }; - hsize_t f_dims[1]={3}; - hsize_t d_dims[2]={2,4}; - hid_t compound_type; - hid_t array_type; - - compound_type=H5Tcreate(H5T_COMPOUND,sizeof(struct tmp_struct)); - H5Tinsert(compound_type,"a",HOFFSET(struct tmp_struct,a),H5T_NATIVE_INT); - array_type=H5Tarray_create(H5T_NATIVE_FLOAT,1,f_dims,NULL); - H5Tinsert(compound_type,"f",HOFFSET(struct tmp_struct,f),array_type); - H5Tclose(array_type); - array_type=H5Tarray_create(H5T_NATIVE_DOUBLE,2,d_dims,NULL); - H5Tinsert(compound_type,"d",HOFFSET(struct tmp_struct,d),array_type); - H5Tclose(array_type); -} - -</pre> -</dir> - - -<h2>This and Prior Releases: The RELEASE.txt and HISTORY.txt Files</h2> - -<dir> - The HDF5 source code, as distributed to users and developers, - contains two files that will be of interest to readers of this - document. Both files are located at the top level of the - source code tree and are duplicated here for your reference: - <p> - <dl> - <dt><a href="RELEASE.txt" target="ExtWin">RELEASE.txt</a> - <dd>Technical notes regarding the release, including - new features and the changes since the last release, - notes regarding new or revised utilities, - notes regarding alternative language APIs (Fortran90, C++), - bugs fixed since the last release, - platforms on which the release has been tested, and - known problems. - This is the file commonly known as "the release notes." - <p> - <dt><a href="HISTORY.txt" target="ExtWin">HISTORY.txt</a> - <dd>A release-by-release history of the HDF5 library. - This file is a compiled set of the release notes - (i.e., the RELEASE.txt files) from prior releases. - <dl> -</dir> - - - - -<!-- #BeginLibraryItem "/ed_libs/NavBar_ADevG.lbi" --><hr> -<center> -<table border=0 width=98%> -<tr><td valign=top align=left> - <a href="../index.html">HDF5 documents and links</a> <br> - <a href="../H5.intro.html">Introduction to HDF5</a> <br> - <!-- - <a href="Glossary.html">Glossary</a><br> - --> -</td> -<td valign=top align=right> - <a href="http://hdf.ncsa.uiuc.edu/HDF5/doc/UG/index.html">HDF5 User's Guide</a> <br> - <a href="../RM_H5Front.html">HDF5 Reference Manual</a> <br> - <a href="../ADGuide.html">HDF5 Application Developer's Guide</a> <br> -</td></tr> -</table> -</center> -<hr> -<!-- #EndLibraryItem --><!-- #BeginLibraryItem "/ed_libs/Footer.lbi" --><address> -<a href="mailto:hdfhelp@ncsa.uiuc.edu">HDF Help Desk</a> -<br> -Describes HDF5 Release 1.7, the unreleased development branch; working toward HDF5 Release 1.8.0 -</address><!-- #EndLibraryItem --><!-- Created: Spring 1999 --> -<!-- hhmts start --> -Last modified: 3 March 2005 -<!-- hhmts end --> - -</body> -</html> diff --git a/doc/html/ADGuide/H4toH5Mapping.doc b/doc/html/ADGuide/H4toH5Mapping.doc Binary files differdeleted file mode 100755 index 2f9340f..0000000 --- a/doc/html/ADGuide/H4toH5Mapping.doc +++ /dev/null diff --git a/doc/html/ADGuide/H4toH5Mapping.pdf b/doc/html/ADGuide/H4toH5Mapping.pdf Binary files differdeleted file mode 100644 index 548912b..0000000 --- a/doc/html/ADGuide/H4toH5Mapping.pdf +++ /dev/null diff --git a/doc/html/ADGuide/HISTORY.txt b/doc/html/ADGuide/HISTORY.txt deleted file mode 100644 index b6f2585..0000000 --- a/doc/html/ADGuide/HISTORY.txt +++ /dev/null @@ -1,3180 +0,0 @@ -HDF5 HISTORY -============ -This file contains history of the HDF5 libraries releases - -CONTENTS - -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.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 - - diff --git a/doc/html/ADGuide/ImageSpec.html b/doc/html/ADGuide/ImageSpec.html deleted file mode 100755 index f5bf217..0000000 --- a/doc/html/ADGuide/ImageSpec.html +++ /dev/null @@ -1,1279 +0,0 @@ -<!doctype html public "-//w3c//dtd html 4.0 transitional//en"> -<html> -<head> - <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> - <meta name="GENERATOR" content="Mozilla/4.72 [en] (WinNT; U) [Netscape]"> - <title>Image Specification</title> - -<!-- #BeginLibraryItem "/ed_libs/styles_Gen.lbi" --> -<!-- - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * - * Copyright by the Board of Trustees of the University of Illinois. * - * All rights reserved. * - * * - * This file is part of HDF5. The full HDF5 copyright notice, including * - * terms governing use, modification, and redistribution, is contained in * - * the files COPYING and Copyright.html. COPYING can be found at the root * - * of the source code distribution tree; Copyright.html can be found at the * - * root level of an installed copy of the electronic HDF5 document set and * - * is linked from the top-level documents page. It can also be found at * - * http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html. If you do not have * - * access to either file, you may request a copy from hdfhelp@ncsa.uiuc.edu. * - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * - --> - -<link href="../ed_styles/GenElect.css" rel="stylesheet" type="text/css"> -<!-- #EndLibraryItem --></head> - -<body text="#000000" bgcolor="#FFFFFF" link="#0000EE" vlink="#551A8B" alink="#FF0000"> - - -<!-- #BeginLibraryItem "/ed_libs/NavBar_ADevG.lbi" --><hr> -<center> -<table border=0 width=98%> -<tr><td valign=top align=left> - <a href="../index.html">HDF5 documents and links</a> <br> - <a href="../H5.intro.html">Introduction to HDF5</a> <br> - <!-- - <a href="Glossary.html">Glossary</a><br> - --> -</td> -<td valign=top align=right> - <a href="http://hdf.ncsa.uiuc.edu/HDF5/doc/UG/index.html">HDF5 User's Guide</a> <br> - <a href="../RM_H5Front.html">HDF5 Reference Manual</a> <br> - <a href="../ADGuide.html">HDF5 Application Developer's Guide</a> <br> -</td></tr> -</table> -</center> -<hr> -<!-- #EndLibraryItem --><center> -<h1> -HDF5 Image and Palette Specification</h1></center> - -<center> -<h3> -<i>Version 1.2</i></h3></center> -The HDF5 specification defines the standard objects and storage for the -standard HDF5 objects. (For information about the HDF5 library, model and -specification, see the HDF documentation.) This document is an additional -specification do define a standard profile for how to store image data -in HDF5. Image data in HDF5 is stored as HDF5 datasets with standard attributes -to define the properties of the image. -<p>This specification is primarily concerned with two dimensional raster -data similar to HDF4 Raster Images. Specifications for storing other -types of imagery will be covered in other documents. -<p>This specification defines: -<ul> -<li> -Standard storage and attributes for an Image dataset (<a href="#Sect1">Section -1</a>)</li> - -<li> -Standard storage and attributes for Palettes (<a href="#sect2">Section -2</a>)</li> - -<li> -Standard for associating Palettes with Images. (<a href="#Sect3">Section -3</a>)</li> -</ul> - -<h2> -<a NAME="Sect1"></a>1. HDF5 Image Specification</h2> - -<h3> -1.1 Overview</h3> -Image data is stored as an HDF5 dataset with values of HDF5 class Integer -or Float. A common example would be a two dimensional dataset, with -elements of class Integer, e.g., a two dimensional array of unsigned 8 -bit integers. However, this specification does not limit the dimensions -or number type that may be used for an Image. -<p>The dataset for an image is distinguished from other datasets by giving -it an attribute "CLASS=IMAGE". In addition, the Image dataset may -have an optional attribute "PALETTE" that is an array of object references -for zero or more palettes. The Image dataset may have additional attributes -to describe the image data, as defined in <a href="#Sect1.2">Section 1.2</a>. -<p>A Palette is an HDF5 dataset which contains color map information. -A Pallet dataset has an attribute "CLASS=PALETTE" and other attributes -indicating the type and size of the palette, as defined in <a href="#sect2">Section -2.1</a>. A Palette is an independent object, which can be shared -among several Image datasets. -<h3> -<a NAME="Sect1.2"></a>1.2 Image Attributes</h3> -The attributes for the Image are scalars unless otherwise noted. -The length of String valued attributes should be at least the number of -characters. Optionally, String valued attributes may be stored in a String -longer than the minimum, in which case it must be zero terminated or null -padded. "Required" attributes must always be used. "Optional" attributes -must be used when required. -<br> -<h4> -Attributes</h4> - -<dl> -<dt> -Attribute name="<b>CLASS</b>" (Required)</dt> - -<dd> -This attribute is type H5T_C_S1, with size 5.</dd> - -<dd> -For all Images, the value of this attribute is "IMAGE".</dd> - -<dd> -</dd> - -<dd> -This attribute identifies this data set as intended to be interpreted as -an image that conforms to the specifications on this page.</dd> -</dl> - -<dt> -Attribute name="<b>PALETTE</b>"</dt> - -<dl> -<dd> -A Image dataset within an HDF5 file may optionally specify an array of -palettes to be viewed with. The dataset will have an attribute field called -"<b>PALETTE</b>" which contains a one-dimensional array of object reference -pointers (HDF5 datatype H5T_STD_REF_OBJ) which refer to palettes in the -file. The palette datasets must conform to the Palette specification in -<a href="#sect2">section -2 below</a>. The first palette in this array will be the default palette -that the data may be viewed with.</dd> -</dl> - -<dl> -<dt> -</dt> - -<dt> -Attribute name="<b>IMAGE_SUBCLASS</b>"</dt> - -<dd> -If present, the value of this attribute indicates the type of Palette that -should be used with the Image. This attribute is a scalar of type -H5T_C_S1, with size according to the string plus one. The values -are:</dd> - -<dl> -<dt> -"IMAGE_GRAYSCALE" (length 15)</dt> - -<dd> -A grayscale image</dd> - -<dt> -"IMAGE_BITMAP" (length 12)</dt> - -<dd> -A bit map image</dd> - -<dt> -"IMAGE_TRUECOLOR" (length 15)</dt> - -<dd> -A truecolor image</dd> - -<dt> -"IMAGE_INDEXED" (length 13)</dt> - -<dd> -An indexed image</dd> - -<dd> -</dd> -</dl> - -<dt> -Attribute name="<b>INTERLACE_MODE</b>"</dt> - -<dd> -For images with more than one component for each pixel, this optional attribute -specifies the layout of the data. The values are type H5T_C_S1 of length -15. See <a href="#Section1.3">section 1.3</a> for information about the -storage layout for data.</dd> - -<dd> -"INTERLACE_PIXEL" (default): the component value for a pixel are contiguous.</dd> - -<dd> -"INTERLACE_PLANE": each component is stored as a plane.</dd> - -<dt> -</dt> - -<dt> -Attribute name="<b>DISPLAY_ORIGIN</b>"</dt> - -<dd> -This optional attribute indicates the intended orientation of the data -on a two-dimensional raster display. The value indicates which corner -the pixel at (0, 0) should be viewed. The values are type H5T_C_S1 -of length 2. If DISPLAY_ORIGIN is not set, the orientation is undefined.</dd> - -<dd> -"UL": (0,0) is at the upper left.</dd> - -<dd> -"LL": (0,0) is at the lower left.</dd> - -<dd> -"UR": (0,0) is at the upper right.</dd> - -<dd> -"LR": (0,0) is at the lower right.</dd> -</dl> - -<dt> -Attribute name="<b>IMAGE_WHITE_IS_ZERO</b>"</dt> - -<dl> -<dd> -This attribute is of type H5T_NATIVE_UCHAR. 0 = false, 1 = true . -This is used for images with IMAGE_SUBCLASS="IMAGE_GRAYSCALE" or "IMAGE_BITMAP".</dd> -</dl> - -<dl> -<dt> -Attribute name="<b>IMAGE_MINMAXRANGE</b>"</dt> - -<dd> -If present, this attribute is an array of two numbers, of the same HDF5 -datatype as the data. The first element is the minimum value of the -data, and the second is the maximum. This is used for images with -IMAGE_SUBCLASS="IMAGE_GRAYSCALE", "IMAGE_BITMAP" or "IMAGE_INDEXED".</dd> -</dl> - -<dt> -Attribute name="<b>IMAGE_BACKGROUNDINDEX</b>"</dt> - -<dl> -<dd> -If set, this attribute indicates the index value that should be interpreted -as the "background color". This attribute is HDF5 type H5T_NATIVE_UINT.</dd> -</dl> - -<dt> -Attribute name="<b>IMAGE_TRANSPARENCY</b>"</dt> - -<dl> -<dd> -If set, this attribute indicates the index value that should be interpreted -as the "transparent color". This attribute is HDF5 type H5T_NATIVE_UINT. -This attribute may not be used for IMAGE_SUBCLASS="IMAGE_TRUE_COLOR".</dd> -</dl> - -<dt> -Attribute name="<b>IMAGE_ASPECTRATIO</b>"</dt> - -<dl> -<dd> -If set, this attribute indicates the aspect ratio.</dd> -</dl> - -<dt> -Attribute name="<b>IMAGE_COLORMODEL</b>"</dt> - -<dl> -<dd> -If set, this attribute indicates the color model of Palette that should -be used with the Image. This attribute is of type H5T_C_S1, with -size 3, 4, or 5. The value is one of the color models described in -the Palette specification in <a href="#sect2.2">section 2.2 below</a>. -This attribute may be used only for IMAGE_SUBCLASS="IMAGE_TRUECOLOR" or -"IMAGE_INDEXED".</dd> -</dl> - -<dt> -Attribute name="<b>IMAGE_GAMMACORRECTION</b>"</dt> - -<dl> -<dd> -If set, this attribute gives the Gamma correction. The attribute -is type H5T_NATIVE_FLOAT. This attribute may be used only for IMAGE_SUBCLASS="IMAGE_TRUECOLOR" -or "IMAGE_INDEXED".</dd> -</dl> -Attribute name="<b>IMAGE_VERSION</b>" (Required) -<dl> -<dd> -This attribute is of type H5T_C_S1, with size corresponding to the length -of the version string. This attribute identifies the version number -of this specification to which it conforms. The current version number -is "1.2".</dd> - -<br> -<p> -<br> -<br> -<center><table BORDER=2 BGCOLOR="#FFFFFF" > -<caption><b>Table 1. Attributes of an Image Dataset</b></caption> - -<tr> -<td><b>Attribute Name</b></td> - -<td><b>(R = Required</b> -<br><b>O= Optional)</b></td> - -<td><b>Type</b></td> - -<td><b>String Size</b></td> - -<td><b>Value</b></td> -</tr> - -<tr> -<td>CLASS</td> - -<td>R</td> - -<td>String</td> - -<td>5</td> - -<td>"IMAGE"</td> -</tr> - -<tr> -<td>PALETTE</td> - -<td>O</td> - -<td>Array Object References</td> - -<td></td> - -<td><references to Palette datasets><sup>1</sup></td> -</tr> - -<tr> -<td>IMAGE_SUBCLASS</td> - -<td>O<sup>2</sup></td> - -<td>String</td> - -<td>15, -<br>12, -<br>15, -<br>13</td> - -<td> -<dt> -"IMAGE_GRAYSCALE",</dt> - -<dt> -"IMAGE_BITMAP",</dt> - -<dt> -"IMAGE_TRUECOLOR",</dt> - -<dt> -"IMAGE_INDEXED"</dt> -</td> -</tr> - -<tr> -<td>INTERLACE_MODE</td> - -<td>O<sup>3,6</sup></td> - -<td>String</td> - -<td>15</td> - -<td>The layout of components if more than one component per pixel.</td> -</tr> - -<tr> -<td>DISPLAY_ORIGIN</td> - -<td>O</td> - -<td>String</td> - -<td>2</td> - -<td>If set, indicates the intended location of the pixel (0,0).</td> -</tr> - -<tr> -<td>IMAGE_WHITE_IS_ZERO</td> - -<td>O<sup>3,4</sup></td> - -<td>Unsigned Integer</td> - -<td></td> - -<td>0 = false, 1 = true</td> -</tr> - -<tr> -<td>IMAGE_MINMAXRANGE</td> - -<td>O<sup>3,5</sup></td> - -<td>Array [2] <same datatype as data values></td> - -<td></td> - -<td>The (<minimum>, <maximum>) value of the data.</td> -</tr> - -<tr> -<td>IMAGE_BACKGROUNDINDEX</td> - -<td>O<sup>3</sup></td> - -<td>Unsigned Integer</td> - -<td></td> - -<td>The index of the background color.</td> -</tr> - -<tr> -<td>IMAGE_TRANSPARENCY</td> - -<td>O<sup>3,5</sup></td> - -<td>Unsigned Integer</td> - -<td></td> - -<td>The index of the transparent color.</td> -</tr> - -<tr> -<td>IMAGE_ASPECTRATIO</td> - -<td>O<sup>3,4</sup></td> - -<td>Unsigned Integer</td> - -<td></td> - -<td>The aspect ratio.</td> -</tr> - -<tr> -<td>IMAGE_COLORMODEL</td> - -<td>O<sup>3,6</sup></td> - -<td>String</td> - -<td>3, 4, or 5</td> - -<td>The color model, as defined below in the Palette specification for -attribute <b>PAL_COLORMODEL</b>.</td> -</tr> - -<tr> -<td>IMAGE_GAMMACORRECTION</td> - -<td>O<sup>3,6</sup></td> - -<td>Float</td> - -<td></td> - -<td>The gamma correction.</td> -</tr> - -<tr> -<td>IMAGE_VERSION</td> - -<td>R</td> - -<td>String</td> - -<td>3</td> - -<td>"1.2"</td> -</tr> -</table></center> - -<dl><font size=-1>1. The first element of the array is the default -Palette.</font> -<br><font size=-1>2. This attribute is <b>required</b> for images -that use one of the standard color map types listed.</font> -<br><font size=-1>3. This attribute is <b>required</b> if set for the source -image, in the case that the image is translated from another file into -HDF5.</font> -<br><font size=-1>4. This applies to: IMAGE_SUBCLASS="IMAGE_GRAYSCALE" -or "IMAGE_BITMAP".</font> -<br><font size=-1>5. This applies to: IMAGE_SUBCLASS="IMAGE_GRAYSCALE", -"IMAGE_BITMAP", or "IMAGE_INDEXED".</font> -<br><font size=-1>6. This applies to: IMAGE_SUBCLASS="IMAGE_TRUECOLOR", -or "IMAGE_INDEXED".</font></dl> -</dl> -Table 2 summarizes the standard attributes for an Image datasets using -the common sub-classes. R means that the attribute listed on the leftmost -column is Required for the image subclass on the first row, O means that -the attribute is Optional for that subclass and N that the attribute cannot -be applied to that subclass. The two first rows show the only required -attributes -for all subclasses. -<br> -<table BORDER WIDTH="100%" > -<caption><b>Table 2a. Applicability of Attributes to IMAGE sub-classes</b></caption> - -<tr> -<td WIDTH="20%"><b>IMAGE_SUBCLASS</b><sup>1</sup></td> - -<td WIDTH="20%"><b>IMAGE_GRAYSCALE</b></td> - -<td WIDTH="20%"><b>IMAGE_BITMAP</b></td> -</tr> - -<tr> -<td WIDTH="20%">CLASS</td> - -<td WIDTH="20%">R</td> - -<td WIDTH="20%">R</td> -</tr> - -<tr> -<td WIDTH="20%">IMAGE_VERSION</td> - -<td WIDTH="20%">R</td> - -<td WIDTH="20%">R</td> -</tr> - -<tr> -<td>INTERLACE_MODE</td> - -<td>N</td> - -<td>N</td> -</tr> - -<tr> -<td WIDTH="20%">IMAGE_WHITE_IS_ZERO</td> - -<td WIDTH="20%">R</td> - -<td WIDTH="20%">R</td> -</tr> - -<tr> -<td WIDTH="20%">IMAGE_MINMAXRANGE</td> - -<td WIDTH="20%">O</td> - -<td WIDTH="20%">O</td> -</tr> - -<tr> -<td WIDTH="20%">IMAGE_BACKGROUNDINDEX</td> - -<td WIDTH="20%">O</td> - -<td WIDTH="20%">O</td> -</tr> - -<tr> -<td WIDTH="20%">IMAGE_TRANSPARENCY</td> - -<td WIDTH="20%">O</td> - -<td WIDTH="20%">O</td> -</tr> - -<tr> -<td WIDTH="20%">IMAGE_ASPECTRATIO</td> - -<td WIDTH="20%">O</td> - -<td WIDTH="20%">O</td> -</tr> - -<tr> -<td WIDTH="20%">IMAGE_COLORMODEL</td> - -<td WIDTH="20%">N</td> - -<td WIDTH="20%">N</td> -</tr> - -<tr> -<td WIDTH="20%">IMAGE_GAMMACORRECTION</td> - -<td WIDTH="20%">N</td> - -<td WIDTH="20%">N</td> -</tr> - -<tr> -<td WIDTH="20%">PALETTE</td> - -<td WIDTH="20%">O</td> - -<td WIDTH="20%">O</td> -</tr> - -<tr> -<td>DISPLAY_ORIGIN</td> - -<td>O</td> - -<td>O</td> -</tr> -</table> - -<blockquote> </blockquote> - -<table BORDER WIDTH="100%" > -<caption><b>Table 2b. Applicability of Attributes to IMAGE sub-classes</b></caption> - -<tr> -<td WIDTH="20%"><b>IMAGE_SUBCLASS</b></td> - -<td WIDTH="20%"><b>IMAGE_TRUECOLOR</b></td> - -<td><b>IMAGE_INDEXED</b></td> -</tr> - -<tr> -<td WIDTH="20%">CLASS</td> - -<td WIDTH="20%">R</td> - -<td>R</td> -</tr> - -<tr> -<td WIDTH="20%">IMAGE_VERSION</td> - -<td WIDTH="20%">R</td> - -<td>R</td> -</tr> - -<tr> -<td>INTERLACE_MODE</td> - -<td>R</td> - -<td>N</td> -</tr> - -<tr> -<td WIDTH="20%">IMAGE_WHITE_IS_ZERO</td> - -<td WIDTH="20%">N</td> - -<td>N</td> -</tr> - -<tr> -<td WIDTH="20%">IMAGE_MINMAXRANGE</td> - -<td WIDTH="20%">N</td> - -<td>O</td> -</tr> - -<tr> -<td WIDTH="20%">IMAGE_BACKGROUNDINDEX</td> - -<td WIDTH="20%">N</td> - -<td>O</td> -</tr> - -<tr> -<td WIDTH="20%">IMAGE_TRANSPARENCY</td> - -<td WIDTH="20%">N</td> - -<td>O</td> -</tr> - -<tr> -<td WIDTH="20%">IMAGE_ASPECTRATIO</td> - -<td WIDTH="20%">O</td> - -<td>O</td> -</tr> - -<tr> -<td WIDTH="20%">IMAGE_COLORMODEL</td> - -<td WIDTH="20%">O</td> - -<td>O</td> -</tr> - -<tr> -<td WIDTH="20%">IMAGE_GAMMACORRECTION</td> - -<td WIDTH="20%">O</td> - -<td>O</td> -</tr> - -<tr> -<td WIDTH="20%">PALETTE</td> - -<td WIDTH="20%">O</td> - -<td>O</td> -</tr> - -<tr> -<td>DISPLAY_ORIGIN</td> - -<td>O</td> - -<td>O</td> -</tr> -</table> - -<h3> -<a NAME="Section1.3"></a>1.3 Storage Layout and Properties for Images</h3> -In the case of an image with more than one component per pixel (e.g., Red, -Green, and Blue), the data may be arranged in one of two ways. Following -HDF4 terminology, the data may be interlaced by pixel or by plane, which -should be indicated by the INTERLACE_MODE attribute. In both -cases, the dataset will have a dataspace with three dimensions, height, -width, and components. The interlace modes specify different orders -for the dimensions. -<br> -<table BORDER COLS=2 WIDTH="100%" > -<caption><b>Table 3. Storage of multiple component image data.</b></caption> - -<tr> -<td><b>Interlace Mode</b></td> - -<td><b>Dimensions in the Dataspace</b></td> -</tr> - -<tr> -<td>INTERLACE_PIXEL</td> - -<td>[height][width][pixel components]</td> -</tr> - -<tr> -<td>INTERLACE_PLANE</td> - -<td>[pixel components][height][width]</td> -</tr> -</table> - -<p>For example, consider a 5 (rows) by 10 (column) image, with Red, Green, -and Blue components. Each component is an unsigned byte. In HDF5, -the datatype would be declared as an unsigned 8 bit integer. For -pixel interlace, the dataspace would be a three dimensional array, with -dimensions: [10][5][3]. For plane interleave, the dataspace would -be three dimensions: [3][10][5]. -<p>In the case of images with only one component, the dataspace may be -either a two dimensional array, or a three dimensional array with the third -dimension of size 1. For example, a 5 by 10 image with 8 bit color -indexes would be an HDF5 dataset with type unsigned 8 bit integer. -The dataspace could be either a two dimensional array, with dimensions -[10][5], or three dimensions, with dimensions either [10][5][1] or [1][10][5]. -<p>Image datasets may be stored with any chunking or compression properties -supported by HDF5. -<p><b>A note concerning compatibility with HDF5 GR interface: </b>An Image -dataset is stored as an HDF5 dataset. It is important to note that -the order of the dimensions is the same as for any other HDF5 dataset. -For a two dimensional image that is to be stored as a series of horizontal -scan lines, with the scan lines contiguous (i.e., the fastest changing -dimension is 'width'), the image will have a dataspace with <i>dim[0] = -height</i> and <i>dim[1]</i> = <i>width</i>. This is completely consistent -with all other HDF5 datasets. -<p>Users familiar with HDF4 should be cautioned that <i>this is not the -same as HDF4</i>, and specifically is not consistent with what the HDF4 -GR interface does. -<br> -<h2> -<a NAME="sect2"></a>2. HDF5 Palette Specification</h2> - -<h3> -2.1 Overview</h3> -A palette is the means by which color is applied to an image and is also -referred to as a color lookup table. It is a table in which every row contains -the numerical representation of a particular color. In the example of an -8 bit standard RGB color model palette, this numerical representation of -a color is presented as a triplet specifying the intensity of red, green, -and blue components that make up each color. -<center> -<p><img SRC="Palettes.fm.anc.gif" ></center> - -<p>In this example, the color component numeric type is an 8 bit unsigned -integer. While this is most common and recommended for general use, other -component color numeric datatypes, such as a 16 bit unsigned integer , -may be used. This type is specified as the type attribute of the palette -dataset. (see H5Tget_type(), H5Tset_type()) -<p>The minimum and maximum values of the component color numeric are specified -as attribute of the palette dataset. See below (attribute PAL_MINMAXNUMERIC). -If these attributes do not exist, it is assumed that the range of values -will fill the space of the color numeric type. i.e. with an 8 bit unsigned -integer, the valid range would be 0 to 255 for each color component. -<p>The HDF5 palette specification additionally allows for color models -beyond RGB. YUV, HSV, CMY, CMYK, YCbCr color models are supported, and -may be specified as a color model attribute of the palette dataset. <i>(see -"Palette Attributes" for details)</i>. -<p>In HDF 4 and earlier, palettes were limited to 256 colors. The HDF5 -palette specification allows for palettes of varying length. The length -is specified as the number of rows of the palette dataset. -<br> -<br> -<table BORDER COLS=1 WIDTH="100%" BGCOLOR="#666666" > -<tr> -<td><font color="#FFFFFF">Important Note: The specification of the Indexed -Palette will change substantially in the next version. The Palette -described here is <i>denigrated</i> and is not supported.</font></td> -</tr> -</table> - -<br> -<table BORDER COLS=1 WIDTH="100%" BGCOLOR="#CCCCCC" > -<tr> -<td><i>Denigrated</i> -<p>In a standard palette, the color entries are indexed directly. HDF5 -supports the notion of a range index table. Such a table defines an ascending -ordered list of ranges that map dataset values to the palette. If a range -index table exists for the palette, the PAL_TYPE attribute will be set -to "RANGEINDEX", and the PAL_RANGEINDEX attribute will contain an object -reference to a range index table array. If not, the PAL_TYPE attribute -either does not exist, or will be set to "STANDARD". -<p>The range index table array consists of a one dimensional array with -the same length as the palette dataset - 1. Ideally, the range index would -be of the same type as the dataset it refers to, however this is not a -requirement. -<p><b>Example 2: A range index array of type floating point</b> -<center> -<p><img SRC="PaletteExample1.gif" ></center> - -<p>The range index array attribute defines the "<i>to</i>" of the range. -Notice that the range index array attribute is one less entry in size than -the palette. The first entry of 0.1259, specifies that all values below -and up to 0.1259 inclusive, will map to the first palette entry. The second -entry signifies that all values greater than 0.1259 up to 0.3278 inclusive, -will map to the second palette entry, etc. All value greater than the last -range index array attribute (100000) map to the last entry in the palette.</td> -</tr> -</table> - -<h3> -<a NAME="sect2.2"></a>2.2. Palette Attributes</h3> -A palette exists in an HDF file as an independent data set with accompanying -attributes. The Palette attributes are scalars except where noted -otherwise. String values should have size the length of the string -value plus one. "Required" attributes must be used. "Optional" -attributes must be used when required. -<p>These attributes are defined as follows: -<dl> -<dt> -Attribute name="<b>CLASS</b>" (Required)</dt> - -<dd> -This attribute is of type H5T_C_S1, with size 7.</dd> - -<dd> -For all palettes, the value of this attribute is "PALETTE". This attribute -identifies this palette data set as a palette that conforms to the specifications -on this page.</dd> - -<dt> -Attribute name="<b>PAL_COLORMODEL</b>" (Required)</dt> - -<dd> -This attribute is of type H5T_C_S1, with size 3, 4, or 5.</dd> - -<dd> -Possible values for this are "RGB", "YUV", "CMY", "CMYK", "YCbCr", "HSV".</dd> - -<dd> -This defines the color model that the entries in the palette data set represent.</dd> - -<dl> -<dt> -"RGB"</dt> - -<dd> -Each color index contains a triplet where the the first value defines the -red component, second defines the green component, and the third the blue -component.</dd> - -<dt> -"CMY"</dt> - -<dd> -Each color index contains a triplet where the the first value defines the -cyan component, second defines the magenta component, and the third the -yellow component.</dd> - -<dt> -"CMYK"</dt> - -<dd> -Each color index contains a quadruplet where the the first value defines -the cyan component, second defines the magenta component, the third the -yellow component, and the forth the black component.</dd> - -<dt> -"YCbCr"</dt> - -<dd> -Class Y encoding model. Each color index contains a triplet where the the -first value defines the luminance, second defines the Cb Chromonance, and -the third the Cr Chromonance.</dd> - -<dt> -"YUV"</dt> - -<dd> -Composite encoding color model. Each color index contains a triplet where -the the first value defines the luminance component, second defines the -chromonance component, and the third the value component.</dd> - -<dt> -"HSV"</dt> - -<dd> -Each color index contains a triplet where the the first value defines the -hue component, second defines the saturation component, and the third the -value component. The hue component defines the hue spectrum with a low -value representing magenta/red progressing to a high value which would -represent blue/magenta, passing through yellow, green, cyan. A low value -for the saturation component means less color saturation than a high value. -A low value for <i>value</i> will be darker than a high value.</dd> - -<dd> -</dd> -</dl> - -<dt> -Attribute name="<b>PAL_TYPE</b>" (Required)</dt> - -<dd> -This attribute is of type H5T_C_S1, with size 9 or 10.</dd> - -<dd> -The current supported values for this attribute are : "STANDARD8" or "RANGEINDEX"</dd> - -<dd> -A PAL_TYPE of "STANDARD8" defines a palette dataset such that the first -entry defines index 0, the second entry defines index 1, etc. up until -the length of the palette - 1. This assumes an image dataset with direct -indexes into the palette.</dd> -</dl> - -<dl> -<table BORDER COLS=1 WIDTH="100%" BGCOLOR="#CCCCCC" > -<tr> -<td><i>Denigrated</i> -<p>If the PAL_TYPE is set to "RANGEINDEX", there will be an additional -attribute with a name of "<b>PAL_RANGEINDEX</b>", (See example 2 -for more details)</td> -</tr> -</table> - -<table BORDER COLS=1 WIDTH="100%" BGCOLOR="#CCCCCC" > -<tr> -<td> -<dt> -Attribute name="<b>PAL_RANGEINDEX</b>" <i>(Denigrated)</i></dt> - -<dl> -<dd> -The <b>PAL_RANGEINDEX</b> attribute contains an HDF object reference (HDF5 -datatype H5T_STD_REF_OBJ) pointer which specifies a range index array in -the file to be used for color lookups for the palette. (Only for -PAL_TYPE="RANGEINDEX")</dd> -</dl> -</td> -</tr> -</table> - -<dt> -Attribute name="<b>PAL_MINMAXNUMERIC</b>"</dt> - -<dl> -<dt> -If present, this attribute is an array of two numbers, of the same HDF5 -datatype as the palette elements or color numerics.</dt> - -<br>They specify the minimum and maximum values of the color numeric components. -For example, if the palette was an RGB of type Float, the color numeric -range for Red, Green, and Blue could be set to be between 0.0 and 1.0. -The intensity of the color guns would then be scaled accordingly to be -between this minimum and maximum attribute.</dl> -Attribute name="<b>PAL_VERSION</b>" (Required) -<dl>This attribute is of type H5T_C_S1, with size corresponding to the -length of the version string. This attribute identifies the version -number of this specification to which it conforms. The current version -is "1.2".</dl> - -<center><table BORDER=2 BGCOLOR="#FFFFFF" > -<caption><b>Table 4. Attributes of a Palette Dataset</b></caption> - -<tr> -<td><b>Attribute Name</b></td> - -<td><b>(R = Required,</b> -<br><b>O = Optional)</b></td> - -<td><b>Type</b></td> - -<td><b>String Size</b></td> - -<td><b>Value</b></td> -</tr> - -<tr> -<td>CLASS</td> - -<td>R</td> - -<td>String</td> - -<td> -<center>7</center> -</td> - -<td>"PALETTE"</td> -</tr> - -<tr> -<td>PAL_COLORMODEL</td> - -<td>R</td> - -<td>String</td> - -<td> -<center>3, 4, or 5</center> -</td> - -<td>Color Model: "RGB", YUV", "CMY", "CMYK", "YCbCr", or "HSV"</td> -</tr> - -<tr> -<td>PAL_TYPE</td> - -<td>R</td> - -<td>String</td> - -<td> -<center>9</center> - -<p><br> -<table BORDER COLS=1 WIDTH="100%" BGCOLOR="#CCCCCC" > -<tr> -<td>or 10</td> -</tr> -</table> -</td> - -<td>"STANDARD8" -<table BORDER COLS=1 WIDTH="100%" BGCOLOR="#CCCCCC" > -<tr> -<td>or "RANGEINDEX" <i>(Denigrated)</i></td> -</tr> -</table> -</td> -</tr> - -<tr> -<td> -<table BORDER COLS=1 WIDTH="100%" BGCOLOR="#CCCCCC" > -<tr> -<td><i>Denigrated</i> -<br>RANGE_INDEX</td> -</tr> -</table> -</td> - -<td></td> - -<td> -<table BORDER COLS=1 WIDTH="100%" BGCOLOR="#CCCCCC" > -<tr> -<td>Object Reference </td> -</tr> -</table> -</td> - -<td></td> - -<td> -<table BORDER COLS=1 WIDTH="100%" BGCOLOR="#CCCCCC" > -<tr> -<td><Object Reference to Dataset of range index values></td> -</tr> -</table> -</td> -</tr> - -<tr> -<td>PAL_MINMAXNUMERIC</td> - -<td>O</td> - -<td>Array[2] of <same datatype as palette></td> - -<td></td> - -<td>The first value is the <Minimum value for color values>, the second -value is <Maximum value for color values><sup>2</sup></td> -</tr> - -<tr> -<td>PAL_VERSION</td> - -<td>R</td> - -<td>String</td> - -<td>4</td> - -<td>"1.2"</td> -</tr> -</table></center> - -<dl> -<table BORDER COLS=1 WIDTH="100%" BGCOLOR="#CCCCCC" > -<tr> -<td><font size=-1>1. The RANGE_INDEX attribute is required if the -PAL_TYPE is "RANGEINDEX". Otherwise, the RANGE_INDEX attribute should -be omitted. (Range index is denigrated.)</font></td> -</tr> -</table> -<font size=-1>2. The minimum and maximum are optional. If not -set, the range is assumed to the maximum range of the number type. -If one of these attributes is set, then both should be set. The value -of the minimum must be less than or equal to the value of the maximum.</font></dl> -</dl> -Table 5 summarized the uses of the standard attributes for a palette dataset. -R means that the attribute listed on the leftmost column is Required for -the palette type on the first row, O means that the attribute is Optional -for that type and N that the attribute cannot be applied to that type. -The four first rows show the attributes that are always required -for the two palette types. -<br> -<br> -<table BORDER WIDTH="100%" > -<caption><b>Table 5. Applicability of Attributes</b></caption> - -<tr> -<td WIDTH="33%"><b>PAL_TYPE</b></td> - -<td WIDTH="33%"><b>STANDARD8</b></td> - -<td WIDTH="34%"><b>RANGEINDEX</b></td> -</tr> - -<tr> -<td WIDTH="33%">CLASS</td> - -<td WIDTH="33%">R</td> - -<td WIDTH="34%">R</td> -</tr> - -<tr> -<td WIDTH="33%">PAL_VERSION</td> - -<td WIDTH="33%">R</td> - -<td WIDTH="34%">R</td> -</tr> - -<tr> -<td WIDTH="33%">PAL_COLORMODEL</td> - -<td WIDTH="33%">R</td> - -<td WIDTH="34%">R</td> -</tr> - -<tr> -<td WIDTH="33%">RANGE_INDEX</td> - -<td WIDTH="33%">N</td> - -<td WIDTH="34%">R</td> -</tr> - -<tr> -<td WIDTH="33%">PAL_MINMAXNUMERIC</td> - -<td WIDTH="33%">O</td> - -<td WIDTH="34%">O</td> -</tr> -</table> - -<h3> -2.3. Storage Layout for Palettes</h3> -The values of the Palette are stored as a dataset. The datatype can -be any HDF 5 atomic numeric type. The dataset will have dimensions -(<tt>nentries</tt> by <tt>ncomponents</tt>), where '<tt>nentries</tt>' -is the number of colors (usually 256) and '<tt>ncomponents'</tt> is the -number of values per color (3 for <b>RGB</b>, 4 for <b>CMYK</b>, etc.) -<br> -<h2> -<a NAME="Sect3"></a>3. Consistency and Correlation of Image and Palette -Attributes</h2> -The objects in this specification are an extension to the base HDF5 specification -and library. They are accessible with the standard HDF5 library, -but the semantics of the objects are not enforced by the base library. -For example, it is perfectly possible to add an attribute called <b>IMAGE</b> -to <i>any</i> dataset, or to include an object reference to <i>any</i> -HDF5 dataset in a <b>PALETTE</b> attribute. This would be a valid -HDF5 file, but not conformant to this specification. The rules defined -in this specification must be implemented with appropriate software, and -applications must use conforming software to assure correctness. -<p>The Image and Palette specifications include several redundant standard -attributes, such as the <b>IMAGE_COLORMODEL</b> and the <b>PAL_COLORMODEL</b>. -These attributes are informative not normative, in that it is acceptable -to attach a Palette to an Image dataset even if their attributes do not -match. Software is not required to enforce consistency, and files -may contain mismatched associations of Images and Palettes. In all -cases, it is up to applications to determine what kinds of images and color -models can be supported. -<p>For example, an Image that was created from a file with an "RGB" may -have a "YUV" Palette in its <b>PALETTE</b> attribute array. This -would be a legal HDF5 file and also conforms to this specification, although -it may or may not be correct for a given application.</p> - - -<!-- #BeginLibraryItem "/ed_libs/NavBar_ADevG.lbi" --><hr> -<center> -<table border=0 width=98%> -<tr><td valign=top align=left> - <a href="../index.html">HDF5 documents and links</a> <br> - <a href="../H5.intro.html">Introduction to HDF5</a> <br> - <!-- - <a href="Glossary.html">Glossary</a><br> - --> -</td> -<td valign=top align=right> - <a href="http://hdf.ncsa.uiuc.edu/HDF5/doc/UG/index.html">HDF5 User's Guide</a> <br> - <a href="../RM_H5Front.html">HDF5 Reference Manual</a> <br> - <a href="../ADGuide.html">HDF5 Application Developer's Guide</a> <br> -</td></tr> -</table> -</center> -<hr> -<!-- #EndLibraryItem --><!-- #BeginLibraryItem "/ed_libs/Footer.lbi" --><address> -<a href="mailto:hdfhelp@ncsa.uiuc.edu">HDF Help Desk</a> -<br> -Describes HDF5 Release 1.7, the unreleased development branch; working toward HDF5 Release 1.8.0 -</address><!-- #EndLibraryItem --><!-- Created: Spring 1999 --> -<!-- hhmts start --> -Last modified: 8 June 2005 -<!-- hhmts end --> - -</body> -</html> diff --git a/doc/html/ADGuide/Makefile.am b/doc/html/ADGuide/Makefile.am deleted file mode 100644 index fde4097..0000000 --- a/doc/html/ADGuide/Makefile.am +++ /dev/null @@ -1,18 +0,0 @@ -# HDF5 Library Doc Makefile(.in) -# -# Copyright (C) 1997, 2002 -# National Center for Supercomputing Applications. -# All rights reserved. -# -## -## Makefile.am -## Run automake to generate a Makefile.in from this file. -# - -include $(top_srcdir)/config/commence-doc.am - -localdocdir = $(docdir)/hdf5/ADGuide - -# Public doc files (to be installed)... -localdoc_DATA=Changes.html H4toH5Mapping.pdf HISTORY.txt ImageSpec.html \ - PaletteExample1.gif Palettes.fm.anc.gif RELEASE.txt diff --git a/doc/html/ADGuide/Makefile.in b/doc/html/ADGuide/Makefile.in deleted file mode 100644 index 81d0f44..0000000 --- a/doc/html/ADGuide/Makefile.in +++ /dev/null @@ -1,487 +0,0 @@ -# Makefile.in generated by automake 1.9.5 from Makefile.am. -# @configure_input@ - -# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005 Free Software Foundation, Inc. -# This Makefile.in is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -@SET_MAKE@ - -# HDF5 Library Doc Makefile(.in) -# -# Copyright (C) 1997, 2002 -# National Center for Supercomputing Applications. -# All rights reserved. -# -# - -srcdir = @srcdir@ -top_srcdir = @top_srcdir@ -VPATH = @srcdir@ -pkgdatadir = $(datadir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ -top_builddir = ../../.. -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -INSTALL = @INSTALL@ -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_HEADER = $(INSTALL_DATA) -transform = $(program_transform_name) -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -build_triplet = @build@ -host_triplet = @host@ -DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ - $(top_srcdir)/config/commence-doc.am \ - $(top_srcdir)/config/commence.am -subdir = doc/html/ADGuide -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/configure.in -am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ - $(ACLOCAL_M4) -mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs -CONFIG_HEADER = $(top_builddir)/src/H5config.h -CONFIG_CLEAN_FILES = -SOURCES = -DIST_SOURCES = -am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; -am__vpath_adj = case $$p in \ - $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ - *) f=$$p;; \ - esac; -am__strip_dir = `echo $$p | sed -e 's|^.*/||'`; -am__installdirs = "$(DESTDIR)$(localdocdir)" -localdocDATA_INSTALL = $(INSTALL_DATA) -DATA = $(localdoc_DATA) -DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) - -# Set the paths for AFS installs of autotools for Linux machines -# Ideally, these tools should never be needed during the build. -ACLOCAL = /afs/ncsa/projects/hdf/packages/automake_1.9.5/Linux_2.4/bin/aclocal -I /afs/ncsa/projects/hdf/packages/libtool_1.5.14/Linux_2.4/share/aclocal -ADD_PARALLEL_FILES = @ADD_PARALLEL_FILES@ -AMDEP_FALSE = @AMDEP_FALSE@ -AMDEP_TRUE = @AMDEP_TRUE@ -AMTAR = @AMTAR@ -AM_MAKEFLAGS = @AM_MAKEFLAGS@ -AR = @AR@ -AUTOCONF = /afs/ncsa/projects/hdf/packages/autoconf_2.59/Linux_2.4/bin/autoconf -AUTOHEADER = /afs/ncsa/projects/hdf/packages/autoconf_2.59/Linux_2.4/bin/autoheader -AUTOMAKE = /afs/ncsa/projects/hdf/packages/automake_1.9.5/Linux_2.4/bin/automake -AWK = @AWK@ -BUILD_CXX_CONDITIONAL_FALSE = @BUILD_CXX_CONDITIONAL_FALSE@ -BUILD_CXX_CONDITIONAL_TRUE = @BUILD_CXX_CONDITIONAL_TRUE@ -BUILD_FORTRAN_CONDITIONAL_FALSE = @BUILD_FORTRAN_CONDITIONAL_FALSE@ -BUILD_FORTRAN_CONDITIONAL_TRUE = @BUILD_FORTRAN_CONDITIONAL_TRUE@ -BUILD_HDF5_HL_CONDITIONAL_FALSE = @BUILD_HDF5_HL_CONDITIONAL_FALSE@ -BUILD_HDF5_HL_CONDITIONAL_TRUE = @BUILD_HDF5_HL_CONDITIONAL_TRUE@ -BUILD_PABLO_CONDITIONAL_FALSE = @BUILD_PABLO_CONDITIONAL_FALSE@ -BUILD_PABLO_CONDITIONAL_TRUE = @BUILD_PABLO_CONDITIONAL_TRUE@ -BUILD_PARALLEL_CONDITIONAL_FALSE = @BUILD_PARALLEL_CONDITIONAL_FALSE@ -BUILD_PARALLEL_CONDITIONAL_TRUE = @BUILD_PARALLEL_CONDITIONAL_TRUE@ -BUILD_PDB2HDF = @BUILD_PDB2HDF@ -BUILD_PDB2HDF_CONDITIONAL_FALSE = @BUILD_PDB2HDF_CONDITIONAL_FALSE@ -BUILD_PDB2HDF_CONDITIONAL_TRUE = @BUILD_PDB2HDF_CONDITIONAL_TRUE@ -BYTESEX = @BYTESEX@ -CC = @CC@ -CCDEPMODE = @CCDEPMODE@ -CC_VERSION = @CC_VERSION@ -CFLAGS = @CFLAGS@ -CONFIG_DATE = @CONFIG_DATE@ -CONFIG_MODE = @CONFIG_MODE@ -CONFIG_USER = @CONFIG_USER@ -CPP = @CPP@ -CPPFLAGS = @CPPFLAGS@ -CXX = @CXX@ -CXXCPP = @CXXCPP@ -CXXDEPMODE = @CXXDEPMODE@ -CXXFLAGS = @CXXFLAGS@ -CYGPATH_W = @CYGPATH_W@ -DEBUG_PKG = @DEBUG_PKG@ -DEFS = @DEFS@ -DEPDIR = @DEPDIR@ -DYNAMIC_DIRS = @DYNAMIC_DIRS@ -ECHO = @ECHO@ -ECHO_C = @ECHO_C@ -ECHO_N = @ECHO_N@ -ECHO_T = @ECHO_T@ -EGREP = @EGREP@ -EXEEXT = @EXEEXT@ -F77 = @F77@ - -# Make sure that these variables are exported to the Makefiles -F9XMODEXT = @F9XMODEXT@ -F9XMODFLAG = @F9XMODFLAG@ -F9XSUFFIXFLAG = @F9XSUFFIXFLAG@ -FC = @FC@ -FCFLAGS = @FCFLAGS@ -FCLIBS = @FCLIBS@ -FFLAGS = @FFLAGS@ -FILTERS = @FILTERS@ -FSEARCH_DIRS = @FSEARCH_DIRS@ -H5_VERSION = @H5_VERSION@ -HADDR_T = @HADDR_T@ -HDF5_INTERFACES = @HDF5_INTERFACES@ -HID_T = @HID_T@ -HL = @HL@ -HL_FOR = @HL_FOR@ -HSIZET = @HSIZET@ -HSIZE_T = @HSIZE_T@ -HSSIZE_T = @HSSIZE_T@ -INSTALL_DATA = @INSTALL_DATA@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_SCRIPT = @INSTALL_SCRIPT@ -INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ -INSTRUMENT_LIBRARY = @INSTRUMENT_LIBRARY@ -LDFLAGS = @LDFLAGS@ -LIBOBJS = @LIBOBJS@ -LIBS = @LIBS@ -LIBTOOL = @LIBTOOL@ -LN_S = @LN_S@ -LTLIBOBJS = @LTLIBOBJS@ -LT_STATIC_EXEC = @LT_STATIC_EXEC@ -MAINT = @MAINT@ -MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@ -MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@ -MAKEINFO = @MAKEINFO@ -MPE = @MPE@ -OBJECT_NAMELEN_DEFAULT_F = @OBJECT_NAMELEN_DEFAULT_F@ -OBJEXT = @OBJEXT@ -PACKAGE = @PACKAGE@ -PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ -PACKAGE_NAME = @PACKAGE_NAME@ -PACKAGE_STRING = @PACKAGE_STRING@ -PACKAGE_TARNAME = @PACKAGE_TARNAME@ -PACKAGE_VERSION = @PACKAGE_VERSION@ -PARALLEL = @PARALLEL@ -PATH_SEPARATOR = @PATH_SEPARATOR@ -PERL = @PERL@ -PTHREAD = @PTHREAD@ -RANLIB = @RANLIB@ -ROOT = @ROOT@ -RUNPARALLEL = @RUNPARALLEL@ -RUNSERIAL = @RUNSERIAL@ -R_INTEGER = @R_INTEGER@ -R_LARGE = @R_LARGE@ -SEARCH = @SEARCH@ -SETX = @SETX@ -SET_MAKE = @SET_MAKE@ - -# Hardcode SHELL to be /bin/sh. Most machines have this shell, and -# on at least one machine configure fails to detect its existence (janus). -# Also, when HDF5 is configured on one machine but run on another, -# configure's automatic SHELL detection may not work on the build machine. -SHELL = /bin/sh -SIZE_T = @SIZE_T@ -STATIC_SHARED = @STATIC_SHARED@ -STRIP = @STRIP@ -TESTPARALLEL = @TESTPARALLEL@ -TRACE_API = @TRACE_API@ -USE_FILTER_DEFLATE = @USE_FILTER_DEFLATE@ -USE_FILTER_FLETCHER32 = @USE_FILTER_FLETCHER32@ -USE_FILTER_NBIT = @USE_FILTER_NBIT@ -USE_FILTER_SCALEOFFSET = @USE_FILTER_SCALEOFFSET@ -USE_FILTER_SHUFFLE = @USE_FILTER_SHUFFLE@ -USE_FILTER_SZIP = @USE_FILTER_SZIP@ -VERSION = @VERSION@ -ac_ct_AR = @ac_ct_AR@ -ac_ct_CC = @ac_ct_CC@ -ac_ct_CXX = @ac_ct_CXX@ -ac_ct_F77 = @ac_ct_F77@ -ac_ct_FC = @ac_ct_FC@ -ac_ct_RANLIB = @ac_ct_RANLIB@ -ac_ct_STRIP = @ac_ct_STRIP@ -am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ -am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ -am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@ -am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@ -am__include = @am__include@ -am__leading_dot = @am__leading_dot@ -am__quote = @am__quote@ -am__tar = @am__tar@ -am__untar = @am__untar@ -bindir = @bindir@ -build = @build@ -build_alias = @build_alias@ -build_cpu = @build_cpu@ -build_os = @build_os@ -build_vendor = @build_vendor@ -datadir = @datadir@ -exec_prefix = @exec_prefix@ -host = @host@ -host_alias = @host_alias@ -host_cpu = @host_cpu@ -host_os = @host_os@ -host_vendor = @host_vendor@ - -# Install directories that automake doesn't know about -includedir = $(exec_prefix)/include -infodir = @infodir@ -install_sh = @install_sh@ -libdir = @libdir@ -libexecdir = @libexecdir@ -localstatedir = @localstatedir@ -mandir = @mandir@ -mkdir_p = @mkdir_p@ -oldincludedir = @oldincludedir@ -prefix = @prefix@ -program_transform_name = @program_transform_name@ -sbindir = @sbindir@ -sharedstatedir = @sharedstatedir@ -sysconfdir = @sysconfdir@ -target_alias = @target_alias@ - -# Shell commands used in Makefiles -RM = rm -f -CP = cp - -# Some machines need a command to run executables; this is that command -# so that our tests will run. -# We use RUNTESTS instead of RUNSERIAL directly because it may be that -# some tests need to be run with a different command. Older versions -# of the makefiles used the command -# $(LIBTOOL) --mode=execute -# in some directories, for instance. -RUNTESTS = $(RUNSERIAL) - -# Libraries to link to while building -LIBHDF5 = $(top_builddir)/src/libhdf5.la -LIBH5TEST = $(top_builddir)/test/libh5test.la -LIBH5F = $(top_builddir)/fortran/src/libhdf5_fortran.la -LIBH5FTEST = $(top_builddir)/fortran/test/libh5test_fortran.la -LIBH5CPP = $(top_builddir)/c++/src/libhdf5_cpp.la -LIBH5TOOLS = $(top_builddir)/tools/lib/libh5tools.la -LIBH5_HL = $(top_builddir)/hl/src/libhdf5_hl.la -LIBH5F_HL = $(top_builddir)/hl/fortran/src/libhdf5hl_fortran.la -LIBH5CPP_HL = $(top_builddir)/hl/c++/src/libhdf5_hl_cpp.la -docdir = $(exec_prefix)/doc - -# Scripts used to build examples -H5CC = $(bindir)/h5cc -H5CC_PP = $(bindir)/h5pcc -H5FC = $(bindir)/h5fc -H5FC_PP = $(bindir)/h5pfc - -# .chkexe and .chksh files are used to mark tests that have run successfully. -MOSTLYCLEANFILES = *.chkexe *.chksh -localdocdir = $(docdir)/hdf5/ADGuide - -# Public doc files (to be installed)... -localdoc_DATA = Changes.html H4toH5Mapping.pdf HISTORY.txt ImageSpec.html \ - PaletteExample1.gif Palettes.fm.anc.gif RELEASE.txt - -all: all-am - -.SUFFIXES: -$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/config/commence-doc.am $(top_srcdir)/config/commence.am $(am__configure_deps) - @for dep in $?; do \ - case '$(am__configure_deps)' in \ - *$$dep*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ - && exit 0; \ - exit 1;; \ - esac; \ - done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign doc/html/ADGuide/Makefile'; \ - cd $(top_srcdir) && \ - $(AUTOMAKE) --foreign doc/html/ADGuide/Makefile -.PRECIOUS: Makefile -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status - @case '$?' in \ - *config.status*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ - *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ - esac; - -$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh - -$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh - -mostlyclean-libtool: - -rm -f *.lo - -clean-libtool: - -rm -rf .libs _libs - -distclean-libtool: - -rm -f libtool -uninstall-info-am: -install-localdocDATA: $(localdoc_DATA) - @$(NORMAL_INSTALL) - test -z "$(localdocdir)" || $(mkdir_p) "$(DESTDIR)$(localdocdir)" - @list='$(localdoc_DATA)'; for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - f=$(am__strip_dir) \ - echo " $(localdocDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(localdocdir)/$$f'"; \ - $(localdocDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(localdocdir)/$$f"; \ - done - -uninstall-localdocDATA: - @$(NORMAL_UNINSTALL) - @list='$(localdoc_DATA)'; for p in $$list; do \ - f=$(am__strip_dir) \ - echo " rm -f '$(DESTDIR)$(localdocdir)/$$f'"; \ - rm -f "$(DESTDIR)$(localdocdir)/$$f"; \ - done -tags: TAGS -TAGS: - -ctags: CTAGS -CTAGS: - - -distdir: $(DISTFILES) - $(mkdir_p) $(distdir)/../../../config - @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ - list='$(DISTFILES)'; for file in $$list; do \ - case $$file in \ - $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ - $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ - esac; \ - if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test "$$dir" != "$$file" && test "$$dir" != "."; then \ - dir="/$$dir"; \ - $(mkdir_p) "$(distdir)$$dir"; \ - else \ - dir=''; \ - fi; \ - if test -d $$d/$$file; then \ - if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ - fi; \ - cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ - else \ - test -f $(distdir)/$$file \ - || cp -p $$d/$$file $(distdir)/$$file \ - || exit 1; \ - fi; \ - done -check-am: all-am -check: check-am -all-am: Makefile $(DATA) -installdirs: - for dir in "$(DESTDIR)$(localdocdir)"; do \ - test -z "$$dir" || $(mkdir_p) "$$dir"; \ - done -install: install-am -install-exec: install-exec-am -install-data: install-data-am -uninstall: uninstall-am - -install-am: all-am - @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am - -installcheck: installcheck-am -install-strip: - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - `test -z '$(STRIP)' || \ - echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install -mostlyclean-generic: - -test -z "$(MOSTLYCLEANFILES)" || rm -f $(MOSTLYCLEANFILES) - -clean-generic: - -distclean-generic: - -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) - -maintainer-clean-generic: - @echo "This command is intended for maintainers to use" - @echo "it deletes files that may require special tools to rebuild." -clean: clean-am - -clean-am: clean-generic clean-libtool mostlyclean-am - -distclean: distclean-am - -rm -f Makefile -distclean-am: clean-am distclean-generic distclean-libtool - -dvi: dvi-am - -dvi-am: - -html: html-am - -info: info-am - -info-am: - -install-data-am: install-localdocDATA - -install-exec-am: - -install-info: install-info-am - -install-man: - -installcheck-am: - -maintainer-clean: maintainer-clean-am - -rm -f Makefile -maintainer-clean-am: distclean-am maintainer-clean-generic - -mostlyclean: mostlyclean-am - -mostlyclean-am: mostlyclean-generic mostlyclean-libtool - -pdf: pdf-am - -pdf-am: - -ps: ps-am - -ps-am: - -uninstall-am: uninstall-info-am uninstall-localdocDATA - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-exec install-exec-am \ - install-info install-info-am install-localdocDATA install-man \ - install-strip installcheck installcheck-am installdirs \ - maintainer-clean maintainer-clean-generic mostlyclean \ - mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ - uninstall uninstall-am uninstall-info-am \ - uninstall-localdocDATA - - -# Ignore most rules -lib progs check test _test check-p check-s: - @echo "Nothing to be done" - -tests dep depend: - @@SETX@; for d in X $(SUBDIRS); do \ - if test $$d != X; then \ - (cd $$d && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; \ - fi; - done - -# In docs directory, install-doc is the same as install -install-doc install-all: - $(MAKE) $(AM_MAKEFLAGS) install -uninstall-doc uninstall-all: - $(MAKE) $(AM_MAKEFLAGS) uninstall -# Tell versions [3.59,3.63) of GNU make to not export all variables. -# Otherwise a system limit (for SysV at least) may be exceeded. -.NOEXPORT: diff --git a/doc/html/ADGuide/PaletteExample1.gif b/doc/html/ADGuide/PaletteExample1.gif Binary files differdeleted file mode 100755 index 8694d9d..0000000 --- a/doc/html/ADGuide/PaletteExample1.gif +++ /dev/null diff --git a/doc/html/ADGuide/Palettes.fm.anc.gif b/doc/html/ADGuide/Palettes.fm.anc.gif Binary files differdeleted file mode 100755 index d344c03..0000000 --- a/doc/html/ADGuide/Palettes.fm.anc.gif +++ /dev/null diff --git a/doc/html/ADGuide/RELEASE.txt b/doc/html/ADGuide/RELEASE.txt deleted file mode 100644 index 0e58c12..0000000 --- a/doc/html/ADGuide/RELEASE.txt +++ /dev/null @@ -1,906 +0,0 @@ -HDF5 version 1.7.48 released on Mon Jul 18 16:18:26 CDT 2005 -================================================================================ - - -INTRODUCTION - -This document describes the differences between HDF5-1.6.* and -HDF5-1.7.*, and contains information on the platforms tested and -known problems in HDF5-1.7.*. 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 -- Platforms Tested -- Known Problems - - -New Features -============ - - Configuration: - -------------- - - When make is invoked in parallel (using -j), sequential tests - are now executed simultaneously. This should make them execute - more quickly on some machines. - Also, when tests pass, they will create a foo.chkexe file. - This prevents the test from executing again until the test or - main library changes. - - 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 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 - - 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: - -------- - - 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 32-bit, - 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 - For AIX 5.1 64-bit, - regardless of poe version number, please UNCOMMENT - << hdf5_mpi_complex_derived_datatype_works>> under hdf5/config. - We suspect there are some problems for MPI-IO implementation - for 64-bit. - 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. - KY - 2005/07/13 - - 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: - ----------------- - - 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 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 - - - Tools: - ------ - - 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: - ------ - - 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 - - -Support for new platforms, languages and compilers. -======================================= - - 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 - ------- - - 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 - ------------- - - 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 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 -================ - - 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.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 - 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 5.0-2 - MPIch 1.2.4 - Absoft Fortran v9.0 - 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,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.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 XP MSVC++ 6.0 - MSVC++ .NET 2003, - Intel C++ Version 8.1 - DEC Visual Fortran 6.6c - MAC OS X Darwin 6.5 - gcc and g++ Apple Computer, Inc. GCC - version 1161, based on gcc version 3.1 - IBM XL Fortran compiler version 8.1 - Absoft Fortran v8.2 - - - -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 -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 -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 -============== -* 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 windows XP, Fortran DLLs are not working with DEC Fortran 6.6c and Intel - 8.1. -* 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 - setenv CXX "pgCC -tlocal" for others - -* 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: -ftp://hdf.ncsa.uiuc.edu/pub/outgoing/hdf5/hdf5-1.6.2/F90_source_for_Crays - -* 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. |