Move timing measurement routines used by h5perf and h5perf_serial to tools/lib
so that they can be used by other tools too.
tools/lib/io_timer.c
tools/lib/io_timer.h
tools/perform/io_timer.c
tools/perform/io_timer.h
renamed perform/io_timer.[ch] to lib/io_timer.[ch]
tools/lib/Makefile.am
tools/lib/Makefile.in
tools/lib/CMakeLists.txt
tools/perform/Makefile.in
tools/perform/Makefile.am
tools/perform/CMakeLists.txt
MANIFEST
updated due to the move.
Tested; h5committest and jam (serial)
tools/perform/sio_timer.h:
tools/perform/pio_timer.c:
tools/perform/io_timer.h:
tools/perform/io_timer.c:
Renamed pio_timer.[ch] as io_timer.[ch];
merged content of sio_timer.[ch] into io_timer.[ch] so that both h5perf and h5perf_serial
call the combined io_timer.[ch].
Moved the debug printing code segment in set_time() in [sp]io_timer.c to as debug_start_stop_time() in [sp]io_perf.c where it belongs.
Screened out set_timer_type() and get_timer_type() which were not used by any code.
tools/perform/Makefile.am:
tools/perform/Makefile.in:
tools/perform/CMakeLists.txt
Adjusted to use io_timer.c for both h5perf and h5perf_serial.
tools/perform/pio_perf.c:
tools/perform/sio_perf.c:
tools/perform/pio_perf.h:
tools/perform/sio_perf.h:
Renamed [sp]io_time_destory() to same io_time_destroy();
Moved the debug printing code segment in set_time() in [sp]io_timer.c to as debug_start_stop_time() in [sp]io_perf.c where it belongs.
tools/perform/pio_engine.c:
tools/perform/sio_engine.c:
Removed #include io_timer.h since it was already #include by [sp]io_perf.h.
MANIFEST:
Updated the merge of [sp]io_timer.[ch] into io_timer.[ch].
Tested: h5committest and jam in extra.
Clean up EOF code within library and add 'mem_type' parameter to 'get_eof'
VFD callback, to avoid various ambiguous situations, particularly with the
multi VFD. (Supports changes for 'avoid_truncate' feature also)
Tested on:
MacOSX/64 10.10.1 (amazon) w/serial & parallel
h5committest forthcoming
Minor code cleanups found while reviewing 'avoid_truncate' changes.
Tested on:
MacOSX/64 10.10.1 (amazon) w/serial & parallel
(too minor to require h5committest)
Benchpar.c is retired/deleted. If it is ever needed, it can be retrieved from the SVN repository
or even previous version of HDF5 source code.
Tested: jam parallel make passed.
Minor code cleanups found while reviewing 'avoid truncate' branch.
Tested on:
MacOSX/64 10.10.1 (amazon) w/serial & parallel
(too minor to require h5committest)
Minor code/comment cleanups, found while reviewing 'avoid truncate' code.
Tested on:
MacOSX/64 10.10.1 (amazon) w/serial & parallel
(Too minor to require h5committest)
Fix cmakehdf5 so that it can figure out where the source directory is.
It expects cmakehdf5 itself resides at $srcdir/bin/cmamkehdf5.
Tested: Jam by invoking cmakehdf4 with different paths.
different language API's and testings. See "cmakehdf5 --help" for details.
Tested: jam using different combinations of option and verified correctness
by inspeacting libhdf5.settings output.
Previously, ph5diff may hang in a test in Linux 32 platform(HDFFV-587).
No solution was available and a patch to bypass the test is implemented.
Since the company is changing domain name soon, the patch would not be valid any more.
Tests were done (repeat 100 mpiexec -np 6 ./ph5diff -v h5diff_hyper1.h5 h5diff_hyper2.h5)
and the previous hanging problem did not occur. It is likely the newer versions of
mpich no longer have this problem. Therefore, it is decide to remove this patch
to make the test script cleaner, if nothing else.
Tested: ran build and test in Jam (linux 32) and the repeat 100 command mentioned above.
All passed.
Revert r25273, 25283 & 25439 (the hyperslab improvement changes). They
are buggy and it's taking me a long time to correct the problem. I'll check
in a revised form of the changes when I've got them straightened out.
Tested on:
Mac OSX 10.10.0 (amazon) w/gcc 4.9.x, C++, FORTRAN
Linux 2.6.x (jam) w/parallel
script. The warnings that this generates cannot easily be resolved in
platform-independent C code since gnu expects the non-standard (gnu)
'D' suffix for double constants.
It's still technically useful for catching float and long double
constants, but should probably be enabled by developers on an
as-needed basis for that purpose so the spurious warnings are
avoided.
Tested on a local linux VM with gcc 4.8.2. This is a very minor change.