summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* [svn-r9764] Purpose:Quincey Koziol2005-01-063-161/+709
| | | | | | | | | | | | | | | | New feature Description: Add some additional features to the skip list code that was needed to fully support all the features that the threaded, balanced binary tree code has. Also, updated the property list code to take advantage of a few of the new features. Platforms tested: FreeBSD 4.10 (sleipnir) Too minor to require h5committest
* [svn-r9762] Purpose:Quincey Koziol2005-01-061-1/+1
| | | | | | | | | | Code cleanup Description: Change pablo mask to conform to the style used by the rest of the library Platforms tested: None needed - very, very minor
* [svn-r9761] Purpose:Albert Cheng2005-01-062-0/+2
| | | | | | | | | | | | | | | | Bug fix. Description: threadsafe test (ttsafe) would seg-fault if --disable-production --enable-debug mode is used. Reason was that the fstack.nused field was not initialized when created. Solution: Init new fstack.nused with 0. Platforms tested: Tested in mir, using development/debug mode. Did not "h5committested" as change is trivial and limited to threadsafe mode.
* [svn-r9759] Purpose:MuQun Yang2005-01-061-0/+545
| | | | | | | | | | | | | | | To add n-bit implementation inside HDF5. Description: This check-in for implementation is for debugging purpose. N-bit filter should be used for the time being. Solution: Platforms tested: sol 2.7, Linux 2.4, Aix 5.1 Misc. update:
* [svn-r9758] Purpose:MuQun Yang2005-01-069-9/+73
| | | | | | | | | | | | | | | | | Adding framework of N-bit filter Description: N-bit filter is required for NetCDF project. To add N-bit filter, configure.in configure, Makefile.in under src and other filter-related source code needs to be updated. Currently, N-bit tests are turned off from the library. So the change will affect daily test. Solution: Platforms tested: sol 2.7, linux 2.4, aix 5.1 Misc. update:
* [svn-r9755] Purpose: New featureRaymond Lu2005-01-062-29/+29
| | | | | | | | | | | | | Description: Start to support software conversion between long double and all integers. Solution: No major changes to the algorithm. Changes to configure is to exclude SGI for long double to integers test because there're too many problems in their compiler. Platforms tested: h5committest, modi4, fuss, Teragrid, arabica Misc. update: RELEASE.txt
* [svn-r9745] Purpose:Xuan Bai2005-01-051-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | Bug fix. Description: When building H5Z.c with Visual C++ 6.0, I got the following warning message: H5Z.c(1241) : warning C4013: 'SZ_encoder_enabled' undefined; assuming extern returning int Solution: The header file szlib.h should be included in H5Z.c in order to use SZ_encoder_enabled() function. Add the following script into H5Z.c: #ifdef H5_HAVE_SZLIB_H # include "szlib.h" #endif Platforms tested: Heping (Linux) Visual C++ 6.0 on Windows XP/2000. .NET on Windows XP. (Tested with SZIP-with-encoder and SZIP-without-encoder). Misc. update:
* [svn-r9734] Purpose:Quincey Koziol2004-12-304-119/+126
| | | | | | | | | | | | Code cleanup Description: Convert chunk iteration code to use skip lists instead of threaded, balanced binary trees. Platforms tested: FreeBSD 4.10 (sleipnir) w/parallel & szip Too minor to require h5committest
* [svn-r9730] Purpose:Quincey Koziol2004-12-304-338/+332
| | | | | | | | | | | | | Code cleanup (sorta) Description: Transition the generic property list code from using the threaded, balanced binary tree code (H5TB<foo>() routines) to use skip lists (H5SL<foo>() routines) for internal management of properties, etc. Platforms tested: FreeBSD 4.10 (sleipnir) Too minor to require h5committest
* [svn-r9727] Purpose:Quincey Koziol2004-12-29100-2310/+2158
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug Fix/Code Cleanup/Doc Cleanup/Optimization/Branch Sync :-) Description: Generally speaking, this is the "signed->unsigned" change to selections. However, in the process of merging code back, things got stickier and stickier until I ended up doing a big "sync the two branches up" operation. So... I brought back all the "infrastructure" fixes from the development branch to the release branch (which I think were actually making some improvement in performance) as well as fixed several bugs which had been fixed in one branch, but not the other. I've also tagged the repository before making this checkin with the label "before_signed_unsigned_changes". Platforms tested: FreeBSD 4.10 (sleipnir) w/parallel & fphdf5 FreeBSD 4.10 (sleipnir) w/threadsafe FreeBSD 4.10 (sleipnir) w/backward compatibility Solaris 2.7 (arabica) w/"purify options" Solaris 2.8 (sol) w/FORTRAN & C++ AIX 5.x (copper) w/parallel & FORTRAN IRIX64 6.5 (modi4) w/FORTRAN Linux 2.4 (heping) w/FORTRAN & C++ Misc. update:
* [svn-r9723] Purpose:before_signed_unsigned_changesQuincey Koziol2004-12-292-0/+63
| | | | | | | Add new file Description: Add new PC-Lint/Flexelint configuration files
* [svn-r9700] Purpose:John Mainzer2004-12-221-1/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix a bug in the cache caused by a slightly over active sanity check. Description: When the #define H5C_DO_SANITY_CHECKS is TRUE, the macro H5C__DLL_PRE_INSERT_SC is executed prior to inserting an entry in the LRU list. The macro performs a variety of sanity checks, and flags an error if any of the checks fail. Prior to this update, the macro used to check to see if the target list had length 1 and size <= 0. The new epoch marker entries used in the age out cache size reduction algorithm have size zero -- making it possible for this sanity check to fail incorrectly. Note that cache sanity checks are disabled in the CVS version of the code, so this bug and bug fix should be invisible unless you are working with the cache, and turn the sanity checks on. Solution: Removed the offending clause in H5C__DLL_PRE_INSERT_SC. Since the size used in the macro is typically a size_t and thus cannot have negative value, there was no point in changing it to "size < 0". Platforms tested: Ran a serial test on heping. Under the circumstances, I didn't feel the need for further testing. Misc. update:
* [svn-r9687] Purpose:John Mainzer2004-12-185-750/+3525
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Modify the cache code (H5C) to support automatic cache resizing to adapt to the work load at run time. Description: Different applications require different sized caches to maintain an acceptable hit rate. This set of changes attempts to provide the ability to adjust to circumstances automatically. Solution: Added highly configurable code to allow the user to either set a fixed cache size, or allow the cache to grow and shrink according to conditions. If enabled, cache size increases are triggered when the hit rate drops below a user specified threshold in a user specified interval. Cache size reductions (if enabled) are triggered when either the hit rate exceeds some user specified threshold over a user specified interval, when the cache contains "enough" entries that haven't been accessed for a user specified interval, or some mix of the above. See the header comments on the H5C_auto_size_ctl_t structure in H5Cprivate.h for further details. At present, the cache resize configuration options are not accessible via the user API. Must add this. Platforms tested: h5committested, heping (serial), and copper (parallel) Misc. update:
* [svn-r9665] Purpose:Quincey Koziol2004-12-141-0/+1
| | | | | | | | | | Fix whitespace Description: Clean up whitespace a bit Platforms tested: None, just eyeballed, very minor
* [svn-r9657] Purpose:MuQun Yang2004-12-131-2/+2
| | | | | | | | | | | | | | | | | | small bug fix Description: When checking whether the current chunk covers the irregular hyperslab, the ending point of the chunk is not updated. This will cause the wrong checking output and fail for some irregular hyperslab selection. Solution: Updating the ending point of the chunk. Platforms tested: Linux 2.4 + parallel (too small to use h5committest) Misc. update:
* [svn-r9655] Snapshot version 1.7 release 44HDF Admin2004-12-125-625/+625
|
* [svn-r9654] Purpose:Raymond Lu2004-12-103-3/+6
| | | | | | | | | | | | | Description: In file H5FDsec2.c and H5FDlog.c, there's statements like H5_ASSIGN_OVERFLOW(file->eof,sb.st_size,off_t,haddr_t); It assumes sb.st_size from h5_stat_t is of type off_t. But on Windows, it has type __int64. So the H5_ASSIGN_OVERFLOW statement may cause problem. Instead of trying to do switch between Windows and other systems in H5FDsec2.c and H5FDlog.c, define a substituting type in H5private.h to fix the problem. On Windows, this type is __int64; on other systems, it is off_t. Platforms tested: fuss. Simple fix. Already did h5committest for v1.6.
* [svn-r9648] Purpose:MuQun Yang2004-12-081-0/+3
| | | | | | | | | | | | | | | | | | | bug fix Description: The irregular hyperslab span_tree implementation inside H5S_hyper_add_span_element_helper updating the high bound of the span, but forget updating the number of element of the span. New routine obtain_derived_datatype catches the bug. Solution: Updating the number of element of the span as well. Platforms tested: Linux 2.4 and AIX 5.1, both with parallel enabled. Misc. update:
* [svn-r9617] Snapshot version 1.7 release 43HDF Admin2004-12-051-2/+2
|
* [svn-r9615] Purpose:Quincey Koziol2004-12-042-1/+67
| | | | | | | | | | | New feature Description: Add callback iteration routine to skip lists. Platforms tested: FreeBSD 4.10 (sleipnir) w/parallel Too minor to require h5committest
* [svn-r9601] Purpose:Quincey Koziol2004-11-302-17/+46
| | | | | | | | | | | New feature Description: Allow skip list keys to be strings (needed for property list support) Platforms tested: FreeBSD 4.10 (sleipnir) Too minor to require h5committest
* [svn-r9598] Purpose:Quincey Koziol2004-11-293-16/+60
| | | | | | | | | | | | | New internal feature Description: Add a "release" routine to the skip lists, which releases all the nodes in the skip list, but keeps the skip list active. Platforms tested: FreeBSD 4.10 (sleipnir) Linux 2.4 (verbena) Too minor to require h5committest
* [svn-r9596] Purpose:Quincey Koziol2004-11-294-218/+165
| | | | | | | | | | | | | Code optimization Description: Retarget metadata cache code from using TBBT routines to using new skiplist routines, for a reasonable speedup (when dealing with dirty metadata) Platforms tested: FreeBSD 4.10 (sleipnir) w/parallel Solaris 2.7 (arabica) Too minor to require h5committest
* [svn-r9592] Purpose:Quincey Koziol2004-11-291-2/+3
| | | | | | | | | | | | | | | | | Bug fix Description: Re-work array of 'forward' pointers in a way that makes the PGI compiler more happy. Solution: Change from 'H5SL_node_t *forward[1]' to 'H5SL_node_t **forward' and change how array of forward pointers is dealt with. Platforms tested: Linux 2.4 (verbena) w/PGI FreeBSD 4.10 (sleipnir) Configuration not tested w/h5committest
* [svn-r9587] Purpose:Quincey Koziol2004-11-281-8/+13
| | | | | | | | | | | | | | | | | | | | Bug fix Description: Correct off-by-on error which could cause invalid # of levels to be used for a skip list node, in rare circumstances. Change from srandom()/random() to more portable srand()/rand() routines for random # generation. Pre-compute the probability factor for computing the level of new nodes, for a minor speedup. Platforms tested: FreeBSD 4.10 (sleipnir) IRIX64 6.5 (modi4) Solaris 2.8 (sol) AIX 5.1(?) (copper)
* [svn-r9585] Purpose:Quincey Koziol2004-11-272-39/+25
| | | | | | | | | | | | | | Code optimization Description: Begin de-orbital burn of threaded, balanced binary tree code use by switching file open object code over to using them. Initial benchmarks show that skip lists are 5-10x faster than our TBBT code... Platforms tested: FreeBSD 4.10 (sleipnir) w/parallel Solaris 2.7 (arabica) Too minor to require h5committest
* [svn-r9584] Purpose:Quincey Koziol2004-11-272-5/+6
| | | | | | | | | | | | | | | Code optimization Description: Revise mechanism for calling H5open/H5check to better avoid calling them from internal libray code. Only copy a datatype's group entry information if it has some. Platforms tested: FreeBSD 4.10 (sleipnir) w/parallel Solaris 2.7 (arabica) Too minor to require h5committest
* [svn-r9580] Purpose:Quincey Koziol2004-11-279-20/+845
| | | | | | | | | | | | | | | | | | | | Add new internal data structure Description: Add an implementation of skip lists to the library (see comment in src/H5SL.c for references to the papers describing them) as a potential replacement for our current threaded, balanced binary tree container. Skip lists are much simpler to implement and should be faster to use. Also, added new error codes to release branch, so bump the minor version number to indicate that the library is no longer perfectly compatible with the 1.6.3 release. Platforms tested: FreeBSD 4.10 (sleipnir) w/parallel Solaris 2.7 (arabica) Too minor to require further testing (the skip lists aren't actually used by any library code yet)
* [svn-r9574] Purpose:MuQun Yang2004-11-242-13/+37
| | | | | | | | | | | | | | | Adding code for using MPI derived datatype to handle collective IO Description: No testing yet, won't affect the library. Solution: Platforms tested: linux 2.4 + mpich 1.2.6 Aix 5.1 + mpcc_r Misc. update:
* [svn-r9563] Purpose:Quincey Koziol2004-11-233-39/+134
| | | | | | | | | | | | | Code optimization Description: Change how default allocation time is handled internally to the library, to avoid some performance issues with property lists. Platforms tested: FreeBSD 4.10 (sleipnir) w/parallel Solaris 2.7 (arabica) Too minor to require h5committest
* [svn-r9559] Purpose:Quincey Koziol2004-11-224-26/+34
| | | | | | | | | | | | | Code optimization Description: Switch a few more malloc/free pairs over to using internal free list code, to avoid abusing system memory allocator as badly. Platforms tested: FreeBSD 4.10 (sleipnir) w/parallel Solaris 2.7 (arabica) Too minor to require h5committest
* [svn-r9556] Purpose:Quincey Koziol2004-11-2221-145/+272
| | | | | | | | | | | | | | | | | | | | | Code cleanup & optimization Description: Improve ADF/CGNS benchmark by reducing the number of internal attribute copies made during creations, opens and writes. Added new H5O_iterate() routine for iterating through messages of a certain type in the object header (attributes are the only message currently that can have multiple instances in the object header). Cross-pollinated various minor code cleanups to reduce diffs between branches. Platforms tested: FreeBSD 4.10 (sleipnir) w/parallel Solaris 2.7 (arabica) Too minor to require h5committest
* [svn-r9552] Purpose:Quincey Koziol2004-11-193-38/+76
| | | | | | | | | | | | | | | | | Code optimization Description: Avoid making as many copies of attribute information. Also, be smarter about which properties we've seen before when copying and closing property lists. Fix memory leak of attribute data structures. Platforms tested: FreeBSD 4.10 (sleipnir) w/parallel Solaris 2.7 (arabica) Too minor to require h5committest
* [svn-r9550] Purpose:Quincey Koziol2004-11-182-5/+13
| | | | | | | | | | | | | Code optimization Description: Rework & move around some of the macros for querying balanced properties of nodes to speed up tree balancing code. Platforms tested: FreeBSD 4.10 (sleipnir) w/parallel Solaris 2.7 (arabica) Too minor to require h5committest
* [svn-r9540] Purpose:Quincey Koziol2004-11-182-7/+17
| | | | | | | | | | | | | | Code optimization Description: Change threaded, balanced binary tree insertion routine to use more efficient "fast" search routine when trees with "fast compare" routines have objects inserted into them. Platforms tested: FreeBSD 4.10 (sleipnir) w/parallel Solaris 2.7 (arabica) Too minor to require h5committest
* [svn-r9539] Raymond Lu2004-11-181-10/+27
| | | | | | | | | | | | | | | | | | Purpose: Correction to previous bug fix. This checkin is mainly to let user test his program. Description: For family driver bug(#213), the previous fix was imperfect. The problem was when user create family file, the member size information wasn't saved in file. When the file was re-opened, the library simply use the size of 1st member file as member size. Solution: When file is re-opened, member size passed in from access property is checked to see if it's reasonable. If there is only 1 member file, member size can't be smaller than current member size. If there are at least 2 member files, member size can only be equal to the 1st member size. Platforms tested: h5committest and fuss
* [svn-r9537] Purpose:Quincey Koziol2004-11-176-87/+177
| | | | | | | | | | | | | | | | | | | | | | | Code cleanup & optimizations Description: Clean up some of the code in attributes to avoid allocating memory and performing type conversions when the conversion is a noop. Avoid memory allocations of attribute data structures by switching to use library's free list memory allocator routines. Avoid memory allocations of object header continuation data structures by switching to use library's free list memory allocator routines. Rearrange threaded, balanced binary tree macros slightly to avoid some overhead. Platforms tested: FreeBSD 4.10 (sleipnir) w/parallel Solaris 2.7 (arabica) Too minor to require h5committest
* [svn-r9535] Purpose:Quincey Koziol2004-11-171-1/+0
| | | | | | | Correct typo in comment. Platforms tested: Not tested - too minor
* [svn-r9531] Purpose: Bug fix(#213)Raymond Lu2004-11-162-9/+17
| | | | | | | | | | | | | Description: H5Pset_fapl_family sets family member size only for creating new file. The file doesn't keep this size information. When the file is re-opened, the size of first member file is used as the member size. Solution: Assume user knows the original member size and sets it through H5Pset_fapl_family. That will be the member size. User can pass in value 0 as member size if he doesn't know the original member size. Library will choose the size of current first member size as the member file size. Platforms tested: h5committest and fuss.
* [svn-r9529] Purpose:MuQun Yang2004-11-153-33/+99
| | | | | | | | | | | | | | | | | | | Check in some new fixes for MPI derived datatype routines Description: MPI derived datatype algorithm seems working for a simple case; however, there are still other problems need to be solved. So the code cannot be used for the time being. Check-in only for debugging. It won't affect other part of the library. Solution: Platforms tested: Linux 2.4 (heping, serial and parallel) (Since no new tests were added and changes are mostly restricted to one fuction, no need to test three platforms). Misc. update:
* [svn-r9527] Snapshot version 1.7 release 42HDF Admin2004-11-141-2/+2
|
* [svn-r9526] Purpose:Quincey Koziol2004-11-121-3/+1
| | | | | | | | | | | | | | Bug fix, sorta. Description: Revert change to H5Pget_data_transform() which changed len of buffer returned to be inconsistent with H5Iget_name(), etc. We should discuss this change and apply it to all the similar functions if we decide to change the return value. Platforms tested: FreeBSD 4.10 (sleipnir) Too minor to require h5committest
* [svn-r9524] Purpose:Leon Arber2004-11-122-5/+17
| | | | | | | | | | | | | | | | | | | Bug Fix Description: Fixed off by one error in H5Pget_data_transform Solution: H5Pget_data_transform, when queried for the size of the property, should return strlen() + 1 so that the user can allocate memory for the terminating \0 in the string. Also fixed a typo in a comment in H5Ztrans.c Platforms tested: eirene, too minor to require further testing. Misc. update:
* [svn-r9519] Purpose:MuQun Yang2004-11-115-0/+515
| | | | | | | | | | | | | | | | | | | | Adding codes for the general MPI derived datatype in order to better incorporate new fixes of HDF5 library. Description: Note: These codes have not been tested for general use. Don't call these functions in your developments of the HDF5 library. Also these codes are stand-alone codes, they should not affect other library codes. Solution: Platforms tested: Heping(C and Parallel linux 2.4, mpich 1.2.6) Arabica(C,C++,Fortran, Solaris 2.7) Copper(C,c++,Fortran, AIX 5.1, NOTE: c++ FAILED, seems not due to the recent check-in) Misc. update:
* [svn-r9516] Purpose:Quincey Koziol2004-11-101-2/+5
| | | | | | | | | | | | | | Bug fix Description: Fix code to allow --debug-enable=all option to work correctly. Solution: Update some ifdef'ed code with recent changes. Platforms tested: Linux 2.4 (heping) w/--enable-debug=all Too minor to require h5committest
* [svn-r9513] Snapshot version 1.7 release 41HDF Admin2004-11-071-2/+2
|
* [svn-r9495] Purpose:Robert E. McGrath2004-11-023-8/+4
| | | | | | | | | | | | Fix SZIP filter to dynmically detect encoder. Description: Solution: See: http://hdf.ncsa.uiuc.edu/RFC/SZIP/Szip_dynamic_12_Oct.pdf Changes to h5dump tests, contingent on detecting SZIP encoder.
* [svn-r9474] Purpose:MuQun Yang2004-10-272-3/+23
| | | | | | | | | | | | | | | | | Updating H5api_adpt.h to help the implementation of Fortran DLL on windows. Description: 1. More functions need to be added prefix macro for exporting and importing fortran DLL on Windows. 2. unlink was _unlink on windows and use HDunlink to specify this. Solution: Platforms tested: linux 2.4(h5committest not finished yet, but should work since the change is minor and it is passed with pgi compiler) Misc. update:
* [svn-r9469] Purpose:Quincey Koziol2004-10-277-26/+15
| | | | | | | | | | | | | Code cleanup Description: Clear up some inconsistencies, inefficiencies and possible errors between the release and development branch. Platforms tested: FreeBSD 4.10 (sleipnir) w/parallel Solaris 2.7 (arabica) Linux 2.4 (heping) w/C++ & FORTRAN
* [svn-r9466] Purpose:Quincey Koziol2004-10-272-9/+4
| | | | | | | | | | | Bug fix Description: Clean up potential buffer overflow in strncpy() Platforms tested: FreeBSD 4.10 (sleipnir) Too minor to require h5committest