Commit Graph

152 Commits

Author SHA1 Message Date
lrknox
25ec07450a Change copyright headers to replace url referring to file to be removed
and replace it with new url for COPYING file.

Fix 2 lines in java error test expected output file where messages
include line numbers changed by reducing the copyright header by 2
lines.
2017-04-14 11:54:16 -05:00
Quincey Koziol
0313cbb91d Final merge of page buffering branch to develop 2017-03-13 21:30:37 -07:00
Neil Fortner
7de719287a [svn-r30270] Fix an issue that could occur when allocating a chunked dataset in parallel,
with an alignment threshold set to be larger than the chunk size but smaller
than the size of the small data aggregator.

Tested: koala, ostrich (h5committest); jelly, ummon
2016-08-08 16:56:50 -05:00
Quincey Koziol
d3b724f86a [svn-r30201] Description:
Switch test framework to dynamically allocate the testing array, and
expand the length of the description field.

Tested on:
    MacOSX/64 10.11.5 (amazon) w/serial & parallel
    (h5committest forthcoming)
2016-07-18 17:36:44 -05:00
Quincey Koziol
b8f809981b [svn-r30112] Description:
Move updated flush dependency code in metadata cache from revise_chunks
branch to trunk.  Also many of the cleanups from r30111 in the revise_chunks
branch.

Tested on:
    MacOSX/64 10.11.5 (amazon) w/serial, parallel & production
    (h5committest forthcoming)
2016-06-28 16:39:09 -05:00
Allen Byrne
1bd3635781 [svn-r29880] Add HD to sleep function calls 2016-05-04 11:16:45 -05:00
Mohamad Chaarawi
d12a994986 [svn-r29088] - Add a test for retrieving the property values for the new coll md functions.
- ifdef some code that don't need to be built in parallel
- more minor enhancements

tested on bb-8 with parallel and serial
2016-02-11 11:03:44 -05:00
Mohamad Chaarawi
25f271d84b [svn-r29079] rename the coll read requirement function. 2016-02-10 13:19:12 -05:00
Quincey Koziol
c8a6c6030a [svn-r29077] Description:
Normalize against the trunk, in preparation for final merge.

Tested on:
    MacOSX/64 10.11.3 (amazon) w/serial & parallel
    (h5committest not required on this branch)
2016-02-10 12:55:55 -05:00
Mohamad Chaarawi
c3f08947c1 [svn-r28959] merge from trunk.
renaming metadata dxpl properties.
2016-01-22 11:56:09 -05:00
Mohamad Chaarawi
2824e6bef0 [svn-r28649] - add new API to toggle collective metadata write.
- set default to FALSE
- fix some bugs.
2015-12-14 14:53:31 -05:00
Mohamad Chaarawi
8d131aca15 [svn-r27929] merge from trunk. 2015-10-01 11:12:02 -05:00
Quincey Koziol
1023374492 [svn-r27768] Description:
Complete revamp of package initialization/shutdown mechanism in the library.
Each package now has a single init/term routine.

    This new way should avoid packages being re-initialized during library
shutdown and is also be _much_ more proactive about giving feedback for
resource leaks internal to the library.

    Introduces a new "module" header file for packages in the library
(e.g src/H5Fmodule.h) which sets up some necessary package configuration macros
for the FUNC_ENTER/LEAVE macros.  (The VFL drivers have their own slightly
modified version of this header, src/H5FDdrvr_module.h)

    Also cleaned up a bunch of resources leaks all across the library and tests,
along with addressing many warnings, as I encountered them.

Tested on:
    MacOSX/64 10.10.5 (amazon) w/serial & parallel
    Linux/64 3.10.x (kituo) w/serial & parallel
    Linux/64 2.6.x (ostrich) w/serial
2015-09-13 22:58:59 -05:00
Mohamad Chaarawi
cf07aa6803 [svn-r27261] apply metadata enhancement patch that was based on the mdc 3 branch. 2015-06-21 16:45:01 -05:00
Mohamad Chaarawi
cbd0460b1b [svn-r25921] - wrap MPI 3 usage with MPI_VERSION compile time check.
- build out unbuffered stdout/err for windows
2014-12-23 09:54:47 -05:00
Mohamad Chaarawi
87bed2c752 [svn-r25651] Fix for: HDFFV-8715
HDF5_PARAPREFIX is ignored in parallel dense attribute and performance tests.

