summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* [svn-r5894] Purpose:Quincey Koziol2002-08-2720-410/+857
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug fix/Code cleanup/New Feature Description: Correct problems with writing fill-values to external storage and allocate the data storage at the correct times. Also, mostly straighten out the strange code which allocates and fills raw data storage for datasets. Things are still a bit odd in that the fill-values for chunked datasets are written when the space is allocated, instead of in a separate routine, but there are two reasons for this: it's inefficient (especially in parallel) to iterate through all the chunks twice, and (more importantly) the space needed to store compressed chunks isn't known until we've got a buffer of compressed fill-values ready to write to the chunk. Additionally, add in the H5D_SPACE_ALLOC_INCR and H5D_SPACE_ALLOC_DEFAULT setting for the "space time", which incorporate the previous behavior of the space allocation for chunked datasets. The default settings for the different types of dataset storage are now as follows: Contiguous - Late Chunked - Incremental Compact - Early This checkin also incorporates a change to the behavior of external data storage in two ways - fill-values are _never_ written to external storage (under the assumption that writing fill-values is triggered by allocating space in an HDF5 file, and since space is not allocated in the file, the fill-values should not be written) and external data files are now created if they don't exist when data is written to them. The fill-value will probably need to be revisited at some time in the future, this just seemed like the safer course currently. I think I cleaned up some compiler errors also, before getting bogged down in the fixes for the space allocation and fill-values. Platforms tested: FreeBSD 4.6 (sleipnir) w/serial & parallel. Will be testing on IRIX64 6.5 (modi4) in serial & parallel shortly.
* [svn-r5893] Raymond Lu2002-08-261-0/+9
| | | | | | | | | | Purpose: bug fix Description: The H5Dget_storage_size test doesn't handle the situation when no compression is configured. Platforms tested: IRIX 6.5
* [svn-r5890] Purpose:Bill Wendling2002-08-231-2/+2
| | | | | | | | | | Bug Fix Description: Some more naming mistakes. Solution: Stopped calling it ds_start and calling the structure its real name. Platforms tested: NERSC
* [svn-r5889] Purpose:Bill Wendling2002-08-231-9/+9
| | | | | | | | Bug Fix Description: Structure elements in the GPFS code weren't named correctly. Solution: Changed the names to the correct values.
* [svn-r5888] MuQun Yang2002-08-231-0/+0
| | | | | | | | | | Purpose: Update windows including zlib macro updating, new source adding and some source code tuning. Description: Need to update fortran case later. Solution: Platforms tested: windows 2000
* [svn-r5887] Purpose:Quincey Koziol2002-08-231-3/+10
| | | | | | | | | | | Regression test for bug fix Description: Adjust selection so chunked data needs to be read from pre-allocated chunks w/filters, to verify that filter is applied correctly. Platforms tested: FreeBSD 4.6 (sleipnir) w/parallel
* [svn-r5886] Purpose:Quincey Koziol2002-08-232-0/+28
| | | | | | | | | | | | | | Bug fix Description: Correctly apply filters (like compression) to fill values in chunks that are pre-allocated. This is OK in parallel also, since all the chunks are identical at this point and any chunk may be written by any process. Platforms tested: FreeBSD 4.6 (sleipnir) w/parallel
* [svn-r5884] Purpose:Quincey Koziol2002-08-211-48/+53
| | | | | | | | | | | | Bug fix/Code cleanup Description: Clean up memory leak in fill value code Also rearrange logic of code a bit Platforms tested: FreeBSD 4.6 (sleipnir)
* [svn-r5883] Raymond Lu2002-08-202-60/+60
| | | | | | | | | | Purpose: Rename variables. Description: In this file, dataset address offset is misnamed as file offset. Changed them back to dset_offset_XXX or dset_offset. Platforms tested: eirene
* [svn-r5882] Raymond Lu2002-08-201-74/+72
| | | | | | | | | | Purpose: Bug fix. Description: In H5D_init_storage, contiguous dataset is not initialized properly when fill value is library default. Platforms tested: eirene
* [svn-r5881] Purpose:Albert Cheng2002-08-201-1/+3
| | | | | | | | | | | | | | | bug fix Description: Last change of FUNC_ENTER to FUNC_ENTER_NOAPI did not include definition of variable ret_value and label done. Solution: Added the missing ret_value and label done. Not sure if the logic is correct since the function will abort if some assert fails. This fix only takes care of the syntax error. Platforms tested: eirene(pp). Did not test on other machine since the syntax fix is pretty simple.
* [svn-r5880] Raymond Lu2002-08-201-0/+5
| | | | | Purpose: add information of compact dataset.
* [svn-r5879] Raymond Lu2002-08-2021-299/+1128
| | | | | | | | | Purpose: Design for compact dataset Description: Compact dataset is stored in the header message for dataset layout. Platforms tested: arabica, eirene.
* [svn-r5878] Purpose:Albert Cheng2002-08-192-41/+73
| | | | | | | | | | | | fix/feature Description: v1.4's configure had enable-trace default as on. That is not right for production code as it increase the object code and uses up compute time. Changed --enable-trace default to depend on --enable-debug. If debug is on, trace is on. Otherwise it is off. Also added the printing of CFLAGS, CPPFLAGS, and LDFLAGS in the summary. Platforms tested: eirene, arabica (pp).
* [svn-r5876] Change the wording of the message from "current directory" toAlbert Cheng2002-08-171-2/+2
| | | | | | "current setting". latforms tested: Modi4
* [svn-r5875] Purpose:Quincey Koziol2002-08-146-69/+442
| | | | | | | | | | | | | | Additional regression tests & bug fixes Description: There was no testing for the H5Dget_storage_size function and it seemed to be having problems with compressed, chunked datasets, so write some tests to verify that its working correctly. Also, fix case for allocating storage early for chunked datasets Platforms tested: FreeBSD 4.6 (sleipnir) serial & parallel
* [svn-r5872] Purpose:Quincey Koziol2002-08-127-3679/+3826
| | | | | | | | | | | | Code cleanup Description: Move get/set routines for each type of property list (file creation, dataset creation, file access and dataset transfer) into their own source code module. Platforms tested: FreeBSD 4.6 (sleipnir)
* [svn-r5871] Purpose:Quincey Koziol2002-08-1222-371/+183
| | | | | | | | | | | | | | | | Code cleanup Description: Combined H5P_isa_class and H5I_object functionality into a new internal H5P API function: H5P_object_verify, which checks that a property list is the appropriate class and then returns the property list object associated with the property list ID. This reduces the source code by about 200 LOC and trims the library binary some more. Platforms tested: FreeBSD 4.6 (sleipnir)
* [svn-r5869] Snapshot version 1.5 release 33HDF Admin2002-08-1010-35/+55
|
* [svn-r5868] Purpose:Quincey Koziol2002-08-092-9/+9
| | | | | | | | | | Code cleanup Description: Cleanup up a few compiler warnings... Platforms tested: IRIX64 6.5 (modi4) w/parallel
* [svn-r5867] Purpose:Quincey Koziol2002-08-0951-294/+1042
| | | | | | | | | | | | | Code cleanup Description: Changed the last HRETURN* statements in the FUNC_ENTER macros into HGOTO* macros, which reduces the size of the library binary in certain configurations by another 10% Platforms tested: FreeBSD 4.6 (sleipnir) serial & parallel, IRIX64 6.5 (modi4) serial & parallel
* [svn-r5866] Purpose:Quincey Koziol2002-08-096-13/+19
| | | | | | | | | | Code cleanup Description: Cleaned up a few warnings from compiling with --disable-hsizet on Linux Platforms tested: Linux 2.2.x (eirene)
* [svn-r5865] Purpose:Quincey Koziol2002-08-092-4/+4
| | | | | | | | | | | | | | Bug fix Description: hsize_t comparisons for selection boundaries (in H5Sget_select_bounds) were failing on Linux with --disable-hsizet. Solution: Changed comparisons to use use unsigned values instead of signed ones. Platforms tested: Linux 2.2.x (eirene)
* [svn-r5864] ./hdf5-devel/src/H5private.hRobb Matzke2002-08-091-37/+33
| | | | | | | | | | | | | | | | | 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-r5863] ./hdf5-devel/src/H5T.cRobb Matzke2002-08-091-1/+1
| | | | | | | | | | | | | | | | | 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-r5862] ./hdf5-devel/src/H5O.cRobb Matzke2002-08-091-3/+3
| | | | | | | | | | | | | | | | | 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-r5861] ./hdf5-devel/src/H5FDmpiposix.cRobb Matzke2002-08-091-0/+35
| | | | | | | | | | | | | | | | | 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-r5860] ./hdf5-devel/src/H5.cRobb Matzke2002-08-091-14/+89
| | | | | | | | | | | | | | | | | 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-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-r5844] Purpose:Bill Wendling2002-08-082-0/+2
| | | | | | | | Small Coding Change Description: Zeroed out the MPI_Status structure in one of our tests to determine if MPI_Get_count() works on the machine or not. This is similar to what we do in the library code to the status...
* [svn-r5843] Purpose:Quincey Koziol2002-08-0810-28/+28
| | | | | | | | | | | Code cleanup Description: Clean up a few warnings which were showing up with --enable-production turned on. Platforms tested: FreeBSD 4.6 (sleipnir) serial & parallel
* [svn-r5842] Purpose:Quincey Koziol2002-08-0864-8376/+7713
| | | | | | | | | | | | | | | | Code cleanup Description: Change most (all?) HRETURN_ERROR macros to HGOTO_ERROR macros, along with HRETURN macros to HGOTO_DONE macros. This unifies the error return path from functions and reduces the size of the library by up to 10% on some platforms. Additionally, I improved a lot of the error cleanup code in many routines. Platforms tested: FreeBSD 4.6 (sleipnir) serial & parallel and IRIX64 6.5 (modi4) serial & parallel.
* [svn-r5841] Snapshot version 1.5 release 32HDF Admin2002-08-0311-49/+59
|
* [svn-r5840] Purpose:Quincey Koziol2002-07-3120-790/+556
| | | | | | | | | | | | | | Code cleanup Description: Created a new H5I function which combined the some of the functionality of H5I_get_type and H5I_object: H5I_object_verify. Using this new function in the library trims another ~200 lines of code off the library and makes the resulting binaries smaller and faster also. Platforms tested: FreeBSD 4.6 (sleipnir)
* [svn-r5839] Purpose:Quincey Koziol2002-07-3116-1962/+1829
| | | | | | | | | | | | | | | Code cleanup Description: Move operations on each type of selection into the source code file for each selection type (all->H5Sall.c, hyperslab->H5Shyper.c, etc.) Remove central H5S_select_<foo> operations, instead calling the operations through function pointers in each selection (a much more object-oriented approach). Platforms tested: FreeBSD 4.6 (sleipnir)
* [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-r5837] MuQun Yang2002-07-251-0/+0
| | | | | | | | | | | | | | | Purpose: move zlib out of hdf5/src from development branch update H5pubconf.h Description: The decision has been made to move zlib out of hdf5 source distribution, make it real in development branch. In dev. branch, H5_HAVE_COMPRESSION replaces H5_HAVE_COMPRESS2, H5_HAVE_ZLIB_H and H5_HAVE_LIBZ etc. Make windows consistent. Solution: Platforms tested: windows 2000
* [svn-r5836] MuQun Yang2002-07-241-0/+0
| | | | | | | | | | | | | Purpose: move zlib out of hdf5/src from development branch update H5pubconf.h Description: The decision has been made to move zlib out of hdf5 source distribution, make it real in development branch. In dev. branch, H5_HAVE_COMPRESSION replaces H5_HAVE_COMPRESS2, H5_HAVE_ZLIB_H and H5_HAVE_LIBZ etc. Make windows consistent. Solution: Platforms tested: windows 2000
* [svn-r5835] Purpose:Quincey Koziol2002-07-241-1/+1
| | | | | | | | | | Bug fix. Description: Correct erroneous assertion. Platforms tested: IRIX64 6.5 (modi4) w/parallel
* [svn-r5834] Purpose:Quincey Koziol2002-07-249-6141/+2735
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Large code cleanup/re-write Description: This is phase 1 of the data I/O re-architecture, with the following changes: - Changed the selection drivers to not actually do any I/O, they only generate the sequences of offset/length pairs needed for the I/O (or memory access, in the case of iterating or filling a selection in a memory buffer) - Wrote more abstract I/O routines which get the sequence of offset/ length pairs for each selection and access perform the I/O or memory access. Benefits of this change include: - Removed ~3400 lines of quite redundant code, with corresponding reduction in the size of library binary. - Any selection can now directly access memory when performing I/O, if no type conversions are required, instead of just "regular" hyperslab and 'all' selections, which speeds up I/O. - Sped up I/O for hyperslab selections which have contiguous lower dimensions by "flattening" them out into lesser dimensional objects for the I/O. No file format or API changes were necessary for this change. The next phase will be to create a "selection driver" for each type of selection, allowing each type of selection to directly call certain methods that only apply to that type of selection, instead of passing through dozens of functions which have switch statements to call the appropriate method for each selection type. This will also reduce the amount of code in the library and speed things up a bit more. Phase 3 will involve generating an MPI datatype for all types of selections, instead of only "regular" hyperslab and 'all' selections. This will allow collective parallel I/O for all I/O operations which don't require type conversions. It will also open up the door for allowing collective I/O on datasets which require type conversion. Phase 4 will involve changing the access pattern to deal with chunked datasets in a more optimal way (in serial). Phase 5 will deal with accessing chunked datasets more optimally for collective parallel I/O operations. Platforms tested: FreeBSD 4.6 (sleipnir) w/ parallel & C++ and IRIX64 6.5 (modi4) w/parallel
* [svn-r5833] Purpose:Quincey Koziol2002-07-241-1/+1
| | | | | | | | | | Code cleanup Description: Add a bit more debugging information to one failure mode. Platforms tested: FreeBSD 4.6 (sleipnir)
* [svn-r5832] Purpose:Quincey Koziol2002-07-241-7/+7
| | | | | | | | | | Code cleanup Description: Re-alphabetized header includes. Platforms tested: FreeBSD 4.6 (sleipnir) w/parallel & C++
* [svn-r5829] MuQun Yang2002-07-231-1/+1
| | | | | | | | | | Purpose: correct a typo in the H5FD_sec2_flush. Description: fd is not defined. It should be file->fd Solution: Platforms tested: windows 2000, linux 2.2.18smp
* [svn-r5828] Purpose:Quincey Koziol2002-07-233-7/+16
| | | | | | | | | | Code cleanup Description: Make the sieve buffer managed by the free-list code. Platforms tested: FreeBSD 4.6 (sleipnir)
* [svn-r5826] Purpose:Quincey Koziol2002-07-231-14/+19
| | | | | | | | | | | | | | Bug Fix Description: Dynamically allocated H5S_t structure was not being freed under certain error conditions. Solution: Free it. Platforms tested: FreeBSD 4.6 (sleipnir)
* [svn-r5819] Purpose:Quincey Koziol2002-07-211-6/+2
| | | | | | | | | | | | | | Bug Fix Description: non-parallel case for new metadata cache flushing property wasn't set up correctly. Solution: Initialize variables correctly. Platforms tested: FreeBSD 4.6 (sleipnir)
* [svn-r5815] Purpose:Quincey Koziol2002-07-191-2/+2
| | | | | | | | | | | | | | | | | Bug fix Description: t_mpi test program was not being run with the RUNPARALLEL command Solution: Put the t_mpi program into the TEST_PROGS_PARA macro instead of the TEST_PROGS macro Hopefully this'll fix the daily test problems on arabica, but I can't test it because I can't get mpirun to work correctly for me. Platforms tested: IRIX64 6.5 (modi4) w/parallel
* [svn-r5814] Purpose:Quincey Koziol2002-07-1912-112/+310
| | | | | | | | | | | | | | | | | | 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-r5812] Raymond Lu2002-07-173-21/+234
| | | | | | | | | Purpose: Bug fix. Description: This should fix the nested VL datatype bug. Platforms tested: modi4, eirene, impact
* [svn-r5810] Purpose:Bill Wendling2002-07-172-2/+2
| | | | | | | | | | | Fix Description: Better check for versions of Linux. We didn't support kernels with major version numbers >2 and minor version numbers <4... Solution: Fixed to check just that. Platforms tested: Linux 2.2 && 2.4