Commit Graph

3340 Commits

Author SHA1 Message Date
Quincey Koziol
433fdf2bf8 [svn-r12133] Purpose:
Code cleanup

Description:
    Update a couple of files that bin/reconfigure rearranged for me... :-)

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Too minor to require h5committest
2006-03-22 14:15:53 -05:00
Quincey Koziol
5135181d31 [svn-r12132] Purpose:
Code cleanup

Description:
    Add H5E header to this header, to make certain that the errors in the
"inline" routines are handled correctly.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Linux 2.4 (chicago)
    Mac OSX (amazon)
2006-03-22 13:50:19 -05:00
Quincey Koziol
6c8a082596 [svn-r12131] Purpose:
Code update

Description:
    Add new minor error, for heap metadata operations.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Linux 2.4 (chicago)
    Mac OSX (amazon)
2006-03-22 13:46:08 -05:00
Quincey Koziol
3424f9f5d1 [svn-r12128] Purpose:
Code cleanup

Description:
    Clean up some compiler warnings (esp. those flagged on Windows builds)

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Too minor to require h5committest
2006-03-22 13:11:24 -05:00
Quincey Koziol
2db47ff504 [svn-r12125] Purpose:
Code checkpoint

Description:
    Update fractal heap code to insert & read heaps up to 64MB in size
(with my current configuration paramaters) and add initial support for
iteratively walking down nested indirect blocks.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Linux 2.4 (chicago)
    Solaris 9 (shanti)
    Linux 2.4 (mir) w/64-bit
2006-03-20 21:59:06 -05:00
MuQun Yang
ebc9e3981b [svn-r12123] Purpose:
Add more comments

Description:
Add more comments to H5Dmpio.c, which describes a little bit more about collective IO management.

Solution:

Platforms tested:
Only test at heping since only comments were added.

Misc. update:
2006-03-20 12:13:36 -05:00
Quincey Koziol
a53790e16a [svn-r12122] Purpose:
Code update

Description:
    Add basics of routine for reading information back out of a fractal heap.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Too minor to require h5committest
2006-03-18 16:33:48 -05:00
Quincey Koziol
2315bc4dda [svn-r12118] Purpose:
Checkpoint code

Description:
    Rework code to support increasing size of root indirect block, in order
to add [at least] a second row of direct blocks.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Solaris 9 (shanti) w/64-bit
    Linux 2.4 (mir)
2006-03-17 22:16:40 -05:00
MuQun Yang
68385c1746 [svn-r12117] Purpose:
Enhancing the optimiziation of collective IO per chunk

Description:
When the user does one of the following two things:
1. to do collective IO per chunk without using our optimization code
2. or the user passes the percent of number of process per chunk to be 0 when choosing
   to do collective IO per chunk

It is not necessary that the library uses MPI-IO collective calls to do any optimization.
Solution:
Modify the code so that no MPI communication-involved analyses will be done for the above cases. Chunk addresses are obtained globally  and IO modes are assigned to collective always.



Platforms tested:
h5committest

Misc. update:
2006-03-17 21:59:32 -05:00
Raymond Lu
b6e8651a3a [svn-r12115] Purpose: Change codes in a more appropriate way.
Description:  Yesterday, H5E_NONE_MAJOR and H5E_NONE_MINOR were added to error
API by hand.

Solution: Today, correct the change by hand with the tool hdf5/bin/make_err.
The change by hand is only in src/H5err.txt.

Platforms tested: fuss - simple change.

Misc. update:
2006-03-17 15:14:14 -05:00
Quincey Koziol
3597bbd700 [svn-r12114] Purpose:
Code cleanup

Description:
    Re-alphabetize the POSIX routines (again).  Also, add proper prototype
to HDrand() definition.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Too minor to require h5committest
2006-03-17 14:54:40 -05:00
Leon Arber
11a590c02b [svn-r12113] Purpose:
Bug fix

Description:
There was a duplicate definition for HDsrandom and HDsrand left over in H5private.h

Solution:
Removed the two duplicate definitions.

Platforms tested:
heping (minor change)

Misc. update:
2006-03-17 12:24:35 -05:00
MuQun Yang
a0653c727f [svn-r12111] Purpose:
minor change for collective code

Description:

Solution:

Platforms tested:
mir

Misc. update:
2006-03-17 09:12:17 -05:00
Leon Arber
bac394c495 [svn-r12110] Purpose:
Optimization

Description:
Get rid of unnecessary function call for systems that don't have rand_r.

