Commit Graph

3340 Commits

Author SHA1 Message Date
MuQun Yang
aab3884c94 [svn-r10707] Purpose:
bug fix, the wrong setting at H5public.h causes library failed to be compiled on windows.

Description:
"long long" needs to be changed to long_long since "long long" can not be recongized on windows.

Solution:

Platforms tested:
MSVS 6.0 on windows XP
Linux 2.4 on heping

Misc. update:
2005-05-02 11:01:15 -05:00
Quincey Koziol
98244eb5dd [svn-r10705] Purpose:
Code cleanup

Description:
    Clean up a few compiler warnings of various sorts...

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Too minor to require h5committest
2005-04-30 16:05:34 -05:00
Quincey Koziol
0fc9d137d3 [svn-r10703] Purpose:
Bug fix

Description:
    Correct bug where buffers that have only fractional elements (usually from
being compressed before being shuffled) would cause optimized algorithm to
dump core.

Solution:
    Don't attempt to shuffle bytes unless we've got more than one element.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Too minor to require h5committest
2005-04-30 15:04:44 -05:00
Xiaowen Wu
78e4e6f008 [svn-r10702] Purpose:
Bug fix.

Description:
	The previous bug fix of H5Zscaleoffset filter was not secure enough.

Solution:
	Slight modification based on previous version.

Platforms tested:
	heping

Misc. update:
2005-04-29 17:52:51 -05:00
James Laird
1b7ae2a5b7 [svn-r10701]
Purpose:
Bug fix

Description:
Some platforms (Windows) don't have the long long type, which causes automatic
Fortran type matching to fail.
A solution is to use HDF5's long_long type.

Solution:
Changed H5match_types.c to use long_long type.  Moved definition
of long_long out of H5private.h and into H5public.h.

Platforms tested:
mir, copper, pommier
2005-04-29 17:00:32 -05:00
Quincey Koziol
8f4b37accf [svn-r10700] Purpose:
Bug fix

Description:
    Kent reminded me that switching the logic wasn't enough, we really needed
to add the definition to the configure script.

Solution:
    Do that.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Too minor to require h5committest
2005-04-29 16:39:05 -05:00
Quincey Koziol
55f8e19fc7 [svn-r10699] Purpose:
Code cleanup

Description:
    Switch name & logic from H5_LLONG_TO_FP_CAST_BROKEN to
H5_LLONG_TO_FP_CAST_WORKS, to better match the rest of the library.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Too minor to require h5committest
2005-04-29 15:31:29 -05:00
Xiaowen Wu
abe7368338 [svn-r10698] Purpose:
Bug fix.

Description:
	The scaleoffset filter checks the uppper limmit of span of values
	before it is assigned. The check for floating-point data, which may
	not be represented in the machine exactly as the user wanted, did
	not consider this.

Solution:
	Slight modification of check above.

Platforms tested:
	heping

Misc. update:
2005-04-29 15:19:49 -05:00
MuQun Yang
e5b61f99ab [svn-r10690] Purpose:
Bug fix

Description:
On visual studio 6.0, conversion from unsigned long long to double is not supported.
Even during compilation stage, it will fail.


Solution:
Albert changed the way the macro is handled so that for windowx MSVS 6.0,
the code that has conversion from unsigned long long to double will not compile.

Platforms tested:
windows, linux

Misc. update:
2005-04-28 16:23:48 -05:00
John Mainzer
a9ba92287d [svn-r10688] Purpose:
Add API calls allowing user control of the metadata cache.


Description:

Prior to this update, the metadata cache was not configurable
from outside the library.


Solution:

Add API calls allowing the user to configure the metadata cache
either at file open time, or for any open file.  Also added calls
permitting the user to monitor cache size and hit rate.  These
latter facilities are needed for "manual" cache size control


Platforms tested:

h5committested


Misc. update:
2005-04-28 11:40:07 -05:00
Xiaowen Wu
0971859803 [svn-r10687] Purpose:
Modifications.

Description:
	Scaleoffset filter codes could not pass windows compiler.

