summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* [svn-r2652] Purpose:Quincey Koziol2000-10-1059-717/+2023
| | | | | | | | | | | | | | | Maintainance & performance enhancements Description: Re-arranged header files to protect private symbols better. Changed optimized regular hyperslab I/O to compute the offsets more efficiently from previous method of using matrix operations. Added sequential I/O operations at a more abstract level (at the same level as H5F_arr_read/write), to support the optimized hyperslab I/O. Platforms tested: Solaris 2.6 (baldric) & FreeBSD 4.1.1 (hawkwind)
* [svn-r2651] Purpose:Quincey Koziol2000-10-101-0/+4
| | | | | | | | | Maintainance Description: Updated for the new files I'm adding as well as the tools/talign.c file missing from last night's tests. Platforms tested: Solaris 2.6 (baldric) & FreeBSD 4.1.1 (hawkwind)
* [svn-r2650] Purpose:Albert Cheng2000-10-101-2/+2
| | | | | | | | | | | | Bug fix Description: The predefined HDF5_PARAPREFIX has a trailing slash. The parallel testfile names end up with two adjacent slashes that made some system unhappy. Solution: Removed the trailing slash. Platforms tested: Arabica (solaris 2.7).
* [svn-r2649] Elena Pourmal2000-10-101-6/+11
| | | | | | | Purpose: Rewrote test to use new APIs to read and write references. Platforms tested: J90 and Solaris 2.6
* [svn-r2648] Elena Pourmal2000-10-107-103/+408
| | | | | | | | | | | | | | | | | | | | | | Purpose: Reimplemented references to the objects and dataset regions. Description: Previous implementation was not portable. This implementation should work on UNIX workstations and Crays, but is very inefficient since it uses memcpy to repack Fortran buffers with references to C buffers and vice versa. Solution: I used fortran derived datatype with integer fields. h5dwrite_f and h5dread_f have extra parameter when references are written or read. This parameter describes size of the buffer that holds references. Platforms tested: J90 and Solaris 2.6 H5Pf.c Some of the functions do not exist now in the development branch. Commented those out, so one does not need to apply patch in order to build Fortran Library.
* [svn-r2647] Purpose:Albert Cheng2000-10-101-15/+19
| | | | | | | | | | | | | | Bug fiX Description: H5S_hyper_select_valid would report hyperslab invalid if the one of the count values is zero. The verifying algorithm did not take into consideration that block or count can contain zeros to indicate no element is wanted. Solution: Added code to test if block or count is zero. If so, skip the rest of the validity check. Platforms tested: IRIX64 -64.
* [svn-r2646] Purpose:Albert Cheng2000-10-102-6/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug fix (done by Kim Yates) Description: The optimized mpio code was broken and when read was done, it hanged. Solution: H5FDmpio.c: In H5FD_mpio_write, moved the 16-line block of code in which all procs other than p0 skip the actual write to be just before the call to MPI_File_write_at. Previously, the values of the local vars that controlled "allsame" were not always set correctly when the moved block was reached. H5S.c: Changed default value of H5_mpi_opt_types_g to TRUE, so that the MPI-IO hyperslab code is executed by default in parallel HDF5, rather than executing the serial hyperslab code. H5Smpio.c: In function H5S_mpio_hyper_type, added a call to free an intermediate type. Cures a small memory leak. Added code for cases of empty hyperslab Changed displacements to be MPI_Aint Platforms tested: modi4 -64: worked fine with mpich 1.2.0 but failed with the messages saying it ran out of entries for MPI_Types during the collective_read test. After tracing the code all the way to the collective read, all MPI Types have been freed properly. It aborted with the above message when it executed the line if (MPI_SUCCESS!= MPI_File_read_at_all(file->f, mpi_off, buf, size_i, buf_type, &mpi_stat )) Could not see any problem with this line. It could be a bug in the SGI version of MPI.
* [svn-r2645] Albert Cheng2000-10-101-17/+25
| | | | | | | | | | | | | | | | Purpose: [is this a bug fix? feature? ...] Description: [describe the bug, or describe the new feature, etc] Solution: [details about the changes, algorithm, etc...] [Please as detail as you can since your own explanation is better than others guessing it from the code.] Platforms tested: [machines you have tested the changed version. This is absolute important. Test it out on at least two or three different platforms such as Big-endian-32bit (SUN/IRIX), little-endian-32(LINUX) and 64-bit (IRIX64/UNICOS/DEC-ALPHA) would be good.]
* [svn-r2644] Purpose:Bill Wendling2000-10-091-3/+3
| | | | | | | | | | Bug fix Description: ; missing from end of some > macros. Solution: Added Platforms tested: Mosaic^WNetscape
* [svn-r2643] Purpose:Bill Wendling2000-10-092-7/+173
| | | | | | | | | | | | Adding Testing Description: Alignment when putting elements in a compound datatype can be off. Solution: This was a bug which I'd fixed. Here's a program to exercise the bug. Platforms tested: Linux
* [svn-r2642] Purpose:Bill Wendling2000-10-091-0/+19
| | | | | | | | | | | | Bug fix Description: The documentation on how to dump attribute data was not complete enough. Some people got confused on the commandline syntax (you have to specify the "path" from the root group to the attribute to dump it). I put some examples in to show how to correctly dump attributes. Platforms tested: Viewed with Netscrape.
* [svn-r2641] Purpose:Albert Cheng2000-10-094-23/+143
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Added features Description: There were no automatic tests for transfering zero elements. Solution: t_dset.c: Added two new patterns of ZROW (zero rows for process 0) and ZCOL(zero columns for process 0). ZROW test was added but it failed because the current library does not accept it. Not compiled in now. Need to fix the library before turning it back on again and also to add the ZCOL test. t_mdset.c: Added statement to show progress. Also the MPI_Barrier() call get processes synchornoized. It eliminates the racing condition but this is not a permenant solution. The library code needs to be fixed. testphdf5.c: Added a bunch of MPI_Type_XXX debug code. Added the -md option to skip the multiple datasets tests. Changed the cosmitic appearance of the banner messages. testphdf5.h: When an error is detected, the old way was to call MPI_Finalize() before exiting. This sometimes hangs because some processes may be waiting for a message of a different tag. Changed to call MPI_Abort() for now so that the whole MPI job would abort rather than hanging due resource limits exceeded. Added the definition of ZROW and ZCOL. Platforms tested: Modi4 -64.
* [svn-r2639] Purpose:Albert Cheng2000-10-091-0/+2
| | | | | | | | | Update Description: Added the description of the environment variable HDF5_MPI_OPT_TYPES which controls the use of optimized MPIO routines. Platforms tested: Viewed via IE.
* [svn-r2638] Snapshot version 1.3 release 31HDF Admin2000-10-072-2/+2
|
* [svn-r2637] Purpose:Bill Wendling2000-10-061-803/+756
| | | | Format changes
* [svn-r2636] Purpose:Quincey Koziol2000-10-051-1/+1
| | | | | | | | | | Bug Fix Description: Test was not detecting hdp tool from HDF 4.1r4 correctly. Solution: Modified test to detect HDF4.1r[3-9] correctly. Platforms tested: FreeBSD 4.1.1 (hawkwind)
* [svn-r2635] Purpose:Quincey Koziol2000-10-051-5/+11
| | | | | | | | | | | Portability fix Description: Non-portable GNU-specific features were used. Solution: Replaced GNU-specific features with more portable (but more difficult to maintain) forms of the features. Platforms tested: FresBSD 4.1.1 (hawkwind)
* [svn-r2634] Purpose:Bill Wendling2000-10-051-22/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug fix Description: In the h5dump_fixtype function, when users created a COMPOUND datatype, the alignment would be off somewhat. Solution: The alignment was being set after insertion. I changed this code: for (i = 0, offset = 0; i < nmembs; i++) { H5Tinsert_array(m_type, name[i], offset, ndims[i], dims + i * 4, NULL, memb[i]); for (j = 0, nelmts = 1; j < ndims[i]; j++) nelmts *= dims[i * 4 + j]; offset = ALIGN(offset, H5Tget_size(memb[i])) + nelmts * H5Tget_size(memb[i]); } to: for (i = 0, offset = 0; i < nmembs; i++) { if (offset) offset = ALIGN(offset, H5Tget_size(memb[i])); H5Tinsert_array(m_type, name[i], offset, ndims[i], dims + i * 4, NULL, memb[i]); for (j = 0, nelmts = 1; j < ndims[i]; j++) nelmts *= dims[i * 4 + j]; offset += nelmts * H5Tget_size(memb[i]); } The alignment is now calculated before the insertion. Platforms tested: Solaris, Linux
* [svn-r2633] Purpose:Quincey Koziol2000-10-042-20/+20
| | | | | | | | | | | | Bug Fix Description: Use H5FD_get_eoa instead of H5FD_get_eof to check for reading off the end of the allocated file space. Using H5FD_get_eof was causing the Stream VFD to fail. Solution: Switched from using H5FD_get_eof to H5FD_get_eoa Platforms tested: FreeBSD 4.1.1 (hawkwind)
* [svn-r2632] Purpose:Bill Wendling2000-10-042-37/+48
| | | | | | | | | | | | | | Bug Description: The testh5toh4 was removing all .h5 files from the testfiles directory, however, with the addition of testh4toh5, we need some .h5 files in there. Solution: Changed the scripts so that an output directory is created for all of the processed files. This is removed after the test is finished. Platforms tested: Linux
* [svn-r2631] Thomas Radke2000-10-041-8/+9
| | | | | | | | | | | | Purpose: Bugfix Description: The Stream VFD was leaking memory on every opened file. Solution: In H5FD_stream_close(), finally free the file structure used to describe the closed file. Platforms tested: Linux, SGI
* [svn-r2630] Purpose:Bill Wendling2000-10-032-759/+627
| | | | | | | | | | | | | | | | Bug Fix Description: zlib was not being retrieved from the place specified by the user even if the user used the --with-zlib flag. Solution: Removed the automatic inclusion of /usr/ncsa/* into the macros and use the user-defined place to try to pickup the zlib. I'm relying on the order of the -L flags in the compile line to specify which libraries to look into first before going on to look into the system libraries. If some compiler doesn't honor the this order, yikes... Platforms tested: Linux
* [svn-r2629] Purpose:Bill Wendling2000-10-031-0/+2
| | | | | | | | Added site-specific/ subdirectory in config/ directory Description: If a machine needs site-specific configure options but those options don't necessarily apply to all machines of that type, place them there.
* [svn-r2628] Purpose:Bill Wendling2000-10-031-0/+33
| | | | | | | | | | | | | | | Site specific configure files Description: Some machines need to specify things during the configure but they aren't necessary for all machines of that type. Those site-specific changes should go here. The format of the filename is: host-$hostname where $hostname is the output from the `hostname' command. Needless to say, this is optional to those sites which don't need it.
* [svn-r2627] Purpose:Albert Cheng2000-10-021-1/+1
| | | | | | | | | | | | Bug fix Description: Attempted to close rawdatastream even if it has not been used to open a new file. Many systems tolerated the NULL value but not FreeBSD. Solution: Check for the NULL value too. Platforms tested: hawkwind (freeBSD) and modi4 parallel.
* [svn-r2626] Purpose:Albert Cheng2000-09-303-2/+57
| | | | | | | | | | | | | | | | | | | | New Feature Description: Add -o option to h5dumper. It displays the raw data of datasets to a separate output file. Add a feature to h5tools library that it uses the FILE *rawdatastream as the stream for the display of datasets raw data. Solution: Define an "extern FILE *rawdatastream" in h5tools.h and declare it in h5tools.c. This way, it would work even if an application does not explicitely declare it. Tried to initialized it to stdout as FILE *rawdatastream = stdout; but Linux gcc rejected it though all other platforms+compilers accepted it fine. For now, put in a kludge to set it right before it is used. Need a safer way to initialize it. Platforms tested: arabica, eirene, modi4 -64.
* [svn-r2625] Purpose:Albert Cheng2000-09-301-1/+14
| | | | | | | | | | | | | | | | | | | | Bug fix and feature Description: It could not find a working h5dump to process the hdf5 files. This could be because h5dump is not installed in $PATH or a disfunctional one is found. (E.g. arabica:/usr/sdt/bin/h5dump does not work.) Setting it to ./h5dump or $PWD/h5dump does not work because when h5dump is used, it has "cd testfiles", a different place. Solution: Set H5DUMP with the current absolute path (used `pwd` instead of $PWD which is sometimes not set for whatever reason.) Also add a feature to allow H5DUMP to be set to a different value by hand. For example, if the h5dump just built is not working correctly, one can do "H5DUMP=/usr/local/bin/h5dump make check" to bypass the broken h5dump. Platforms tested: arabica
* [svn-r2623] Purpose:Albert Cheng2000-09-302-726/+730
| | | | | | | | | | Reformat the source Description: The tabstop seems to defined different from 8-stops. The source files looked very confusing. Just reformate the files. Not change to source code at all. Platforms tested: modi4 -64.
* [svn-r2622] MuQun Yang2000-09-291-0/+13
| | | | | | | | | | Purpose: add h4toh5 converter into MANIFEST Description: add h4toh5 converter source codes, test files into MANIFEST Solution: Platforms tested: arabica,baldric,eirene
* [svn-r2621] Frank Baker2000-09-291-1/+1
| | | | | | | | | | | | Purpose: Bug fix -- #445 Description: In RM_H5D.html in the H5 Reference Manual, the H5Dget_storage_size entry described the wrong FAILURE return value. Solution: Changed H5Dget_storage_size return value on FAILURE to 0 (zero). Platforms tested: Tested in Internet Explorer 5.
* [svn-r2619] MuQun Yang2000-09-291-1/+1
| | | | | | | | | | Purpose: update testh4toh5 Description: change h5dump path at testh4toh5 Solution: Platforms tested: arabica, baldric, eirene
* [svn-r2616] MuQun Yang2000-09-281-0/+0
| | | | | | | | | | | | | | | | Purpose: add h4toh5 converter source codes under tools directory. Description: this is the expected hdf5 result for h4toh5 converter. Solution: [details about the changes, algorithm, etc...] [Please as detail as you can since your own explanation is better than others guessing it from the code.] Platforms tested: [machines you have tested the changed version. This is absolute important. Test it out on at least two or three different platforms such as Big-endian-32bit (SUN/IRIX), little-endian-32(LINUX) and 64-bit (IRIX64/UNICOS/DEC-ALPHA) would be good.]
* [svn-r2615] MuQun Yang2000-09-281-0/+0
| | | | | | | | | | | | | | | | Purpose: add h4toh5 converter source codes under tools directory. Description: this is the test file for h4toh5 converter. Solution: [details about the changes, algorithm, etc...] [Please as detail as you can since your own explanation is better than others guessing it from the code.] Platforms tested: [machines you have tested the changed version. This is absolute important. Test it out on at least two or three different platforms such as Big-endian-32bit (SUN/IRIX), little-endian-32(LINUX) and 64-bit (IRIX64/UNICOS/DEC-ALPHA) would be good.]
* [svn-r2614] MuQun Yang2000-09-2811-0/+7575
| | | | | | | | | | | | | | | | Purpose: add h4toh5 converter source codes under tools directory. Description: [describe the bug, or describe the new feature, etc] Solution: [details about the changes, algorithm, etc...] [Please as detail as you can since your own explanation is better than others guessing it from the code.] Platforms tested: [machines you have tested the changed version. This is absolute important. Test it out on at least two or three different platforms such as Big-endian-32bit (SUN/IRIX), little-endian-32(LINUX) and 64-bit (IRIX64/UNICOS/DEC-ALPHA) would be good.]
* [svn-r2613] MuQun Yang2000-09-281-5/+15
| | | | | | | | | | | | | | | | | Purpose: add h4toh5 converter tool Description: add flag h4toh5 and testh4toh5 in the Makefile. Solution: [details about the changes, algorithm, etc...] [Please as detail as you can since your own explanation is better than others guessing it from the code.] Platforms tested: test on eirene and arabica. [machines you have tested the changed version. This is absolute important. Test it out on at least two or three different platforms such as Big-endian-32bit (SUN/IRIX), little-endian-32(LINUX) and 64-bit (IRIX64/UNICOS/DEC-ALPHA) would be good.]
* [svn-r2612] MuQun Yang2000-09-282-378/+386
| | | | | | | | | | | | | | | | | Purpose: h4toh5 converter tool under tools Description: put flag h4toh5 and testh4toh5 into the configure file. Solution: [details about the changes, algorithm, etc...] [Please as detail as you can since your own explanation is better than others guessing it from the code.] Platforms tested: at eirene and arabica. [machines you have tested the changed version. This is absolute important. Test it out on at least two or three different platforms such as Big-endian-32bit (SUN/IRIX), little-endian-32(LINUX) and 64-bit (IRIX64/UNICOS/DEC-ALPHA) would be good.]
* [svn-r2611] Purpose:Quincey Koziol2000-09-287-254/+700
| | | | | | | | | | | | | Rearrange code Description: The data sieve buffering code for contiguously stored datasets was wedged in the H5F_arr_read/H5F_arr_write routines. Solution: Created a new H5Fcontig.c to hold I/O routines for contiguously stored datasets (like H5Fistore.c for chunked dataset I/O routines) and moved data sieving code into those routines. Platforms tested: Solaris 2.6 (i.e. baldric)
* [svn-r2610] Purpose:Quincey Koziol2000-09-281-28/+325
| | | | | | | | | | | | | | | | | | Code Optimization. Description: The optimized routines for copying regular hyperslabs in memory have been using the same matrix routines to copy their hyperslab pieces as the routines for irregularly shaped hyperslabs. This ends up imposing lots of extra overhead on the optimized routine, since it basically "knows" all the matrix information it needs. Solution: Keep track of the [small] amount of matrix information necessary to perform the regular hyperslab copies in the optimized routines themselves instead of using the matrix routines. This improves the performance for the benchmark I'm running from ~18 seconds to ~12 seconds and should apply to parallel I/O situations also. Platforms tested: Solaris 2.6 (i.e. baldric)
* [svn-r2606] Purpose:Quincey Koziol2000-09-271-32/+243
| | | | | | | | | | | | | | | Code Optimization Description: The matrix operations are currently the hot-spot in the library code for regular hyperslab operations. Solution: Unrolled loops for 3 of the more heavily used functions (H5V_stride_optimize2, H5V_hyper_stride & H5V_hyper_copy) for the common cases (i.e. up to 3-D datasets). This squeezes some more blood out of the stone (turnip? :-) and improves the h5hypers.c benchmark on baldric by another 20-25%. Platforms tested: Solaris 2.6 (i.e. baldric)
* [svn-r2605] Updated with the addition of SWControl.html entry.Albert Cheng2000-09-271-0/+1
|
* [svn-r2603] Updated the "last update date".Albert Cheng2000-09-271-1/+1
| | | | Test viewed via IE.
* [svn-r2601] Purpose:Quincey Koziol2000-09-272-5/+3
| | | | | | | | | | | | Bug Fix Description: The core and log VFL drivers were leaking small amounts of memory when they were used. Solution: Free the appropriate memory block (for the core driver) and don't allocate a block (for the log driver). Platforms tested: Solaris 2.6 (i.e. baldric)
* [svn-r2600] Purpose:Quincey Koziol2000-09-2615-27/+580
| | | | | | | | | | | Implemented new feature Description: Added data sieve buffering code to raw I/O data path. This is enabled for all the VFL drivers except the mpio & core drivers. Also added two new API functions to control the sieve buffer size: H5Pset_sieve_buf_size() and H5Pget_sieve_buf_size(). Platforms tested: Solaris 2.6 (i.e. baldric)
* [svn-r2599] Purpose:Quincey Koziol2000-09-261-0/+4
| | | | | | | | Document new feature Description: Mention data sieve buffering for next release. Platforms tested: Solaris 2.6 (i.e. baldric)
* [svn-r2597] Purpose:Quincey Koziol2000-09-261-2/+2
| | | | | | | | | | | Fix compiler warning Description: "HUGE_VAL" (a double value) was being put into a float type and generating a warning during compile time. Solution: Replaced "HUGE_VAL" with "FLT_MAX" Platforms tested: FreeBSD 4.1
* [svn-r2595] Purpose:Albert Cheng2000-09-262-0/+43
| | | | | | | | | | Feature Description: Added a new document of all the controls (compiler macros, environment variables, ...) that affect the functionality of the libraries and tools. Platforms tested: Viewed with MS IE.
* [svn-r2594] Purpose:Quincey Koziol2000-09-261-24/+18
| | | | | | | | | | | | Small Code Cleanup Description: Code to optimize adjacent (i.e. contiguous) hyperslab was ugly and used too many temporary variables. Solution: Computed the optimized hyperslabs slightly differently and got rid of unnecessary temporary variables. Platforms tested: FreeBSD 4.1
* [svn-r2591] Purpose:Bill Wendling2000-09-252-592/+602
| | | | | | | | | | | | Libtool bug Description: The AR macro wasn't being propagated to the libtool file correctly. When libtool was being generated, it wasn't recoginizing the AR that was set in the configure script. Solution: export the AR macro after it's set. Platforms tested: Linux
* [svn-r2590] Purpose:Albert Cheng2000-09-241-96/+111
| | | | | | | | | | | | | | | | | | | Bug fix Description: The old code was using count as the block size. The result was asking for a slab of count blocks, each of 1 element. The recent change in the hyperslab algorithm exposed this problem. (The old algorithm merge the count blocks back into 1 big block of count elements.) (This error was due to that the block argument was not in the very early version of hyperslab. Then it was not updated since it had been "working".) Solution: Added in the block argument to the setup and calculation of slab and its data. Also found a dumb error in the dataset_fill algorithm in which stride was used in the calculation. Not so for the cases of BYROW and BYCOL. Platforms tested: modi4 parallel, both -64 an -n32 modes.
* [svn-r2588] Snapshot version 1.3 release 30HDF Admin2000-09-232-2/+2
|