| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
| |
Updated with the newly added file, H5MPprivate.h.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
fortran/config/powerpc-ibm-aix5.x
To cover AIX 5.x.
Removed Files:
fortran/config/powerpc-ibm-aix4.2.1.0
fortran/config/powerpc-ibm-aix4.3.2.0
These files are outdated and have been replaced by powerpc-ibm-aix4.x.
Modified Files:
MANIFEST
Update it.
Platforms tested:
Only on LLNL blue. LLNL SP are the only machines that use
these files and that I have access.
|
|
|
|
| |
Added entry for H5Tget_native_type test review document.
|
|
|
|
| |
Add "test review" pages.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup/new feature
Description:
Removed poorly named H5_HAVE_COMPRESSION flag in favor of
H5_HAVE_FILTER_DEFLATE.
Added new test files for "missing filter" testing.
Platforms tested:
Tested h5committest {arabica (fortran), eirene (fortran, C++)
modi4 (parallel, fortran)}
FreeBSD 4.7 (sleipnir)
|
|
|
|
|
|
|
|
|
|
|
| |
Purpose:
bug fix.
Description:
h5dump cannot dump data and datatype for VL string.
Platforms tested:
eirene, arabica
Misc. update:
MANIFEST, RELEASE.txt
|
|
|
|
|
|
|
|
|
| |
Purpose:
updated file list including shuffling code and shuffling note
Description:
Solution:
Platforms tested:
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
| |
Add file
Description:
Add parallel hyperslab benchmark.
|
|
|
|
|
|
| |
Updated with the new entry of Daily_tests_explained.
Platforms tested:
bin/chkmanifest
|
|
|
|
|
|
|
|
|
| |
Update
Description:
Added new files to the MANIFEST and added a new configure switch for
enabling building of the Flexible parallel HDF5 module.
Platforms tested:
Modi4 Eirene Arabica
|
|
|
|
|
|
| |
updated with the removal of h5dumptst.c and the addition of h5dumpgentest.c
Platforms tested:
Only tested in eirene via bin/chkmanifest
|
|
|
|
| |
Updated with added file.
|
|
|
|
| |
Add the tools/h5diff/Dependencies file.
|
|
|
|
| |
removed the Dependencies in h5diff from the MANIFEST file (the Dependencies file was not generated in the h5diff dir )
|
|
|
|
| |
insert then h5diff files
|
|
|
|
|
|
|
| |
Purpose:
Update for new test program.
Description:
Added file_handle.c in /test
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Purpose:
Bug fix, code improvement
Description:
Fortran tests didn't cleanup created files. Also HDF5_PREFIX and
HDF5_PARAPREFIX were not used to specify location of the files.
There was a redundant file in the testpar directory that contained
an error reporting function used by both serial and parallel tests.
Solution:
Created library h5test_fortran.a that contains functions used by the
serial and parallel tests. It includes Fortran and C functions that
may be called from Fortran programs to report errors, to modify
file names and to cleanup files after run. Modified test code to
use new functions.
Platforms tested:
Linux 2.2 (eirene) serial
IRIX64 (modi4) parallel with HDF5_PREFIX and HDF5_PARAPREFIX set to $SCR
Solris 2.7 with mpich 1.2.4 with HDF5_PARAPREFIX set to /tmp/epourmal
|
|
|
|
|
|
|
|
|
| |
Purpose:
Design for compact dataset
Description:
Compact dataset is stored in the header message for dataset layout.
Platforms tested:
arabica, eirene.
|
|
|
|
|
|
|
|
|
|
|
|
| |
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)
|
|
|
|
| |
Update with new MPI-posix driver files and testpar testing script.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Compress I/O Test Add
Description:
This is the initial check-in of the compress I/O test. It will write
out compressed buffers to a file.
I need to implement a write of uncompressed data first for
comparison...
Platforms tested:
Linux
|
|
|
|
|
|
| |
Update
Description:
Added the "perform/gen_report.pl" file.
|
|
|
|
|
|
|
|
| |
Purpose:
remove all_withhdf4.zip from the file list
Description:
Solution:
Platforms tested:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update
Description:
Updated the way we used the AC_INIT macros so that it's current to
the new standard way and not deprecated anymore.
Also, added a test for some functions during parallel Fortran
configure. This required the creation of an H5config_fortran.h file
so that we can test for these...
Platforms tested:
Elena is going to test the changes to the fortran after she checks in
her other code. I will test on SDSC machines after getting her code.
The other changes were tested on Linux.
|
|
|
|
|
| |
Purpose:
added new file ./test/getname.c
|
|
|
|
| |
Update manifest with new files.
|
|
|
|
|
|
| |
Update
Description:
Updated to reflect change of set_extend.c to set_extent.c.
|
|
|
|
|
|
|
|
|
| |
Update
Description:
Updated MANIFEST to reflect the removal of some autotools files which
the autotool upgrade made obsolete.
Platforms tested:
Linux
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Autotools Update
Description:
I've updated autoconf, automake, and libtool to the latest/greatest
versions; 2.53, 1.6, and 1.4.2 resp.
Many changes come with the new versions:
- ltconfig is no longer used
- acconfig.h is no longer used (#define values are declared with
the macro)
- regeneration of all of the aclocal.m4, configure, and
H5config.h.in files.
- new config.{guess,sub} files
- new ltmain.sh file
Platforms tested:
AIX (blue), and Linux
|
|
|
|
|
|
|
|
|
| |
HDF4 Removal
Description:
There were some testfiles still left after we removed HDF4 from the
HDF5 tree...
Platforms tested:
Linux
|
|
|
|
|
|
| |
Update
Description:
Reflect the removal of the HDF4 stuff from the HDF5 library
|
|
|
|
|
| |
Purpose:
Updated MANIFEST for removing all_lang.zip
|
|
|
|
|
| |
Platforms tested:
bin/chkmanifest
|
|
|
|
|
|
|
|
| |
Update
Description:
Added the addition of the tlarge_objname.* files...
Platforms tested:
Linux
|
|
|
|
|
| |
Purpose:
For adding INSTALL_Windows_withcpp.txt
|
|
|
|
|
|
|
|
| |
Test Add
Description:
Added a test for dumping files with the multi driver.
Platforms tested:
Linux
|
|
|
|
|
|
|
|
| |
Update
Description:
Updated with the newest testfiles.
Platforms tested:
Linux
|
|
|
|
|
|
| |
Feature Add
Description:
Added set_extend to the MANIFEST and test/ directory Makefile.
|
| |
|
|
|
|
| |
Update manifest with new test file.
|
|
|
|
|
|
|
| |
Purpose:
Updated MANIFEST
Description:
Added file c++/config/irix6.x for modi4
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Purpose:
Feature Add
Description:
Added support for dumping Group Comments. This involved a
modification of the DDL as well.
Solution:
Steal code from h5ls and put it in the h5dump. The ddl.html file was
updated as normal. And a test was created...
Platforms tested:
Dangermouse, Modi4, Kelgia
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Removing the DPSS (gridstorage) driver source code.
Description:
The DPSS (using Grid-Storage) driver is retired.
Removed the configure option with-gridstorage from configure.in.
Cvs remove the following files
./src/H5FDdpss.c
./src/H5FDdpss.h
./test/dpss_read.c
./test/dpss_write.c
Regenerated Dependencies files (some had to be hand-edited since
'make depend' did not cover them.)
Removed reference to DPSS Virtual file driver from H5F.c.
Platforms tested:
modi4 (Parallel; -with-gass=...), eirene, arabica (fortran, cxx).
|
|
|
|
| |
Add missing h4toh5 file.
|