Solution:
If rand_r isn't present on a system, then macros can be used to simply call
the underlying random function instead of calling the HDrand/HDsrand functions
that keep track of the random seed within the library.


Platforms tested:
heping (minor change)

Misc. update:
2006-03-16 16:35:32 -05:00
Raymond Lu
6e8ba9561d [svn-r12109] Purpose: Backward compatibility support
Description: Added H5E_NONE_MAJOR and H5E_NONE_MINOR as a major and minor
error message.  Their messages are "no error", but because the old library
had them, they're added in for backward compatibility.


Platforms tested: fuss - simple change.
2006-03-16 16:29:23 -05:00
Quincey Koziol
2d6bcc3212 [svn-r12108] Purpose:
Code cleanup

Description:
    Move VAX floating-point definitions down by the other machine specific ones.

    Re-work the version handling for VAX byte ordered floating-point numbers.
Version numbers ought to be strictly increasing, not a bit-field.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
2006-03-16 16:14:14 -05:00
Raymond Lu
4e6b22e04d [svn-r12107] Purpose: Minor change
Description: Changed macro from VMS to H5_VMS.


Platforms tested: no test needed.
2006-03-16 15:27:27 -05:00
Quincey Koziol
58db790d25 [svn-r12104] Purpose:
Code cleanup

Description:
    Re-alphabetize POSIX macros.

Platforms tested:
    None, just eyeballed, too minor.
2006-03-16 13:49:29 -05:00
Quincey Koziol
357dc7ee99 [svn-r12102] Purpose:
Code cleanup

Description:
    Clean up formatting & comments, etc.

Platforms tested:
    None, very minor
2006-03-16 13:43:26 -05:00
Quincey Koziol
49ab3665aa [svn-r12093] Purpose:
Code checkpoint

Description:
    Checkpoint fractal heap changes - mostly internal changes to better
handle more direct blocks from root indirect block.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Linux 2.4 (chicago)
    Mac OS X (amazon)
2006-03-15 15:16:04 -05:00
Raymond Lu
a2a98a8135 [svn-r12091] Purpose: Support for VAX floating-point types.
Solution: Support VAX float and double types with new byte order. There're some
details not yet included,
1. the alignment detection for VAX order in H5detect.c.
2. support for special values in library conversion functions.
3. the infinity for VAX in H5T_init_inf.
4. support for VAX types in printing hexadecimal format.


Platforms tested: h5committest and fuss.
2006-03-14 17:11:21 -05:00
MuQun Yang
a4c816eb75 [svn-r12090] Purpose:
New APIs to add for collective chunk IO

Description:
Three new APIs
H5Pset_dxpl_mpio_chunk_opt_ratio
H5Pset_dxpl_mpio_chunk_opt_num
H5Pset_dxpl_mpio_chunk_opt

for optional optimization choices from users.
Solution:
Haven't added tests yet, won't affect other parts of the library.
Will add tests after urgent investigations of memory leaking problems from NASA Aura team.
Platforms tested:
heping: both parallel and sequential
shanti
Misc. update:
2006-03-14 13:29:35 -05:00
Quincey Koziol
5c6ea93f2f [svn-r12085] Purpose:
Bug fix

Description:
    Correct function name in FUNC_ENTER macro.

Platforms tested:
    None, just eyeballed, too minor to require more.
2006-03-14 08:23:10 -05:00
Quincey Koziol
ee3fdc2dbc [svn-r12084] Purpose:
Code checkpoint

Description:
    The fractal heap code is reasonably stable and is passing all its
current tests, so checkpoint everything with CVS.

    Also, add "statistics" module for v2 B-trees code, which is only a
stub right now.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Mac OSX (amazon)
    Linux 2.4 (chicago)
2006-03-13 14:47:16 -05:00
HDF Admin
c619cf0f51 [svn-r12083] Snapshot version 1.7 release 58 2006-03-13 13:38:16 -05:00
Quincey Koziol
81e95888f1 [svn-r12082] Purpose:
Bug fix

Description:
    Clean up a few code mis-matches that crept in during the last checkin.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Too minor to require h5commitest
2006-03-11 21:02:50 -05:00
Quincey Koziol
2501750f5e [svn-r12081] Purpose:
New feature

Description:
    Update "power of two" macro and add "general" log2() routine.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Too minor to require h5committest
2006-03-11 17:04:30 -05:00
Quincey Koziol
6af9839f16 [svn-r12080] Purpose:
New feature

Description:
    Add "variable-length" 32-bit encode/decode macros, matching the other
