summaryrefslogtreecommitdiffstats
path: root/release_docs
Commit message (Collapse)AuthorAgeFilesLines
* [svn-r6252] Purpose:Quincey Koziol2003-01-091-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Lots of performance improvements & a couple new internal API interfaces. Description: Performance Improvements: - Cached file offset & length sizes in shared file struct, to avoid constantly looking them up in the FCPL. - Generic property improvements: - Added "revision" number to generic property classes to speed up comparisons. - Changed method of storing properties from using a hash-table to the TBBT routines in the library. - Share the propery names between classes and the lists derived from them. - Removed redundant 'def_value' buffer from each property. - Switching code to use a "copy on write" strategy for properties in each list, where the properties in each list are shared with the properties in the class, until a property's value is changed in a list. - Fixed error in layout code which was allocating too many buffers. - Redefined public macros of the form (H5open()/H5check, <variable>) internally to only be (<variable>), avoiding innumerable useless calls to H5open() and H5check_version(). - Reuse already zeroed buffers in H5F_contig_fill instead of constantly re-zeroing them. - Don't write fill values if writing entire dataset. - Use gettimeofday() system call instead of time() system when checking the modification time of a dataset. - Added reference counted string API and use it for tracking the names of objects opening in a file (for the ID->name code). - Removed redundant H5P_get() calls in B-tree routines. - Redefine H5T datatype macros internally to the library, to avoid calling H5check redundantly. - Keep dataspace information for dataset locally instead of reading from disk each time. Added new module to track open objects in a file, to allow this (which will be useful eventually for some FPH5 metadata caching issues). - Remove H5AC_find macro which was inlining metadata cache lookups, and call function instead. - Remove redundant memset() calls from H5G_namei() routine. - Remove redundant checking of object type when locating objects in metadata cache and rely on the address only. - Create default dataset object to use when default dataset creation property list is used to create datasets, bypassing querying for all the property list values. - Use default I/O vector size when performing raw data with the default dataset transfer property list, instead of querying for I/O vector size. - Remove H5P_DEFAULT internally to the library, replacing it with more specific default property list based on the type of property list needed. - Remove redundant memset() calls in object header message (H5O*) routines. - Remove redunant memset() calls in data I/O routines. - Split free-list allocation routines into malloc() and calloc()- like routines, instead of one combined routine. - Remove lots of indirection in H5O*() routines. - Simplify metadata cache entry comparison routine (used when flushing entire cache out). - Only enable metadata cache statistics when H5AC_DEBUG is turned on, instead of always tracking them. - Simplify address comparison macro (H5F_addr_eq). - Remove redundant metadata cache entry protections during dataset creation by protecting the object header once and making all the modifications necessary for the dataset creation before unprotecting it. - Reduce # of "number of element in extent" computations performed by computing and storing the value during dataspace creation. - Simplify checking for group location's file information, when file has not been involving in file-mounting operations. - Use binary encoding for modification time, instead of ASCII. - Hoist H5HL_peek calls (to get information in a local heap) out of loops in many group routine. - Use static variable for iterators of selections, instead of dynamically allocation them each time. - Lookup & insert new entries in one step, avoiding traversing group's B-tree twice. - Fixed memory leak in H5Gget_objname_idx() routine (tangential to performance improvements, but fixed along the way). - Use free-list for reference counted strings. - Don't bother copying object names into cached group entries, since they are re-created when an object is opened. The benchmark I used to measure these results created several thousand small (2K) datasets in a file and wrote out the data for them. This is Elena's "regular.c" benchmark. These changes resulted in approximately ~4.3x speedup of the development branch when compared to the previous code in the development branch and ~1.4x speedup compared to the release branch. Additionally, these changes reduce the total memory used (code and data) by the development branch by ~800KB, bringing the development branch back into the same ballpark as the release branch. I'll send out a more detailed description of the benchmark results as a followup note. New internal API routines: Added "reference counted strings" API for tracking strings that get used by multiple owners without duplicating the strings. Added "ternary search tree" API for text->object mappings. Platforms tested: Tested h5committest {arabica (fortran), eirene (fortran, C++) modi4 (parallel, fortran)} Other platforms/configurations tested? FreeBSD 4.7 (sleipnir) serial & parallel Solaris 2.6 (baldric) serial
* [svn-r6234] Updated with the new MPE feature.Albert Cheng2003-01-041-0/+2
|
* [svn-r6221] Snapshot version 1.5 release 44HDF Admin2002-12-211-1/+1
|
* [svn-r6208] Raymond Lu2002-12-161-0/+2
| | | | | Misc. update: Update an error assertion improvement for nil VL string.
* [svn-r6193] Snapshot version 1.5 release 43HDF Admin2002-12-071-1/+1
|
* [svn-r6140] Purpose:Pedro Vicente Nunes2002-11-261-0/+5
| | | | | | | | | | | | code warrior fix CW does not recognize the _stati64 type, changed HDstat macro accordingly Platforms tested: windows 2000 (MSVC, Code warrior) linux
* [svn-r6136] Raymond Lu2002-11-251-0/+2
| | | | | | | | | | | Purpose: new functions Description: H5Gget_num_objs, H5Gget_objname_by_idx and H5Gget_objtype_by_idx. Platforms tested: modi4, arabica, eirene Misc. update: RELEASE.txt updated.
* [svn-r6133] Snapshot version 1.5 release 42HDF Admin2002-11-231-1/+1
|
* [svn-r6123] *** empty log message ***Quincey Koziol2002-11-201-1/+1
|
* [svn-r6113] Purpose:Quincey Koziol2002-11-201-1/+4
| | | | | Note new "H5Zunregister" and "H5Zfilter_avail" functions, along with mentioning that Kent's shuffling code added an H5Pset_shuffle API function.
* [svn-r6099] Raymond Lu2002-11-181-0/+2
| | | | | | | | | | | Purpose: bug fix. Description: h5dump cannot dump data and datatype for VL string. Platforms tested: eirene, arabica Misc. update: MANIFEST, RELEASE.txt
* [svn-r6090] MuQun Yang2002-11-131-0/+4
| | | | | | | | | | | | Purpose: add "shuffle" filter note Description: Solution: Platforms tested: Misc. update: Update MANIFEST if you add or remove any file. Update release_docs/RELEASE for bug fixes, new features, etc. Update applicable document files too.
* [svn-r6062] Raymond Lu2002-11-071-0/+2
| | | | | | | | | | | | Purpose: New function. Description: H5Dget_offset returns the offset of a dataset's data relative to the beginning of a file. Platforms tested: arabica(simple function, one test should be enough.) Misc. update: RELEASE.txt
* [svn-r6060] Raymond Lu2002-11-061-0/+3
| | | | | | | | | | | Purpose: Add new functions Description: add H5Tget_native_type and H5Tis_variable_str. Platforms tested: arabica, eirene, modi4 Misc. update: MANIFEST and release_docs/RELEASE updated.
* [svn-r6059] Purpose:Albert Cheng2002-11-052-10/+29
| | | | | | Updated the parallel installation information Platforms tested: Highly sophiscated optical scanning (eyeball it)
* [svn-r6055] Purpose:Quincey Koziol2002-11-051-0/+1
| | | | | | | | | | | | | | New feature Description: Add support for scalar dataspaces in parallel I/O. Platforms tested: Tested h5committest {arabica (fortran), eirene (fortran, C++) modi4 (parallel, fortran)} Also, FreeBSD 4.7 (sleipnir) serial & parallel Misc. update: Update release_docs/RELEASE for bug fixes, new features, etc.
* [svn-r6050] Snapshot version 1.5 release 40HDF Admin2002-11-021-1/+1
|
* [svn-r6043] Purpose:Quincey Koziol2002-10-291-0/+2
| | | | | | | | | | | | Bug fix Description: I/O using "none" selections in parallel wasn't working correctly. Also, add serial "none" selection test. Platforms tested: Tested h5committest {arabica (fortran), eirene (fortran, C++) modi4 (parallel, fortran)}
* [svn-r6042] Raymond Lu2002-10-291-0/+2
| | | | | | | | Purpose: Change release note for new functions(H5Gget_comment, H5Arename, H5Aget_storage_size). Misc. update: Update release_docs/RELEASE for bug fixes, new features, etc.
* [svn-r6033] Snapshot version 1.5 release 39HDF Admin2002-10-261-1/+1
|
* [svn-r6010] Purpose:Albert Cheng2002-10-161-0/+2
| | | | Updated.
* [svn-r6004] Purpose:Quincey Koziol2002-10-151-2/+7
| | | | Describe new HDF5_DISABLE_VERSION_CHECK environment feature.
* [svn-r6001] Purpose:Albert Cheng2002-10-151-0/+2
| | | | | | Updated with bug fix Platforms tested: No test since this is just a text file.
* [svn-r5979] Snapshot version 1.5 release 38HDF Admin2002-10-121-1/+1
|
* [svn-r5958] Elena Pourmal2002-10-021-0/+1
| | | | | | | | | | | | | | Purpose: Added missing fortran functions h5set(get)_buffer_f. Also added docs and tests for them. Solution: Currently functions do not accept conversion and background buffers. This corresponds to H5set(get)_buffer call with buffer pointers set to NULL. If there is a demand, I can overload the functions to have new parameters and go through all trouble creating functions for all supported datatypes. Platforms tested: Solaris 2.7, Linux 2.2., IRIX64-6.5
* [svn-r5956] Elena Pourmal2002-10-011-0/+10
| | | | | | | | | | | | | | | | | | Purpose: Added new F90 APIs Description: I added new F90 APIs, tests, and documentation for the following functions: h5fget_obj_count_f h5pequal_f h5tget_member_index_f h5fget_obj_ids_f h5pget_fclose_degree_f h5pset_fclose_degree_f Documentation for exisiting functions was missing: h5freopen_f, h5fflush_f, h5fmount_f, h5unmount_f, h5fget_create_plist_f, h5fget_access_plist_f. Platforms tested: Solaris 2.7, Linux 2.2 and IRIX64-6.5
* [svn-r5951] Raymond Lu2002-09-301-0/+4
| | | | | | | | | | | Purpose: New API functions Description: Added API functions to return pointer to low-level file handle (H5Fget_vfd_handle and H5FDget_vfd_handle) and related property list setting functions(H5Pset_family_offset and H5Pset_multi_type). Platforms tested: Linux 2.2(eirene), Solaris 2.7(arabica), IRIX64 6.5(modi4)
* [svn-r5949] Snapshot version 1.5 release 37HDF Admin2002-09-281-1/+1
|
* [svn-r5948] Elena Pourmal2002-09-251-1/+4
| | | | | | | | | | Purpose: Added new fortran functions Description: Source code, tests and documentation for h5glink2_f and h5gmove2_f functions were added. I also added missing man page for h5glink_f Platforms tested: Solaris 2.7, IRIX64-6.5 and Liniux 2.2
* [svn-r5946] Elena Pourmal2002-09-241-0/+8
| | | | | | | | | | | | | | Purpose: Added missing fortran functions. Description: Four Library Fortran API functions have been added: h5get_libversion_f, h5_check_version_f, h5garbage_collect_f and h5dont_atexit_f. Only first two functions were tested. Documentation file and RELEASE.txt were updated. Platforms tested: Solaris 2.7, IRIX64-6.5 and Linux 2.2
* [svn-r5927] Snapshot version 1.5 release 36HDF Admin2002-09-141-1/+1
|
* [svn-r5926] Purpose:Quincey Koziol2002-09-131-1/+4
| | | | | | | | | | | | | API name change Description: Change all "space time" references to "alloc time", including API functions and macro definitions, etc. Platforms tested: FreeBSD 4.6 (sleipnir) w/C++ Solaris 2.7 (arabica) w/FORTRAN IRIX64 6.5 (modi4) w/parallel & FORTRAN
* [svn-r5912] Snapshot version 1.5 release 35HDF Admin2002-09-071-1/+1
|
* [svn-r5908] Snapshot version 1.5 release 34HDF Admin2002-08-311-1/+1
|
* [svn-r5900] Purpose:Quincey Koziol2002-08-271-0/+2
| | | | | | | | | | | Code cleanup/New Feature Description: Improve the space allocation in the file by re-using freed space more effectively. Platforms tested: FreeBSD 4.6 (sleipnir) w/serial & parallel
* [svn-r5899] Purpose:Quincey Koziol2002-08-271-0/+6
| | | | | | | Update release notes Description: Mention new space allocation features.
* [svn-r5880] Raymond Lu2002-08-201-0/+5
| | | | | Purpose: add information of compact dataset.
* [svn-r5869] Snapshot version 1.5 release 33HDF Admin2002-08-101-1/+1
|
* [svn-r5859] ./hdf5-devel/release_docs/RELEASE.txtRobb Matzke2002-08-091-0/+20
| | | | | | | | | | | | | | | | | Purpose: Merged from 1.4 branch Description: API tracing improvements Platforms tested: Linux (--disable-hsizet didn't work before my changes and still doesn't work, but --enable-hsizet is fine). Note: This checkin includes temporary code in H5FDmpiposix.c to turn off GPFS byte range token prefetches on ASCI/Blue. Once the HDF5 API supports the necessary prerequisite functionality this temporary code can be migraged up above HDF5.
* [svn-r5841] Snapshot version 1.5 release 32HDF Admin2002-08-031-1/+1
|
* [svn-r5838] MuQun Yang2002-07-251-7/+0
| | | | | | | | | | | Purpose: update windows support. Description: 1. Since we don't support w98 anymore, delete the description about w98. Actually DLL may work on w98. 2. Release dll work for new HDF5 release. Solution: Platforms tested:
* [svn-r5814] Purpose:Quincey Koziol2002-07-191-4/+6
| | | | | | | | | | | | | | | | | | Bug Fix Description: It was possible to create corrupted metadata information (either in memory or in the file or both) with a parallel I/O program because of the way metadata writes were being handled for writes out of the metadata cache. Solution: Added a dataset transfer property called "block before metadata write" which is used by the MPI-I/O and MPI-posix drivers to sync up all the processes before attempting a metadata write. This property is currently only for metadata writes from the metadata cache. Platforms tested: IRIX64 6.5 (modi4) w/parallel
* [svn-r5802] Purpose:Quincey Koziol2002-07-151-0/+10
| | | | | | | | Update docs Description: Note --with-dmalloc addition to configure flags and new MPI-posix VFL driver.
* [svn-r5778] Purpose:Bill Wendling2002-07-101-3/+3
| | | | | | Update Description: Changed to say Linux 2.4.18 instead of 2.4.4
* [svn-r5777] Raymond Lu2002-07-101-0/+5
| | | | | | | Purpose: Update information Description: Update VL memory freeing information.
* [svn-r5774] Snapshot version 1.5 release 31HDF Admin2002-07-061-1/+1
|
* [svn-r5726] Snapshot version 1.5 release 30HDF Admin2002-06-291-1/+1
|
* [svn-r5696] Purpose:Quincey Koziol2002-06-251-2/+2
| | | | Update FreeBSD release info.
* [svn-r5690] Purpose:Quincey Koziol2002-06-241-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | Bug Fix Description: When parallel I/O is used, the MPI-I/O VFL driver uses a "lazy" model to call MPI_File_set_view() in order to reduce the number of calls to this function. However, this is unsafe, because if a collective I/O which uses MPI derived types (and thus uses MPI_File_set_view()) is immediately followed by an independent I/O, the code will attempt to call MPI_File_set_view() in order to switch back to the default view of the file. MPI_File_set_view() is a collective call however, and this causes the application to hang. Solution: Removed "lazy" MPI_File_set_view() code, instead set the file view when it is needed (with MPI derived types) and immediately set the file view back to the default view before leaving the I/O routine. Platforms tested: IRIX64 6.5 (modi4) w/parallel. Also, tested with the latest development and release code for the SAF library, which now works correctly with this change. (Although the release branch of the SAF library seems to have a bug, this 1.4.4 release candidate code gets as far as the version the SAF library is released on top of (1.4.2-patch1, I believe)).
* [svn-r5680] Purpose:Quincey Koziol2002-06-191-0/+7
| | | | | | | | | | | | | | | | | | | | New feature. Description: There is some discussion among the SAF team as to whether it is better to use MPI derived types for raw data transfers (thus needing a MPI_File_set_view() call), or whether it is better to use a sequence of low-level MPI types (i.e. MPI_BYTE) for the raw data transfer. Solution: Added an in internal flag to determine whether derived types are preferred (the default), or whether they should be avoided. An environment variable ("HDF5_MPI_PREFER_DERIVED_TYPES") can be set by users to control whether MPI types should be used or not. Set the environment variable to "0" (i.e.: 'setenv HDF5_MPI_PREFER_DERIVED_TYPES 0' to avoid using MPI derived types. Platforms tested: IRIX64 6.5 (modi4) w/parallel