Solution:
	Modifications were made to make it pass. Also slight improvements of codes.

Platforms tested:
	heping

Misc. update:
2005-04-27 22:45:28 -05:00
Xiaowen Wu
2ae18539b1 [svn-r10681] Purpose:
Slight modification.

Description:
	Several constants were added for the scaleoffset filter in
	file H5Zpublic.h and corresponding changes needs to be made
	in H5Zscaleoffset.c.

Solution:
	Slight modification of codes.

Platforms tested:
	heping, shanti

Misc. update:
2005-04-27 11:59:11 -05:00
MuQun Yang
affa4e9bff [svn-r10677] Purpose:
Add some comments for H5Pset_scaleoffset.

Description:

Solution:

Platforms tested:
No need to test.

Misc. update:
2005-04-27 10:19:31 -05:00
MuQun Yang
676ecf88dd [svn-r10676] Purpose:
Add a few constants for the scaleoffset filter.

Description:

Solution:

Platforms tested:

Misc. update:
2005-04-27 10:18:24 -05:00
Xiaowen Wu
470719f4cf [svn-r10675] Purpose:
New feature.

Description:
	The scaleoffset filter has been implemented for compressing
	floating-point data (float, double, but not long double)
	using D-scaling method from GRIB. It also changes to
	according to the new interface of H5Pset_scaleoffset API.

Solution:

Platforms tested:
	heping, copper, shanti

Misc. update:
2005-04-26 16:45:43 -05:00
Xiaowen Wu
02f7cdac77 [svn-r10672] Purpose:
New feature.

Description:
	The H5Pset_scaleoffset is changed for the scaleoffset filter
        to handle both integer and floating-point data. Currently,
        the D-scaling method from GRIB has been implemented for
        compressing floating-point data.

Solution:
	One more parameter is added to the H5Pset_scaleoffset interface
        to let user specify what type of data is used and what method
        to use as well as corresponding parameters.

Platforms tested:
	heping

Misc. update:
	Needs to update libtool's version number
2005-04-26 15:26:17 -05:00
Xiaowen Wu
0af6a38a3f [svn-r10671] Purpose:
New feature.

Description:
	The H5Pset_scaleoffset is changed for the scaleoffset filter
	to handle both integer and floating-point data. Currently,
	the D-scaling method from GRIB has been implemented for
	compressing floating-point data.

Solution:
	One more parameter is added to the H5Pset_scaleoffset interface
	to let user specify what type of data is used and what method
	to use as well as corresponding parameters.

Platforms tested:
	heping

Misc. update:
2005-04-26 15:22:22 -05:00
Leon Arber
1208855335 [svn-r10660] Purpose:
bug fix (sorta)

Description:
Rename H5_LLONG_TO_FP_CAST_WORKS to H5_LLONG_TO_FP_CAST_BROKEN

Solution:
Since a test for  H5_LLONG_TO_FP_CAST_WORKS is not present in the configure script,
the dtransform test would assume that this cast doesn't work and skip the test.  Change the variable around
so that, by default, it is assumed a long long to double cast does work.

Platforms tested:
minor change: copper, sol

Misc. update:
2005-04-25 14:33:44 -05:00
Leon Arber
0ae785b76b [svn-r10658] Purpose:
Bug fix

Description:
The intel compiler on windows doesn't support long long to double conversion.

Solution:
Added a flag  H5_LLONG_TO_FP_CAST_WORKS.  When it is not defined, the data transform will issue
an error when someone tries to perform a transform from long long to double and the long long to double
dtransform test will be skipped.

Platforms tested:
heping, sol, copper

Misc. update:
2005-04-25 14:14:01 -05:00
Quincey Koziol
0cf3f85cce [svn-r10637] Purpose:
Bug fix/code cleanup

Description:
    Add tests to determine that very long (64K+) object names are working.
Fixed a couple of bugs in h5dump where they weren't...

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Solaris 2.9 (shanti)
2005-04-21 01:55:42 -05:00
Quincey Koziol
31fb2d13de [svn-r10636] Purpose:
Code cleanup