64-bit ones, for later use in the fractal heap code.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Too minor for full h5committest
2006-03-11 17:03:27 -05:00
Quincey Koziol
810cda019d [svn-r12079] Purpose:
Update code

Description:
    Add a new error value, for later use.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Too minor for full committest
2006-03-11 17:01:42 -05:00
Quincey Koziol
1f41dfca05 [svn-r12078] Purpose:
New features

Description:
    Add "find node greater than or equal to key" and "remove first" operations
to skip lists.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Too minor to require h5committest
2006-03-11 16:59:01 -05:00
Quincey Koziol
e054e736aa [svn-r12077] Purpose:
Code cleanup

Description:
    Fix/update formatting, clean up typos, etc.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Too minor to require h5committest
2006-03-11 16:57:18 -05:00
Elena Pourmal
3f791d1b06 [svn-r12054] Purpose: VMS port
Description: Made small changes to sec2 driver to reflect that VMS systems ino_t is 1dim array
             of size 3; all changes are marked with H5_VMS variable.
             Defined HDremove macro for VMS to remove multiple versions of the files.

Solution:

Platforms tested: heping, VMS server

Misc. update:
2006-03-09 16:30:19 -05:00
Fang Guo
de56ebab0e [svn-r12035] Purpose:
Description:
Two functions (HDsrand and HDrand) are not declared. They caused
compiling errors on Windows.  Declare these two functions:
 H5_DLL int HDrand();
 H5_DLL void HDsrand(unsigned int seed);

Solution:

Platforms tested:
Windows XP and heping
Misc. update:
2006-03-07 15:40:47 -05:00
Leon Arber
9fc71ccba4 [svn-r12021] Purpose:
Bug fix.

Description:
Fix typo.  srand/srandom don't return anything, so don't attempt to return
their value.

Solution:

Platforms tested:
heping

Misc. update:
2006-03-07 01:13:23 -05:00
Leon Arber
840bcbe9ef [svn-r12019] Purpose:
Bug fix/Feature

Description:
Modify the library to use rand_r, when available, instead of srand.  If
rand_r is not available, it will try to use srandom/random, and then finally
fall back to srand/rand.

Solution:
A couple places in the library use the srand() function to seed the random
number generator.  This can cause problems on certain platforms and could theoretically
cause problems for users who expect a certain sequence of random numbers following their
own call to srand().

Most platforms have an implementation of rand_r, which is identical to rand, except that
it allows for explicit storage of the seed value.  The configure script will now check
for the existence of rand_r to facilitate its use in the library.

Two new functions are added, to replace the macros HDsrand/HDrand.  These functions are HDrand and
HDsrand.  HDrand will call rand_r, if available, or random(), if available, and fall back to rand() if neither
of those is available.  HDsrand will store the seed value locally, if rand_r is available.  Otherwise, it will call
srandom if available, and fall back to srand otherwise.


Platforms tested:
heping, mir.  Really need to test on Red Storm, since that platform motivated this fix, but the machine
is currently not available.

Misc. update:
2006-03-06 23:23:24 -05:00
Quincey Koziol
5f59c68e7f [svn-r12017] Purpose:
Bug fix

Description:
    Correct problem with new log2(n) routine on 64-bit machines.

Solution:
    Put some casts in to make certain that the values are computed as 32-bit
integers.

Platforms tested:
    Linux 2.4 (mir) - 64-bit
2006-03-06 22:26:31 -05:00
Quincey Koziol
13705e7583 [svn-r12007] Purpose:
Bug fix

Description:
    Fix typo in H5HF_dblock_debug() prototype

Platforms tested:
    FreeBSD 4.11 (sleipnir)
2006-03-05 10:39:25 -05:00
Quincey Koziol
dfbf976509 [svn-r12004] Purpose:
New feature & code cleanup

Description:
    Update fractal heap to be able to insert objects into a direct block
hanging off the header.

    Extract "octal dump" code into separate routine so that both the local
heaps & fractal heaps can use it.

    Other code cleanups & support to get this far.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Linux 2.4
2006-03-04 17:56:44 -05:00
Quincey Koziol
0e708b387c [svn-r12003] Purpose:
Code cleanup

Description:
    Fix some warnings & formatting issues

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Linux 2.4
2006-03-04 17:38:37 -05:00
James Laird
3f2f490a0f [svn-r11993] Purpose:
Added HL examples

Description:
Examples existed for the HL lite, image, and table interfaces, but
were never included in the distro... until now!