tested on Jam w/ parallel.
2014-10-01 17:02:41 -05:00
Mohamad Chaarawi
8771fba1de [svn-r25503] - fix bug in encode/decode plist parallel test when 1 proccess is used to run the test.
- fix warning in t_chunk_alloc.
2014-08-01 14:24:52 -05:00
Mohamad Chaarawi
92cc75bfae [svn-r25401] add serial and parallel regression tests for zero dset read/write bug. 2014-07-09 14:01:25 -05:00
Quincey Koziol
2e4302818a [svn-r24864] Description:
Remove all traces of MPI-POSIX VFD and GPFS detection/code.

    Remove remaining traces of stream VFD.

    Remove testpar/t_posix_compliant test (it's not actually verifying anything).

    Clean up H5D__mpio_opt_possible() further.

    Moved environment variable that disables MPI collective operations into
MPI-IO VFD (instead of it being in src/H5S.c).

    A few other small code cleanups.

Tested on:
    Mac OSX/64 10.9.2 (amazon) w/parallel & serial
2014-03-21 18:02:24 -05:00
Mohamad Chaarawi
6ceb9711b8 [svn-r24612] fix bugs in parallel tests exposed in corner cases when running with 1
or 2 processes.

First bug is in testpar/t_mdset.c, where the test reports an error in
addition to skipping the test if there are less than three procs. Fix
to just skip the test.

Second bug is in testpar/t_dset.c in actual_io_mode tests, where
incorrect expected value for IO mode was set if the number of procs
running the test is 1.

tested with h5committest.
2014-01-06 12:56:45 -05:00
Quincey Koziol
b4331b2ff3 [svn-r23529] Description:
Stop aliasing property to indicate internal collective metadata operations
with property to perform collective raw data operations from the application.

Tested on:
    Mac OSX/64 10.8.3 (amazon) w/paralllel
2013-04-02 21:50:50 -05:00
Jonathan Kim
51c5bf8aa7 [svn-r22992] Purpose:
HDFFV-8146 - Remove "multi-chunk IO without optimization" sub-feature from MPI I/O optimization for chunked dataset feature

Description:
  The “multi-chunk IO without optimization” feature is removed and made the related xfer property (H5FD_MPIO_CHUNK_MULTI_IO) go directly to “multi-chunk-io” feature.
  Also update/fix/cleanup testings (chunk collective IO and actual chunk opt mode) accordingly.
    
Tested: 
    jam (linux32-LE), koala (linux64-LE), ostrich (linuxppc64-BE), fred (mac64-LE), Windows (32-LE cmake), cmake (jam)
2012-10-30 11:28:17 -05:00
Quincey Koziol
6a89177036 [svn-r22807] Description:
Add encode/decode API routines for property lists: H5Pencode/H5Pdecode.

Tested on:
        FreeBSD/32 8.2 (loyalty) w/gcc4.6, w/C++ & FORTRAN, in debug mode
        FreeBSD/64 8.2 (freedom) w/gcc4.6, w/C++ & FORTRAN, in debug mode
        Linux/32 2.6 (jam) w/PGI compilers, w/default API=1.8.x,
                w/C++ & FORTRAN, w/threadsafe, in debug mode
        Linux/64-amd64 2.6 (koala) w/Intel compilers, w/default API=1.6.x,
                w/C++ & FORTRAN, in production mode
        Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
                w/szip filter, w/threadsafe, in production mode
        Linux/PPC 2.6 (ostrich) w/C++ & FORTRAN, w/threadsafe, in debug mode
        Linux/64-ia64 2.6 (ember) w/Intel compilers, w/parallel, C++ & FORTRAN,
                in production mode
        Mac OS X/32 10.7.3 (amazon) in debug mode
        Mac OS X/32 10.7.3 (amazon) w/C++ & FORTRAN, w/threadsafe,
                in production mode
        Mac OS X/32 10.7.3 (amazon) w/parallel, in debug mode
2012-09-25 10:47:25 -05:00
Jonathan Kim
0aa8d4d88a [svn-r22735] Purpose:
HDFFV-8143 Provide a routine(s) for telling the user why the library broke collective data access

Description:
    Added H5Pget_mpio_no_collective_cause() function that retrive reasons why the collective I/O was broken during Read/Write IO access.
    Reasons to break collective I/O:
     - SET_INDEPENDENT
     - DATATYPE_CONVERSION
     - DATA_TRANSFORMS
     - MPIPOSIX
     - NOT_SIMPLE_OR_SCALAR_DATASPACES  (NULL Space)
     - POINT_SELECTIONS
     - NOT_CONTIGUOUS_OR_CHUNKED_DATASET  (Compact or External-Storage)
     - FILTERS  

Tested: 
    jam (linux32-LE), koala (linux64-LE), ostrich (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE)
2012-09-04 12:00:38 -05:00
Mohamad Chaarawi
c3247876b1 [svn-r22651] fix a bug that would skip or include the parallel atomicity test with cmd arguments -o or -x 2012-08-09 13:09:56 -05:00
Allen Byrne
5e388aa257 [svn-r22385] Skip tests using sparse file writes on Windows. JIRA issue (JIRA HDDFV-8064) created. 2012-05-21 15:37:19 -05:00
Quincey Koziol
c2a9dcb897 [svn-r22219] Description:
Merge "file image" changes from feature branch back to trunk.

Tested on:
    Mac OSX/64 10.7.3 (amazon) w/debug
    (h5committest upcoming)
2012-03-31 03:49:35 -05:00
Mohamad Chaarawi
dd1b2c3208 [svn-r22115] Add 2 new API routines to set/unset file atomicity for files opened with the MPI-IO VFD
Add test cases for these two routines
Jira issue HDFFV-7961
2012-03-21 16:00:48 -05:00
Quincey Koziol
3d15d9d681 [svn-r21442] Description:
Check in "actual I/O mode" feature to trunk.  Will merge back to 1.8 branch
after it bakes over the weekend.

Tested on:
    FreeBSD/32 8.2 (loyalty) w/gcc4.6, w/C++ & FORTRAN, in debug mode
    FreeBSD/64 8.2 (freedom) w/gcc4.6, w/C++ & FORTRAN, in debug mode
    Linux/32 2.6 (jam) w/PGI compilers, w/default API=1.8.x,
        w/C++ & FORTRAN, w/threadsafe, in debug mode
    Linux/64-amd64 2.6 (koala) w/Intel compilers, w/default API=1.6.x,
        w/C++ & FORTRAN, in production mode
    Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
        w/szip filter, w/threadsafe, in production mode
    Linux/PPC 2.6 (heiwa) w/C++ & FORTRAN, w/threadsafe, in debug mode
    Linux/64-ia64 2.6 (ember) w/Intel compilers, w/C++ & FORTRAN,
        in production mode
    Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in debug mode
    Mac OS X/32 10.6.8 (amazon) in debug mode
    Mac OS X/32 10.6.8 (amazon) w/C++ & FORTRAN, w/threadsafe,
        in production mode
2011-09-30 20:37:23 -05:00
Allen Byrne
cfc3760808 [svn-r21334] HDFFV-7687: add HD macro prefrix to functions and use h5_stat_t where necessary
reviewed
2011-08-30 10:35:30 -05:00
Albert Cheng
e6622c86a8 [svn-r19959] Bug: the VRFY macro, for some reason, called MPI_Finalize() when it encountered
error and wanted to exit the test program. This was not good since if only a
subset of processes called MPI_Finalize(), the other processes will likely
hang.  That happened in AIX that it would waited till the alarm signal to kill
the processes. Definitely a waste of time.
Solution: Changed it to call MPI_Abort.

That showed another problem. HDF5 has setup atexit post-process to try to close
unclose objects, release resources, etc.  But if the MPI processes have
encountered an error and has been aborted, it is not likely any more MPI calls
can function properly. E.g., it would attempt to free some communicators in
the HDF5 MPIO file handle. It would again hang.
Solution: need to call H5dont_atexit() to disable any atexit post-processing.
This must be done early, like before calling H5open. This is added to each
parallel test main program.

testphdf5.h:
    Changed macros VRFY and MESG. Added comments too.

testphdf5.c:
t_mpi.c:
t_cache.c:
t_shapesame.c:
    Added H5dont_atexit.

Tested: h5committest.
2011-01-16 04:44:22 -05:00
Albert Cheng
2f54a4ba53 [svn-r19941] Purpose:
Moved the two shape same tests from testphdf5 to a separated executables,
named t_shapesame. The shape same tests runs too long for testphdf5.
In a separated executalbe, it will be easier to separate any errors in
testphdf5 sub-tests from the shape same tests.

t_shapesame.c:
   Contains the shape same tests (cloned from t_rank_projection.c) plus
   a duplicate of "testphdf5.c" for now. After verifying it is correct, more
   cleanup is needed.
testphdf5.c:
   Removed the two shape same tests (chsssdrpio & cbhsssdrpio).
Makefile.am:
Makefile.in:
   Added t_shapesame as a new test executable.
   Removed t_rank_projections.c from part of testphdf5.
testph5.sh.in:
   Temporary added the "t_shapesame -p" test for testing shape same tests
   with MPIO-Posix VFD.

Tested: h5committested, plus serial jam.
2011-01-11 23:38:59 -05:00
John Mainzer
f527b1a512 [svn-r19622] Port of fix for the round robin parallel flush bug caused by the failure
of the H5Ocache.c code to update its image of the on disk representation
of the object header on a call to the clear callback.

This wasn't an issue as long as all flushes of the object header were
made from the same process, but if an object header is modified, and
then flushed on one process and cleared on the rest, the changes were
not be reflected in the images of the on disk representation on all
processes where the object header was cleared rather than flushed.

If one of these processes did the next flush, the changes were lost in
the on disk representation.

Fixed this by causing all dirty messages and to be written to the copy
of the on disk image maintained by the object header code on both flush
and clear.

Also added associated test code in t_mdset.c.

Also checking in some cache debug code developed while chasing this bug.

Commit tested and tested (parallel) on phoenix.
2010-10-17 10:13:24 -05:00
Quincey Koziol
f82774c0d5 [svn-r19092] Description:
Bring "shape same" changes from LBL branch to trunk.  These changes
allow shapes that are the same, but projected into dataspaces with different
ranks to be detected correctly, and also contains code to project a dataspace
into greater/lesser number of dimensions, so the I/O can proceed in a faster
way.

	These changes also contain several bug fixes and _lots_ of code
cleanups to the MPI datatype creation code.

	Many other misc. code cleanup are included as well...

Tested on:
        FreeBSD/32 6.3 (duty) in debug mode
        FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
        Linux/32 2.6 (jam) w/PGI compilers, w/default API=1.8.x,
                w/C++ & FORTRAN, w/threadsafe, in debug mode
        Linux/64-amd64 2.6 (amani) w/Intel compilers, w/default API=1.6.x,
                w/C++ & FORTRAN, in production mode
        Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
                w/szip filter, in production mode
        Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
                in production mode
        Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in debug mode
        Mac OS X/32 10.6.3 (amazon) in debug mode
        Mac OS X/32 10.6.3 (amazon) w/C++ & FORTRAN, w/threadsafe,
                in production mode
2010-07-19 00:05:45 -05:00
Quincey Koziol
347c41995b [svn-r17376] Description:
Make similar change to windows VFD as sec2 VFD, when converting from
a family file to a single file.

	Tweak file sizes expected for parallel tests.

Tested on:
	tg-login3, w/parallel
	Windows (post facto)
2009-08-18 15:22:14 -05:00
Christian Chilan
2c94653c7e [svn-r16770] Modified parallel tests so they can run with arbitrary number of processors.
Tested on jam and abe.
2009-04-16 20:32:13 -05:00
Christian Chilan
23eb0393de [svn-r16723] Modified dset and t_chunk_alloc tests to use dataset dimensions that are multiples of the number of processors.
Tested on jam and abe.
2009-04-09 16:32:52 -05:00
Christian Chilan
149fd72322 [svn-r16659] Modified dset and t_chunk_alloc tests to use dataset dimensions that are multiples of the number of processors.
Tested on jam and abe.
2009-04-02 16:28:48 -05:00
Quincey Koziol
bdd7d59902 [svn-r15628] Description:
Remove trailing whitespace from C/C++ source files, with the following
script:

    foreach f (*.[ch] *.cpp)
        sed 's/[[:blank:]]*$//' $f > sed.out && mv sed.out $f
    end

Tested on:
    Mac OS X/32 10.5.5 (amazon)
    No need for h5committest, just whitespace changes...
2008-09-16 10:52:51 -05:00
Scott Wegner
7a92820e35 [svn-r15183] Purpose: _WIN32 macro cleanup
Description:
As part of our Windows cleanup, we try to remove windows-specific tweaks in the source code.  There are many instances where Windows code is introduces via ifdef's.  We re-evaluate whether they are still required, and found that many of them are not.  Others we change to "feature"-specific code, rather than Windows-specific.

Tested:
VS2005 on WinXP
VS.NET on WinXP
h5committest (kagisopp, smirom, linew)
2008-06-09 13:41:29 -05:00
Quincey Koziol
10dcf4b0e1 [svn-r14098] Description:
Clean up a few remaining API compatibility issues in the H5E API for
parallel configurations

Tested on:
	FreeBSD/64 6.2 (liberty) w/parallel
2007-08-21 16:47:41 -05:00
Raymond Lu
6262a14f2e [svn-r14096] There're 3 changes in this checkin as below:
1. In H5Dwrite and H5Dread, let the data buffer point to a fake address if the application passes
     in an empty buffer.  This is mainly for MPIO programs that some processes may not have any 
     data to write or read but still participate the I/O.  This solution solves some MPI's problem
     like the ChaMPIon on tungsten which doesn't support empty buffer.
  2. The ChaMPIon on tungsten doesn't support complex derived MPI data type correctly and collective
     I/O when some processes don't have any data to write or read correctly.  Detect the compiler
     "cmpicc" in the system-specific config file and set the variables for these two cases to false.
     The PHDF5 library already has set up a way to switch collective chunked I/O to independent 
     under these two cases.
  3. A bug fix - During the work of the optimization for compound data I/O, the case for switching
     collective chunked I/O to independent I/O was leftout.  Fixed it by adding I/O caching to it in
     H5D_multi_chunk_collective_io in H5Dmpio.c.

Tested on tungsten, cobalt, and kagiso for parallel; on linew and smirom for serial.
2007-08-20 16:55:38 -05:00
Christian Chilan
abcba9a50a [svn-r13778] Add test_filter_read to testphdf5. 2007-05-21 19:06:37 -05:00
Scott Wegner
87a41d4286 [svn-r13766] In Visual Studio 2005 for 64-bit, _WIN32 is defined, but not WIN32, so I've standardized all #ifdef's to use _WIN32. This should not affect any other platform.
Tested:
Visual Studio (32- and 64-bit) on Win XP
2007-05-18 10:14:43 -05:00
Albert Cheng
ed7d456e51 [svn-r13253] Updated all C and C++ style source code files with the THG copyright notice.
Tested platform:
Kagiso only since it is only a comment block change.  If it works in one
machine, it should work in all, I hope.  Still need to check the parallel
build on copper.
2007-02-07 09:56:24 -05:00
Albert Cheng
1c53181756 [svn-r12967] Cleanup.
The h5_mpi_get_file_size() is no longer used.  The unused code caused some
compiling warning messages.  Removed the whole routine.

Tested in heping pp mode.
2006-11-21 23:21:02 -05:00
Albert Cheng
ad80fe7ea9 [svn-r12725] Purpose:
Bug Fix (Bug 544)

Description:
SGI Altix's MPI_File_get_size overflowed at 2GB and more.
Put in a temporary patch to use stat() instead to make Cobalt
passing on this test (bigdset).  A better fix (like detect if
MPI_File_get_size does not work before using this is preferred.)

Tested:
Cobalt and Heping.
2006-10-05 19:27:05 -05:00
MuQun Yang
00b54cf131 [svn-r12554] New tests have been added to test the correctness of independent IO with file setview.
To activite this test,
add the command option -i.
For example, at IBM AIX, type "poe testphdf5 -i" will test the library with independent IO with file setview. It simply replaces all the collective IO tests with independent IO with file setview.
2006-08-08 22:16:07 -05:00
Quincey Koziol
7be3afb278 [svn-r12440] Purpose:
Code cleanup

Description:
    Trim trailing whitespace in Makefile.am and C/C++ source files to make
diffing changes easier.

Platforms tested:
    None necessary, whitespace only change
2006-06-27 09:45:06 -05:00
MuQun Yang
117dbae7f8 [svn-r12174] Purpose:
Adding parallel tests for optional collective chunk APIs

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
have been added to the libraries.

This check-in adds six tests to verify the funcationality and correctedness
of these APIs.
These tests need to be verified with 3 or more processors and with MPI-IO driver only.


Solution:
Using H5Pinsert, H5Pget, H5Pset to verify that the library indeed goes into the branch we hope for.
Using H5_HAVE_INSTRUMENT macro to isolate these changes so that it won't affect or be misused by the application.

Platforms tested:
h5committest(shanti still refused to be connected)
Parallel tests on heping somehow are skipped. Manually testing at heping. Have checked
1,2,3,4,5 processes.

Misc. update:
2006-03-29 09:35:26 -05:00