Description:
    Rearrange struct members to fit better on 64-bit machines.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Solaris 2.9 (shanti)
2005-04-21 01:48:24 -05:00
HDF Admin
183741eff0 [svn-r10632] Snapshot version 1.7 release 46 2005-04-20 04:48:31 -05:00
Quincey Koziol
af6276f654 [svn-r10628] Purpose:
Code cleanup

Description:
    Clean up various warnings reported by the Windows team.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Too minor to require h5committest
2005-04-18 16:21:35 -05:00
James Laird
d8b08dbc85 [svn-r10627] Purpose:
Feature - libtool shared library versioning

Description:
Libtool provides a mechanism for different versions of the same shared
library to be distinguished.  Now this is applied to HDF5 when it is
built as a shared library.

Solution:
The version number is stored in config/lt_vers.am, and included in
src/Makefile.am.
This number will be automatically updated by bin/h5vers; developers
only need to update it when they change the API.

*** IMPORTANT ***
Any time the API changes, the version number in config/lt_vers.am must
be updated!



Platforms tested:
mir, eirene, verbena, modi4

Misc. update:
2005-04-18 10:48:32 -05:00
Quincey Koziol
9b68e8e927 [svn-r10620] Purpose:
Bug fix

Description:
    Opening a dataset (or named datatype) with "." for the name and using a
group ID for the location ID was not returning an error value.

Solution:
    Check the type of the object before attempting to open it (internally,
using a group ID and "." for the name maps to the group object).

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Solaris 2.9 (shanti)
    Too minor to require h5committest
2005-04-16 11:22:16 -05:00
Quincey Koziol
3c5faf9fb6 [svn-r10618] Purpose:
Bug fix

Description:
    Correct typo in "base array" free list macro when free list macros are
disabled.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Solaris 2.9 (shanti)
    Too minor to require h5committest
2005-04-16 11:17:42 -05:00
Xiaowen Wu
089fc7f7db [svn-r10613] Purpose:
Bug fix.

Description:
     Several call to macro HGOTO_ERROR passes wrong value to ret_value.

Solution:
     Change the value from zero to FAIL.

Platforms tested:
     heping

Misc. update:
2005-04-15 15:15:02 -05:00
Xiaowen Wu
c240263d2d [svn-r10612] Purpose:
Bug fix.

Description:
     One call to macro HGOTO_ERROR passes wrong value to ret_value.

Solution:
     Change the value from zero to FAIL.

Platforms tested:
     heping

Misc. update:
2005-04-15 15:02:38 -05:00
Elena Pourmal
bcbae952b8 [svn-r10601] Purpose: Small bug fix (discovered by Kent on Windows)
Description: When stream driver was not enabled, H5FD_STREAM variable
             was not define. Fortran compilation failed since H5FD_STREAM
             was needed to set up fortran global variables.

Solution: Followed MPIO driver model and defined H5FD_STREAM to be -1
          when driver is not enabled.

Platforms tested: heping with --enable(disable)-stream-vfd

Misc. update:
2005-04-13 19:42:44 -05:00
Xiaowen Wu
1841933607 [svn-r10596] Purpose:
New feature.

Description:
     The scaleoffset filter previously does not use macros to handle
     different integer datatype situations.

Solution:
     Added macros in the filter for better maintenance and clarity of codes.

Platforms tested:
     heping, copper, shanti

Misc. update:
2005-04-12 16:04:35 -05:00
James Laird
afef3c0358 [svn-r10587] Purpose:
Minor feature

Description:
If a user configures without C++ or Fortran, 'make' will not recurse into
c++ or fortran directories.  However, if the user cd's into these
directories and 'makes,' the Makefiles will attempt to build interfaces
that have not been configured, usually failing.
In an unrelated but minor change, src/H5detect should be compiled with
the -g flag to disable compiler optimizations since it is only
executed once.

Solution:
Make it harder for users to try to compile interfaces that have not been
configured by making c++, fortran, and hl directories not recurse into
their subdirectories unless they have been configured.
Thus, 'make' in /fortran/src will break if Fortran has not been configured,
but 'make' in /fortran will not break.

