| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Configuration feature
Description:
HDF5 now uses automake to generate Makefiles
Solution:
Makefile.in files are now generated from Makefile.am files.
To reconfigure (after chaning a Makefile.am or configure.in):
/bin/sh bin/reconfigure.sh
Platforms tested:
Many
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Clean up some leftover testfiles...
Platforms tested:
Too minor to require h5committest...
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Description:
For Intel machines, the size of "long double" is 12 byte, precision
is 80 bits, mantissa size is 64 bits, and no normalization. So the
most significant bit of mantissa is always 1 unless the floating number
has special value. This step tries to compensate this case by turning
on the most significant bit of mantissa if the mantissa bits aren't
all 0s.
Solution:
Tries to compensate this case by turning on the most significant bit of
mantissa if the mantissa bits aren't all 0s.
Platforms tested: eirene and fuss(production enabled). Small change for
production only.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add test cases of nbit filter, tests are now turned on
Description:
Six test cases are added for testing the nbit filter with different
datatypes including int, float, double, array datatype, a simple
compound datatype and a complex compound datatype. Improvements are
made to testing of int and floating point.
Solution:
Platforms tested:
AIX 5.1 and Linux 2.4.
Misc. update:
|
|
|
|
|
|
|
|
| |
Description: Added a test of data type conversion between user-defined integer
types.
Platforms tested: h5committest and fuss
|
|
|
|
|
|
|
|
|
|
|
| |
New tests
Description:
Add some tests for H5Fis_hdf5() routine.
Platforms tested:
FreeBSD 4.10 (sleipnir)
Too minor to require h5committest
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Reduce the run time of the cache tests.
Description:
Some of the cache tests run for quite a while, which has been
causing problems with our daily build and test. In my last
modification to cache.c, I added code to skip these stress
tests unless we were building in production mode. Since
things go faster in production mode, the extra tests are not
a major problem here.
However, this means that the stress tests are only run once
or twice a week.
Solution:
To try to deal with this, I modified the four longest tests
to throttle depending on whether NDEBUG is defined. When
NDEBUG is not defined, runtime for the cache tests should
be about 1/5th its regular run time. We will see if this
is enough of a reduction to avoid problems.
There is some doubt in my mind as to just how much good the
throttled tests do, but they should be better than nothing.
As mentioned before, the correct solution is to build some
proper, random test code.
Platforms tested:
h5committested
production and debug builds on heping.
Misc. update:
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Add new test file to 'distclean' target
Platforms tested:
None, very minor...
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Adding N-bit testing source code into CVS tree.
This is for debugging purpose only. N-bit filter won't be included in the daily test.
Description:
Integer, Float, Array datatype and Compound datatype tests are included.
More comprehensive tests need to be done.
Solution:
Platforms tested:
copper(AIX 5.1) and heping(Linux 2.4).
Misc. update:
|
|
|
|
|
|
|
|
| |
Description: A very minor bug fix and some minor changes to reduce the warning messages during
compiling.
Platforms tested: sleipnir and fuss
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
1) Provide facilities in cache to allow us to avoid a potential cache
consistency bug in the parallel case.
2) Clean up a off by one sanity checking bug.
3) Turn off execution of long running tests in debug mode.
Description:
1) In the parallel case, all writes to metadata must be collective,
but reads may not be. In pricipal, this allows us to different
contents in different caches. This isn't a problem as long as the
correct data is always on disk, but unless we can force certain
writes immediately, that need not be the case.
2) & 3) should need no further explanation.
Solution:
1) Add code allowing us to mark cache entries, and then force
these entries to be flushed at a later time.
Note that to actually avoid the bug, we will have to modify
existing code to use these new features.
2) & 3) should need no further explanation.
Platforms tested:
heping (serial debug and production)
committest (copper, sol, and heping). test failed on heping in the
c++ portion of the build, but at Quincey's siggestion, I am proceeding
with the checkin.
Misc. update:
|
|
|
|
|
|
|
|
|
| |
Description: Test conversion from native integer to derived floating-point type and convert back;
test conversion from derived floating-point to derived floating-point types and convert back. Fixed
a few minor bugs related to type conversion in the library.
Platforms tested: h5committest and fuss
|
|
|
|
| |
Platforms tested: No test needed.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Description: The functions for user-define floating-point type, like
H5Tset_fields, H5Tset_offset, H5Tset_precision, H5Tset_size, have some
minor bugs. For error checking, the library didn't include offset value
somehow.
Solution: Corrected those bugs.
Platforms tested: h5committest and fuss
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix
Description:
Don't print very long description, check that it's correct internally.
Platforms tested:
Linux 2.4 (heping)
Solaris 2.7 (arabica)
|
|
|
|
|
|
|
|
| |
Description: There was a #ifdef statement with logical AND in it.
Solution: Change it to #if statement.
Platforms tested: sleipnir and eirene. Simple change
|
|
|
|
|
|
|
|
|
|
| |
Description: Intel compiler on Linux has some problem to convert long double to
unsigned int correctly.
Solution: Detect the problem in configure and define a macro to skip this test
if it happens.
Platforms tested: eirene and fuss. Simple change.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix
Description:
Fix possible overrun in error description string by allocating large enough
string on the fly.
Platforms tested:
FreeBSD 4.10 (sleipnir)
Too minor to require h5committest
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Description: The fix of the loss problem of the last 2 bytes of mantissa on sleipnir has
not been successful. It happens when converting from unsigned long long to long double.
The failure has been on and off.
Solution: Hard set a macro to disable unsigned long long->long double for FreeBSD until
a good solution is found to solve this elusive problem.
Platforms tested: sleipnir and fuss. Only sleipnir is concerned.
Misc. update:
|
|
|
|
|
|
|
|
|
|
| |
Description: the last 2 bytes of mantissa can be lost when converting from unsigned long long
to long double. In last check-in, a fix was made to ignore that precision loss. But sometimes,
the last 2 bytes are rounded up to the 3rd last byte.
Solution: Ignore the 3rd last byte, too, when comparing values.
Platforms tested: sleipnir - only this system is concerned.
|
|
|
|
|
|
|
|
|
|
|
| |
Description: For FreeBSD (sleipnir), when GNU compilers do conversion from
unsigned long long to long double, the last 2 bytes of mantissa are lost.
The impact of precision loss isn't significant.
Solution: Detect this case on FreeBSD in configure, ignore it in dtypes.c
test instead of return failure.
Platforms tested: sleipnir, fuss, modi4. These systems are mainly concerned.
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Remove obsolete support for Watcom C compiler.
Platforms tested:
None - too minor to require any.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Reduce run time of daily tests.
Description:
cache, the test program for the metadata cache has been taking a while
to execute.
Solution:
As a short term "fix", I have commented out all but one of the long
running test functions. Of course that means that we aren't running
these tests at present. I'm not sure that this is a good idea.
Platforms tested:
Serial on Heping.
Misc. update:
|
|
|
|
|
|
|
|
|
|
| |
Description: For HP-UX 11.00, the compiler generates 'floating exception'
when converting 'long double' to most of integer types.
Solution: Define a macro for all other systems except HP-UX 11.00. Hard set
this macro to 'no' in config/hpux11.00 to skip this test for HP-UX 11.00.
Platforms tested: modi4, kelgia, fuss
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix
Description:
Print the thread ID in a little more portable of a fashion, disallowing
negative thread IDs.
Platforms tested:
Linux 2.4 (heping) w/threadsafe
Too Minor to require h5committest
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Remove feature
Description:
Retire threaded, balanced binary tree code from HDF5 use. Requiescat in
pace...
Also, regenerate dependencies files.
Platforms tested:
FreeBSD 4.10 (sleipnir) w/parallel
Too minor to require full h5committesting (the code is already
disconnected from everything except its tests)
|
|
|
|
|
|
|
|
|
| |
Description: Windows .NET 2003 can't handle float(double)->long_long hardware conversion.
While the problem hasn't been determined, we temporarily disable that test by using a
condition macro. Let Windows define that macro. Other systems don't have it defined.
Platforms tested: mir and eirene.
|
|
|
|
|
|
|
|
|
|
|
| |
Description: integer->long double conversion test failed on some of Linux
systems(mir and eirene) when Intel compiler is used. I'm not able to repeat
the problem. So I just made a best guess and fix it. The problem is minor.
The long double on Linux is 12 bytes long but precision is 10 bytes. The
unused 2 bytes may have garbage in them causing value comparison wrong.
Platforms tested: mir and eirene with Intel compiler.
|
|
|
|
|
|
|
|
|
| |
Description: 2 small things to correct:
1. the change in H5config.h.in was wept out by a later change.
2. long long isn't supported on Windows. It's long_long instead.
Platforms tested: fuss(linux 2.4)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Purpose:
For debugging N-bit filter; it will not affect the library.
Description:
Adding N-bit tests, the library will not run those tests.
Solution:
Platforms tested:
heping(Linux 2.4), copper(AIX 5.1),arabica(sol 2.7)
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
| |
Small bug fix
Description:
Patch szip_can_encode() test routine to return a value for all code paths.
Platforms tested:
None - very, very minor
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix
Description:
szip tests were failing due to a few "H5_SZIP_CAN_ENCODE" ifdefs still
lying around in the source code.
Solution:
Eliminate compile time testing by using new SZ_encoder_enabled() routine
at run time.
Platforms tested:
FreeBSD 4.10 (sleipnir) w/szip
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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:
|
|
|
|
|
|
|
|
|
|
|
| |
New feature
Description:
Add callback iteration routine to skip lists.
Platforms tested:
FreeBSD 4.10 (sleipnir) w/parallel
Too minor to require h5committest
|
|
|
|
|
|
|
| |
Added comment of the fix.
Platforms tested:
only tested in heping as it is only a comment added.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix
Description:
Correct integer overflow situation for computing the size of a dataset.
Solution:
Rachet one of the dimensions down far enough that the total size of the
dataset's raw data doesn't overflow a 64-bit int.
Platforms tested:
FreeBSD 4.10 (sleipnir)
IRIX 6.? (tesla) w/-n32
Too minor to require h5committest
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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)
|
|
|
|
|
|
|
|
|
|
|
| |
Cleanup & add test
Description:
Clean up test makefile a bit and add metadata cache test to 1.6 branch.
Platforms tested:
FreeBSD 4.10 (sleipnir)
Too minor to require h5committest
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
| |
New tests
Description:
Added tests for chunked reads/writes.
Platforms tested:
eirene + sol + copper
Misc. update:
|