| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update
Description:
H5FP.c, H5FPclient.c, H5FPprivate.h, H5FPserver.c:
Update. More progression towards the SAP as metadata cache. It
only lacks the ability to take care of metadata allocations.
H5FDfphdf5.[ch]:
Start of a new driver for FPHDF5. Not fully implemented just
yet...
Platforms tested:
Linux
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update
Description:
MANIFEST:
- Added .autom4te.cfg and H5FDfphdf5.[ch] files.
.autom4te.cfg
- When the new versions of libtool/autoconf come out, this file
will help get rid of the annoying autom4te.cache directory.
Platforms tested:
Linux
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update
Description:
version 1.4 has renamed the tool from pio_perf to h5perf.
Folded the chagne into this branch too.
Also updated the Copyright notes.
Platforms tested:
Tested h5committest {arabica (fortran), eirene (fortran, C++)
modi4 (parallel, fortran)}? Tested in burrwhite with PP only.
[If no, why not?] It is a pretty straight forward Makefile change.
|
|
|
|
|
| |
Misc. update:
Update MANIFEST to add H5Zadler32.c.
|
|
|
|
|
|
|
|
|
|
|
| |
Purpose:
New feature
Description:
Added Adler32 checksum as a filter in pipeline
Platforms tested:
arabica (fortran), eirene (, C++), modi4 (parallel, fortran)
Misc. update:
Update release_docs/RELEASE.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update
Description:
Converted the "FUNC_LEAVE" macros to "FUNC_LEAVE_NOAPI" to be
consistent with the rest of the library.
Note: This is probably completely useless as the file is going to go
away with the new model of the SAP as metadata cache...But it helps
me compile...
Platforms tested:
Linux (FPHDF5)
|
|
|
|
|
|
|
|
|
|
|
| |
Update
Description:
Added support for defining what the haddr type is in terms of MPI
types.
Solution:
Include some #defines when we typedef haddr...
Platforms tested:
Linux (For FPHDF5 stuff)...
|
|
|
|
|
|
|
|
|
|
| |
Buglet
Description:
The title of the function in FUNC_ENTER_* was wrong.
Solution:
Changed to correct title.
Platforms tested:
Linux (small change).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update
Description:
Changes:
- Added support for the server dumping metadata writes to a
client.
- Some of the code wasn't handling allocated buffers correctly
(freeing twice).
- Modified server so that it handles metadata only.
Platforms tested:
Linux
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Update
Description:
Updated the configure scripts. Fortran and C++ didn't have proper
checks for Linux LFS support. Also needed to remove the "-g" flag
from the compile line if --enable-production is set. For that, I took
how it's being done in HDF5 Lite...
Platforms tested:
Linux
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
bug fix
added more verbose help message
added support for all dataset types
added more error checking
added new output format (28 Jan version )
Platforms tested:
windows , linux
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Purpose:
Update H5pubconf.h on both all.zip and all_withf90.zip
Update some project files on all_withf90.zip
Description:
Make H5pubconf.h work for both .Net and 6.0
Update some project files on all_withf90.zip
Currently fortran interface failed on windows, may be handled after 1.4 release.
Solution:
Platforms tested:
windows 2000
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.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update
Description:
This is the first conversion of the FPHDF5 code to be a metadata
cache. There's an extra error message. I rewrote the sync/change code
to be read metadata/write metadata instead.
I still need to hook these changes into the HDF5 code so that it
looks at the SAP first before checking the file for metadata.
Platforms tested:
Linux
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug Fix
Description:
When calling H5Fopen with the core VFL driver, but without the
H5F_ACC_CREAT flag goes ahead and creates a memory file.
Solution:
Check for the H5F_ACC_CREAT flag before allowing the memory file to be
created.
Platforms tested:
FreeBSD 4.7 (sleipnir)
|
|
|
|
|
|
|
| |
fix bug in Makefile.in
Platforms tested:
windows , linux
|
|
|
|
|
|
|
| |
added h5diff to CVS
current version, options only work for float dataset type
Platforms tested:
windows, linux
|
|
|
|
|
|
|
|
| |
Update
Description:
Added description of the configure bugfix for people specifying
--with-*=/usr/include,/usr/lib in their scripts during configure...
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug Fix
Description:
Some compilers were having problems if we included the -I/usr/include
and -L/usr/lib flags which are completely redundant. This could occur
if the user configured with something like:
./configure --with-zlib=/usr/include,/usr/lib
Solution:
Check if the --with-* command is specified with /usr/include and
/usr/lib. If so, then don't place them in the compile macros.
Platforms tested:
Linux, Modi4
|
|
|
|
|
|
|
|
|
|
|
| |
Updated
Description:
Updated Copyright notice.
Replaced HGOTO_ERROR calls involving MPI calls with HMPI_GOTO_ERROR.
Platforms tested:
Tested h5committest {arabica (fortran), eirene (fortran, C++)
modi4 (parallel, fortran)}? Tested on Eirene (PP) only since
the code is in the MPIO module only.
|
|
|
|
|
|
|
| |
Purpose:
Added 2003 to the "Copyright <years>" line.
Platforms tested:
Viewed in vi (COPYING) and in IE 5 (doc/html/Copyright.html).
|
|
|
|
|
|
|
|
|
| |
patch
Description:
Tflops interprets "$@" as "" when no parameter is given (e.g., the
case of missing file name). Changed it to use $@ till Tflops fixes it.
Platforms tested:
Tflops, burrwhite (pp), modi4(pp)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix
Description:
Currently, when the library encounters an object header message that isn't
know, it fails to open that object in the file.
Solution:
Allow the library to skip over the unknown object header message and
continue to process the remaining messages, in the hope that the skipped
message isn't important later. If it is important, it will be caught at
a higher level of the library.
Platforms tested:
FreeBSD 4.7 (sleipnir)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix
Description:
Currently, when the library encounters an object header message that isn't
know, it fails to open that object in the file.
Solution:
Allow the library to skip over the unknown object header message and
continue to process the remaining messages, in the hope that the skipped
message isn't important later. If it is important, it will be caught at
a higher level of the library.
Platforms tested:
FreeBSD 4.7 (sleipnir)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
new functions
Description:
Added these member functions to class Group per the new C functions
H5Gget_num_objs, H5Gget_objname_by_idx and H5Gget_objtype_by_idx:
// Returns the number of objects in the group.
hsize_t getNumObjs() const;
// Retrieves the name of an object in a given group by giving index
ssize_t getObjnameByIdx(hsize_t idx, string& name, size_t size) const;
// Returns the type of an object in a given group by giving index;
// the overloaded function also provided the object type in text as
// "group" for H5G_GROUP
// "dataset" for H5G_DATASET
// "datatype" for H5G_TYPE
int getObjTypeByIdx(hsize_t idx) const;
int getObjTypeByIdx(hsize_t idx, string& type_name) const;
Platforms:
SunOS 5.7 (arabica)
Linux 6.2 (eirene)
IRIX 6.5.11 (modi4)
|
|
|
|
|
|
|
|
| |
This is generated by autoheader.
Platforms tested:
Tested h5committest {arabica (fortran), eirene (fortran, C++)
modi4 (parallel, fortran)}? YES
Other platforms/configurations tested? eirene with --enable-mpe
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup & bug fix
Description:
Cleanup another set of warnings on Windows and also fix mis-placed assertion
that caused the daily tests to fail.
Platforms tested:
IRIX64 6.5 (modi4) w/-n32
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Purpose:
update hdf5.dsp and hdf5dll.dsp
Description:
Solution:
Platforms tested:
hdf5test.f90 doesnot exist. flush1fortran cannot be built.
Tested Dec fortran on windows 2000.
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.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Purpose:
Update h5pubconf.h
Description:
Add a macro to distinguish VS 6.0 and VS 7.0 since FUNCTION is a keyword for 7.0
but not for 6.0
Solution:
Use MSC_VER
Platforms tested:
windows 2000
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.
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Reduce warnings on Windows
Platforms tested:
FreeBSD 4.7 (sleipnir)
|
|
|
|
|
|
|
|
|
|
| |
Another patch
Description:
libtool will fail if pgcc compiler is used.
Now apply the patch if gcc is NOT used.
Platforms tested:
Tested only on eirene because I am sure it is correct and am trying
to beat the daily test checkout.
|
|
|
|
|
|
|
|
|
|
|
|
| |
bug fix
Description:
Added a barrier to ensure all processes have finished using
the file before cleaning it away.
Added H5close() to ensure all HDF5 stuff are closed before
calling MPI_Finalize.
Platforms tested:
Tested h5committest {arabica (fortran), eirene (fortran, C++)
modi4 (parallel, fortran)}? Yes
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
a patch
Description:
When intel compilers (icc, ecc) are used in a linux system, the libtool
generated has a wrong setting of '$wl" for linking.
Put in a "ed ..." command script to edit the generated libtool with
the proper setting. The libtool people has fixed this problem.
This can ben taken out when that version of libtool is released.
Platforms tested:
Tested h5committest {arabica (fortran), eirene (fortran, C++)
modi4 (parallel, fortran)}? YES.
Other platforms/configurations tested? platinum and titan using
gcc and intel CC.
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.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Purpose:
Change some macros to make windows happy
Description:
Currently no srandom and random functions on windows,
Function gethostname cannot be resolved when DLL turned on
Solution:
use srand and rand to replace srandom and random
turn off the option to check gethostname
Platforms tested:
windows 2000, linux 2.2.18smp
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.
|
|
|
|
|
|
|
|
|
|
|
| |
Purpose:
update the windows project file to catch up with new changes
Description:
various new files or modified file names need to be reflected
Solution:
Platforms tested:
windows 2000
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Add 'H5_DLL' macro to H5FL macros, in order to allow Windows builds to
work.
Platforms tested:
FreeBSD 4.7 (sleipnir)
Visual Studio 6.0
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Check in some Pablo fixes I've had floating around for quite some time.
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Added "UNUSED" flag to an inlinable function
Platforms tested:
FreeBSD 4.7 (sleipnir) w/gcc 3.2.1
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Added gcc 3.2-specific warnings.
Platforms tested:
FreeBSD 4.7 (sleipnir) w/gcc 3.2.1
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Fix preprocessor macros to declare variables correctly.
Platforms tested:
MS Visual Studio
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Various code cleanups to allow the development branch to be compiled with
a C++ compiler (i.e. CC=g++ )
Platforms tested:
Tested h5committest {arabica (fortran), eirene (fortran, C++)
modi4 (parallel, fortran)}
FreeBSD 4.7 (sleipnir) C++
|
|
|
|
|
|
|
|
|
|
|
| |
Code improvement
Description:
Add extra pair of braces to API versions of FUNC_ENTER/FUNC_LEAVE macros,
to make API <-> non-API mismatches obvious.
Platforms tested:
FreeBSD 4.7 (sleipnir)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup/new feature.
Description:
Split FUNC_LEAVE into API and non-API specific versions. This allows a
solution to compiling this branch with C++, as well as reducing the size
of the binaries produced.
Platforms tested:
FreeBSD 4.7 (sleipnir) w/serial, parallel (including MPE) & thread-safe
|
|
|
|
| |
Update manifest with missing test files...
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update test
Description:
Some of the performance improvements changed the errors that are reported
for creating a duplicated dataset in a file, causing this test's hard-coded
errors to check for to fail.
Solution:
Updated error stack reported for dataset creation failure.
Platforms tested:
FreeBSD 4.7 (sleipnir) w/threads
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Clean up a few more warnings and update dependencies.
Platforms tested:
Linux 2.2.18smp (eirene) serial & parallel
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
| |
Description:
Added copyright notice to C++ API files, including *.h, *.cpp, and
Makefile.in
Platforms:
Linux 6.2 (eirene)
|
|
|
|
|
|
|
|
| |
Description:
Added copyright notice to C++ API files, including *.h, *.cpp, and
Makefile.in
Platforms:
Linux 6.2 (eirene)
|