Platforms tested:
mir, modi4, copper

Misc. update:
2005-04-11 16:47:05 -05:00
Quincey Koziol
13ca97618d [svn-r10580] Purpose:
Code optimization

Description:
    Add "base" size to array free list code, to accomodate skip list nodes.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Solaris 2.9 (shanti)
2005-04-07 22:46:48 -05:00
Quincey Koziol
d4ab501d63 [svn-r10578] Purpose:
Code optimization

Description:
    Reduce overhead for common case of stride==NULL and block==NULL for
H5Sselect_hyperslab() calls.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Solaris 2.9 (shanti)
2005-04-07 20:06:16 -05:00
Quincey Koziol
b6c87bcdac [svn-r10576] Purpose:
Code optimization

Description:
    Use Duff's Device to unroll shuffling loop a bit, for ~30% speedup.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Solaris 2.9 (shanti)
2005-04-07 19:44:13 -05:00
Quincey Koziol
227c58bd98 [svn-r10574] Purpose:
Code cleanup

Description:
    Clarify error string.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Too minor to require h5committest
2005-04-07 19:41:27 -05:00
Elena Pourmal
5279827823 [svn-r10570] Purpose: Maintenance
Description: Removed support for SRB driver

Solution: Removed or modified appropriate files; ran reconfigure
          to regenerate Makefile.in and configure files.

Platforms tested: heping and shanti

Misc. update: ran bin/chkmanifest on heping
2005-04-07 14:41:25 -05:00
Xiaowen Wu
a9a01b7483 [svn-r10568] Purpose:
Bug fix.

Description:
    The current HDF5 library call H5Tget_size when called by the filter
    does not give the correct disk size for varible-length and variable-length
    string. The filter needs to have another way, if possible, to get their
    sizes.

Solution:
    The filter can only solve this problem if varible-length and variable-length
    string is a member of compound datatype. The filter does not support the
    situation where an array datatype has variable-length or variable-length
    string as its base datatype.

Platforms tested:
    heping, shanti

Misc. update:
2005-04-06 21:41:54 -05:00
Quincey Koziol
16ac51bff1 [svn-r10547] Purpose:
Bug fix (sorta)

Description:
    Re-enable free-lists in library.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Too minor to require h5committest
2005-04-05 14:52:15 -05:00
MuQun Yang
1d6c4017ec [svn-r10545] Purpose:
Activating collective IO supports for irregular selction inside HDF5 dataset.
This support doesn't include to build the final complicated MPI derived datatype support for chunking storage.

Description:
Support collective chunk IO for both contiguous and chunking storage for irregular selection( using H5S_SELECT_OR for multiple hyperslab selection)
Solution:
Using MPI derived datatype to realize this feature.
Problems still need to be investigated:
 Big size irregular hyperslab selection test may cause MPI hang or abnormalexit with MPICH family on various platforms. This is really hard to debug since sometimes it can work and sometimes it cannot work. We will continue investigating those cases. This may not be parallel HDF5 bugs since with the recent version of poe at IBM platforms, all tests passed.


Platforms tested:
1. Linux heping 2.4.21-27.0.1 with mpich
2. AIX 5.1 copper with mpcc_r
3. Altix cobalt SGI linux 2.4.21-sgi304rp05031014_10149 with icc -lmpi
4. Linux Cluster SDSC TG, intel 8-r2 with mpich 1.2.5
5. NCSA Linux Cluster Tungsten, MPICH-TCP-1.2.5.2, Intel 8.0 under lustre
6. NCSA Linux Cluster Tungsten, MPICH-LAM-INTEL711, sometimes not working
7. NCSA Linux CLuster Tungsten, champion-pro-1.2.0-3, not working for other collective IO tests, but work for irregular selection collective IO test.