Solution:
Added source files to CVS, updated Makefile and MANIFEST.

Platforms tested:
mir, heping, shanti
2006-03-01 10:04:59 -05:00
Albert Cheng
0004361cc7 [svn-r11991] Purpose:
Porting.

Description:
Red Storm's lustre used srand and rand to initialize their user mode
of lustre.  HDF5 also uses srand and that messes up Lustre.

Solution:
Use -DRED_STORM to block out the HDF5 code that calls srand.
This is a temporary fix since Lustre has fixed its code from
calling srand and rand but the fix is not deployed at Red_storm
yet.

Platforms tested:
Tested at Red-Storm.
2006-02-28 19:27:20 -05:00
Quincey Koziol
658bf4a8fb [svn-r11968] Purpose:
Incrementtal checkin

Description:
    Revise & update v2 B-tree code to separate the internal package-specific
routines from the library-callable "private" routines.

    Similar updates for the fractal heap code.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Mac OSX (amazon)
2006-02-27 09:52:21 -05:00
Quincey Koziol
3713db1174 [svn-r11967] Purpose:
New feature

Description:
    Check in initial "fractal heap" code, for supporting the group redesign.

    Also, remove some remnants of the segmented heap/block tracker/B+tree code
which I didn't find during the last pass.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Mac OSX (amazon)
    Linux 2.4
2006-02-26 22:46:46 -05:00
Quincey Koziol
3e8948df52 [svn-r11966] Purpose:
Code cleanup

Description:
    Style fixes for consistency & other minor cleanups

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Mac OSX (amazon)
    Linux 2.4
2006-02-26 22:30:22 -05:00
Quincey Koziol
b2d288804d [svn-r11965] Purpose:
Maintenance

Description:
    Remove half-built (half-baked? :-) implementation of B+tree, block tracker
and segmented heaps.   (In preparation for starting the new heap coding)

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Linux 2.4 (heping)
2006-02-24 08:45:02 -05:00
MuQun Yang
8962992298 [svn-r11964] Purpose:
bug fix

Description:



ret_value is not set to SUCCEED in H5D_mpio_select_write
That causes the 64-bit intel compiler unhappy.
It will give a non-zero number and cause the testing  fake failure.
Another one is picked up by cmpi again. For one optimization case,
another variable is not initialized properly and compiler set an unhappy number,
cause the test failed.
Solution:
Properly initialize those variables.

Platforms tested:
teragrid:parallel
mir:parallel
heping: parallel and sequential
tungsten:parallel

Misc. update:
h5committest doesn't finish due to no space left on device.
parallel tests still failed at tungsten with cmpi. It looks like it was a bug from cmpi.
2006-02-23 16:47:51 -05:00
MuQun Yang
19476ba364 [svn-r11963] Purpose:
bug fix for daily test

Description:
if (fm->select_chunk) is not NULL at sequential mode and not set by the library, it shouldn't be free.
Otherwise, it will cause failures in the daily test.

Solution:
Explicitly set (fm->select_chunk) to NULL for non-parallel case.


Platforms tested:
copper with parallel
heping with both sequential and parallel
shanti with sequential

Misc. update:
Hopefully only mir failed at daily test.
2006-02-22 14:50:27 -05:00
MuQun Yang
c0fbd63983 [svn-r11961] Purpose:
Bug fix in collective IO code

Description:
When select none occurs in one process, fm->select_chunk hasn't been allocated the memory(not allocated until create_file_hyper); however, this needs to be checked; it was caught with cmpi at NCSA linux cluster.



Solution:
Relocate the place to allocate the memory space for fm->select_chunk.

Platforms tested:
cmpi at tungsten
mpich at heping
kind of minor and let daily test catch other errors.

Misc. update:
This won't fix the failure at mir.
2006-02-21 17:10:23 -05:00
MuQun Yang
a6038b946e [svn-r11960] Purpose:
code clean up

Description:
Clean up some warnings in collective chunk IO code

Solution:

Platforms tested:
heping

Misc. update:
2006-02-21 09:14:22 -05:00
MuQun Yang
593f1a9a51 [svn-r11959] Purpose:
bug fix

Description:
During the process of the combination of collective chunk IO code and the original IO code,
The return value of a function call hasn't been initialized. On 32-bit mode at modi4, that value isn't set to 0 by default. So a fake error value returns.

Solution:
Re-arrange the code so that the return value will be set properly.


Platforms tested:
parallel:
modi4 - 32bit
heping
seq:
heping
Misc. update:
2006-02-20 15:47:25 -05:00