feature change, new feature.
Description:
Had the HDF5_PARAPREFIX default set to /tmp.
Changed it to null so that data files are created in current directory
by default.
Also added a code to print data filename used when debug level > 0.
Platforms tested:
Tested in modi4 parallel.
Misc. update:
Code cleanup
Description:
Remove the fill-value option entirely, since the 1.5.x library's default
behavior is now the same as the 1.4.x behavior and also there is no
corresponding code for implementing fill-values with the POSIX or MPI-I/O tests.
Platforms tested:
FreeBSD 4.8 (sleipnir) w/parallel
too small to need h5committest
Code cleanup
Description:
Change some variables that are keywords in C++ to non-keywords.
Platforms tested:
FreeBSD 4.8 (sleipnir)
too minor to require full h5committest
minor improvment
Description:
corrected an omission in the usage help output.
Added more parameters checks.
Solution:
Platforms tested:
Only in modi4.
Misc. update:
Bug Fix
Description:
On HP-UX platforms, the "open()" function needs to specify that the
file being created has permissions S_IRWXU, which means that it gives
read/write/execute permissions to the user who created the file (how
nice of it!).
Solution:
Added the S_IRWXU flag to the open() function call.
Platforms tested:
HP-UX 11
Arabica,
Modi4,
Verbena
Misc. update:
Compatibility fix
Description:
The H5P[set|get]_fapl_mpiposix calls changed between v1.4.x and v1.5.x.
Solution:
Wrap them in the v1.4 backward compatibility #ifdefs and update tests, etc.
Platforms tested:
FreeBSD 4.8 (sleipnir) w/paralle & v1.4 compatibility
h5committest pointless
"Bug fix"
Description:
This version is showing very slow HDF5 I/O write speeds (about 40%
of MPIO). It was because the library is writing fill values by
default. There is a no-fill option which set to FALSE. Changed
it to TRUE since MPIO and POSIX are not doing fill values.
This is just a stop gap fix since the better fix would be to
change the library to not write fill-values in this case.
Platforms tested:
modi4 parallel and LANL Q paralllel.
No h5committest test because it is very trivia.
Misc. update:
Purpose:
Added sanity check that min number of processes be not greater
than max number of processes.
Platforms tested:
copper only since this is a very simple change.
Misc. update:
Bug fix.
Description:
The default setting of max transfer size is larger than
the default setting of number of bytes per process, result
in complaints that Transfer size is too big.
Solution:
Cap the min and max transfer size with number of bytes per process.
Always cap min transfer size with the max xfer size.
Platforms tested:
Copper.
Misc. update:
Code Improvements/Bug Fixes
Description:
Comparison of equality of a double/float variable to 0.0 is not
guaranteed to work and is bad practice.
Solution:
Test that the absolute value of the variable is < a very small
positive number.
Platforms tested:
Modi4 (Parallel & Fortran)
Verbena (C++ & Fortran)
Arabica (Fortran)
Misc. update:
Bug Fix
Description:
The "mkstemp()" function isn't as portable as I hoped it would be (it
fails on Crays and other beasts).
Solution:
Removed and just use a fixed filename instead.
Platforms tested:
Linux
Solaris w/ zlib
Irix w/ zlib
Misc. update:
Bug Fix
Description:
When I changed the H5P{set,get}_fapl_mpiposix functions to accept
another parameter, I didn't change it in these files.
Solution:
Added the new "use_gpfs" parameter.
Platforms tested:
Modi4 (only affects the parallel stuff, so no need for full testing).
Misc. update:
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.
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++
Add benchmark
Description:
Add multi-D hyperslab benchmark to repo. It's not hooked up to any makefiles
yet, so it's not being compiled or tested, etc. I'm just stashing it here
so I don't forget about it until I have time to integrate it properly.
Code cleanup
Description:
Cleaned up more compiler warnings...
Platforms tested:
FreeBSD 4.6 (sleipnir) w and w/o parallel
Linux 2.2.x (eirene) w/FORTRAN & C++
Solaris 2.7 (arabica) w/FORTRAN
IRIX64 6.5 (modi4) w/FORTRAN & parallel
Update, Bug Fix, and Feature Add
Description:
- Updated how AC_{ENABLE,WITH} help messages were being generated.
Autoconf now gives you an AC_HELP_STRING macro to use to create
them.
- Fixed the problem with Linux LFS on RedHat 7.3 machines. It wasn't
finding getdents64(), so we can't rely on that being present
anymore...
- Added GPFS detection and setting.
- Updated how compression is specified. It's no longer necessary to
test for HAVE_ZLIB_H, HAVE_LIBZ, and HAVE_COMPRESS2. The one macro
{H5_}HAVE_COMPRESSION takes care of all of these.
Solution:
Changed the check for Linux LFS from looking for getdents() to
looking at the version number of the kernel (using the uname -r
command). You can still override with the --enable-linux-lfs switch
if you really believe that your <2.4 kernel has LFS support.
Platforms tested:
Linux (2.2 and 2.4)
Bring in sync with v1.4 versions that have copyright statements
added.
Platforms tested:
eirene(pp). Only one machine tested because all changes are merely
comments.
New Feature
Description:
Added interleaved block pattern to MPI and HDF5 access methods. Also,
changed the blocks to just use the same size as the regular blocks for I/O,
instead of a separate block size.
Platforms tested:
IRIX64 6.5 (modi4) w/parallel
Feature Add
Description:
Allow you to specify the percentage you'd like a random buffer to be
compressible. It can go from 0% (non-compressible) to 100%
(completely compressible).
Platforms tested:
FreeBSD
Feature Add
Description:
Use the /dev/urandom device for random data if it's available. (That
is stat() doesn't return a -1 when ran on it). Use random() otherwise.
Platforms tested:
Linux, FreeBSD
Bug Fix
Description:
The test for compression needed to be reversed.
Solution:
Instead of "!(defined...) used just "(defined..."
Platforms tested:
Modi4
Bug Fix
Description:
Not all platforms have zlib. This shouldn't be compiled then.
Solution:
ifdef-ed the code out if the zlib wasn't specified.
Platforms tested:
Linux
Feature Update
Description:
It now writes an uncompressed version of the file out. The first
tests didn't look all that wonderful. Here is a typical output:
Buffer size == 1MB
Uncompressed Write Time: 0.55s
Uncompressed Write Throughput: 116.00MB/s
Compressed Write Time: 8.76s
Compressed Write Throughput: 7.31MB/s
Platforms tested:
Linux
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