Misc. update:
2005-04-05 14:41:20 -05:00
Raymond Lu
e0f167780b [svn-r10535] Purpose: Spliting Test
Description:  Split test/dtypes.c because it's so big.  Moved all integer-integer,
floating-floating, integer-floating, floating-integer, derived integer, derived
floating conversion tests to a new test program, dt_atomic.c.  The test remains
the same basically.


Platforms tested: fuss and h5committest

Misc. update: MANIFEST
2005-04-04 17:35:35 -05:00
James Laird
b296a419c4 [svn-r10534] Purpose:
Configuration feature

Description:
Different Fortran compilers mangle function names in different ways
(upper case, lower case, adding underscores).  To link between
Fortran and C functions, we need to know what a given function's
name is under a given compiler.

Solution:
Use autoconf's FC_WRAPPERS check to determine the Fortran
naming scheme and define the FC_FUNC_ macro to name our
functions (in H5f90proto.h).  Removed references to
our old FNAME macro, as well as flags that indicated whether
function names were upper or lower case.

Platforms tested:
mir, pommier, modi4, copper, more
2005-04-04 16:17:51 -05:00
James Laird
59ec5b3d66 [svn-r10517] Purpose:
Bug fix

Description:
On some machines, $RUNSERIAL variable needs to be used to run
tests.  Set $RUNTESTS (which is used for non-parallel tests) to
be $RUNSERIAL in configure.am.

Also, since I was updating all Makefiles.in anyway, I updated
commence.am to point to autotools installs in AFS instead of
those on heping.

Platforms tested:
mir, sleipnir, modi4, copper
2005-03-31 13:26:17 -05:00
James Laird
14e06e81cb [svn-r10511]
Purpose:
"Bug fix"

Description:
Hardcoded Makefiles to use /bin/sh instead of letting configure
detect shell automatically.  This is what v1.6 does, and avoids
problems on janus.

Platforms tested:
sleipnir, copper, modi4, mir
2005-03-30 16:14:48 -05:00
James Laird
354bcd9b7f [svn-r10509]
Purpose:
Bug fix

Description:
Header was expecting SRB headers to be installed.

Solution:
Only try to include SRB header if SRB is enabled.

Platforms tested:
sleipnir
2005-03-30 08:45:23 -05:00
Quincey Koziol
a9d5fc42eb [svn-r10506] Purpose:
New feature

Description:
    Add first iteration of "segmented heap" code, which will be used to store
links in groups in a more flexible way than the previous "local heap" mechanism.

Platforms tested:
    FreeBSD 4.11 (sleipnir) w/parallel
    Solaris 2.9 (shanti)
2005-03-29 16:45:09 -05:00
Quincey Koziol
d8b3898368 [svn-r10505] Purpose:
New feature

Description:
    Search free list when checking for, or actually performing, extension of
an object in the file.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Solaris 2.9 (shanti)
2005-03-29 16:33:57 -05:00
Quincey Koziol
d484bd9fb7 [svn-r10504] Purpose:
New feature

Description:
    Add wrapper for v2 B-tree "neighbor" routine.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Solaris 2.9 (shanti)
2005-03-29 16:26:25 -05:00
Quincey Koziol
785b356d40 [svn-r10503] Purpose:
Fix typo

Description:
    Fix typo in comment.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Too minor to require h5committest
2005-03-29 16:22:20 -05:00
James Laird
7acf3f1b12 [svn-r10475] Purpose:
Feature - conditional compilation

Description:
SRB file driver and tests are now compiled only when SRB is enabled
(using --with-srb during configure).

Solution:
Added an automake conditional in configure.in, altered Makefiles.am in
src and test directories to depend on that conditional.
This should make a nice example for posterity to add conditionally
compiled sources.

Platforms tested:
heping (only configure change)
2005-03-29 12:38:17 -05:00
Raymond Lu
8ac6380576 [svn-r10469] Purpose: Minor typo fix
Description:  During last change, part of the code wasn't updated in
copy and paste accordingly.  It was in the exception handling of NaN
in H5T_conv_f_f().

Solution:  Corrected.

Platforms tested:  No test needed - trivial.
2005-03-28 16:54:55 -05:00