Commit Graph

39 Commits

Author SHA1 Message Date
MuQun Yang
0f0a5eb918 [svn-r12044] Purpose:
Add new tests

Description:
Collective IO doesn't work for some platforms/mpio packages when more than
one process has no contributions to IO.
Solution:
1. Add a collective IO test to verify the correctness of the library when
   more than one process has no contributions to IO.
2. Add the similar MPI-IO test in t_mpi to help us maintain in more platforms.
Platforms tested:
heping, mir, copper
Misc. update:
2006-03-09 09:52:09 -05:00
Leon Arber
3888942e3a [svn-r11483] Purpose:
bug fix.

Description:
The complex derived datatype test assumed that the fill value would be 0.  This is not
the case on all systems.

Solution:
Modified the test to check against a known value in the outbuf array, instead of the fill value.

Platforms tested:
heping and MCR.

Misc. update:
2005-09-29 15:49:51 -05:00
Leon Arber
202b9ec55c [svn-r11481] Purpose:
bug fix.

Description:
Fixed typo in a comment.  The word "file" was supposed to be "fill."  The explanation of
how the complex derived datatype test works is much clearer now.

Solution:

Platforms tested:
minor change.

Misc. update:
2005-09-29 13:54:57 -05:00
MuQun Yang
e42782fa3a [svn-r11459] Purpose:
A bug fix

Description:
MPI_Status_IGNORE is treated as a NULL pointer for mpich 1.2.4 or similar MPI packages.
It caused segmentation fault for MPI derived datatype test.


Solution:
Define MPI_STATUS status,
and pass &status into MPI_File_read and MPI_File_write.

Platforms tested:
too trivial to test.

Misc. update:
2005-09-22 09:39:32 -05:00
Albert Cheng
d67e59d9b2 [svn-r11458] Purpose:
Improvement.

Description:
The test may hang if there are system failures that some processors
are not working.

Solution:
Added the ALARM calls to limit all tests be done with the default
alarm time.  So, even if a process is hanging, the ALARM signal
would terminate the process.

Platforms tested:
tg-login2 of NCSA.

Misc. update:
2005-09-21 23:32:24 -05:00
Albert Cheng
9c4dd70e36 [svn-r11292] Purpose:
"bug fix"

Description:
The test_mpio_derived_dtype() often hangs when fails.  So it was
not run by default to avoid hanging the daily tests or confusing
users.  But then new system or new codes in collective chunk fails
while one can't tell for sure if it is because of the complicated
derived type failures or something else.

Solution:
Changed the logic so it is skipped only if it is known that
the complicated MPI derived type does not work.  (This is
indicated by macro H5_MPI_COMPLEX_DERIVED_DATATYPE_WORKS NOT
defined.

Platforms tested:
heping pp (where it is tested by default).
Modi4 pp (where it is SKIPPED by default.)
I also forced modi4 to test it and modi4 said it actually
is working and should change the setting of
H5_MPI_COMPLEX_DERIVED_DATATYPE_WORKS to working?!!

Misc. update:
2005-08-23 17:41:42 -05:00
Albert Cheng
208436bfc4 [svn-r11291] Purpose:
Code cleaning.

Description:
The block of code that is conditioned by the H5_MPI_COMPLEX_DERIVED_DATATYPE_WORKS
and manipulates the return code of test_mpio_derived_dtype, does not really
belong in main.  If return code of test_mpio_derived_dtype needs to be
adjusted, it should be done in test_mpio_derived_dtype.

Solution:
Moved that block of code test_mpio_derived_dtype.

Platforms tested:
heping PP.

Misc. update:
2005-08-23 17:19:57 -05:00
Quincey Koziol
6b45f5172c [svn-r11245] Purpose:
Code cleanup

Description:
    Trim trailing whitespace, which is making 'diff'ing the two branches
difficult.

Solution:
    Ran this script in each directory:

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


Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Too minor to require h5committest
2005-08-13 15:53:35 -05:00
Albert Cheng
7ce84a1d39 [svn-r10510] Purpose:
Improvement.

Description:
The derived datatype test often hangs when it fails.  This blocks
daily test or automatic build. Run it only when hi verbose mode
is used.

Platforms tested:
Tested in eirene pp.

Misc. update:
2005-03-30 10:30:24 -05:00
MuQun Yang
9027e26be9 [svn-r10390] Purpose:
Add detailed comments for MPI derived data type test.

Description:

Solution:

Platforms tested:
heping(Only comments and printf messages were added, no need to test
on all platforms.)

Misc. update:
2005-03-23 13:38:35 -05:00
MuQun Yang
c33f593665 [svn-r10204] Purpose:
Provide a way to warn users on the usage of collective IO because of
potential MPI-IO bugs for some platforms.
Also provide a way for users to give us feedback if the vendor has
already fixed the problem so that we can turn off the hard-code macro
in our configure description file.

Description:
See above.


Solution:
Use a simple MPI complicated derived datatype program to check
whether derived data type works for this MPI-IO package.
Print out some messages to warn users if not working as we had expected.

Platforms tested:
AIX 5.1(copper) and Linux 2.4(heping)

Misc. update:
2005-03-11 17:18:45 -05:00
Albert Cheng
9d8d5392b2 [svn-r10125] Purpose:
Feature--to provide a standalone mode for t_mpi.c so that it can
be built outside of PHDF5 environment.

Description:
Move definitions that are common to all parallel test programs
to a new header file called testpar.h.
Leave only Parallel HDF5 tests related definitions in testphdf5.h.

Platforms tested:
heping (pp) and modi4(PP).  Copper was down.

Misc. update:
2005-03-02 23:06:14 -05:00
Quincey Koziol
427ff7da28 [svn-r9727] Purpose:
Bug Fix/Code Cleanup/Doc Cleanup/Optimization/Branch Sync :-)

Description:
    Generally speaking, this is the "signed->unsigned" change to selections.
However, in the process of merging code back, things got stickier and stickier
until I ended up doing a big "sync the two branches up" operation.  So... I
brought back all the "infrastructure" fixes from the development branch to the
release branch (which I think were actually making some improvement in
performance) as well as fixed several bugs which had been fixed in one branch,
but not the other.

    I've also tagged the repository before making this checkin with the label
"before_signed_unsigned_changes".

Platforms tested:
    FreeBSD 4.10 (sleipnir) w/parallel & fphdf5
    FreeBSD 4.10 (sleipnir) w/threadsafe
    FreeBSD 4.10 (sleipnir) w/backward compatibility
    Solaris 2.7 (arabica) w/"purify options"
    Solaris 2.8 (sol) w/FORTRAN & C++
    AIX 5.x (copper) w/parallel & FORTRAN
    IRIX64 6.5 (modi4) w/FORTRAN
    Linux 2.4 (heping) w/FORTRAN & C++


Misc. update:
2004-12-29 09:26:20 -05:00
Albert Cheng
63a3195fac [svn-r9453] Purpose:
Improvement.

Description:
Made all processes print hostname() by default so that it is easier
to spot problems.

Platforms tested:
Tested in copper only.  It is a trivial small change.

Misc. update:
2004-10-22 17:42:05 -05:00
Albert Cheng
1926a6538e [svn-r9130] Purpose:
bug fix.

Description:
The test routines only print error messages but not all of them
return number of errors detected back to the main routine which
always exit with a 0 status.  Thus make or shell commands could
not detect there were errors.


Solution:
Changed the test routines to return appropriate number of
errors to main routine which in turn exit with the appropriate
exit code if errors found.

Platforms tested:
Tested in Sol and eirene (pp).

Misc. update:
2004-08-20 00:03:28 -05:00
Albert Cheng
3c59678775 [svn-r9115] Purpose:
feature

Description:
Another revamp of the test interface.
TestInit: is used to register Test Program name, test program specific
   Usage and option parsing routines.
TestUsage: will invoke extra usage routine if provided.
TestParseCmdLine: will invoke extra option parsing routine if provided.
GetTestSummary() and GetTestCleanup() replaces the previous Summary and
CleanUp arguments of TestParseCmdLine.

test/testhdf5, test/ttsafe.c, testpar/t_mpi.c, testpar/testphdf5.c:
   All have been updated to use the new Test Routines.

testpar/t_mpi.c:
   Also a fix of a compiler optimization bug when pgcc in Linux is
   used to compile it.  Changed buf[] and expected to unsigned char
   type to avoid a bug that failed to do sign-extension.

Platforms tested:
"h5committested"
Also tested thread-safe option in eirene.
2004-08-19 01:32:47 -05:00
Albert Cheng
b6449ce42e [svn-r8501] Purpose:
Improvement


Description:
The MPI atomicity and file_sync tests may hang if a filesystem
is not able to support the operation.  This will block the
whole tests.  PHDF5 is not using either features.  So, removed
them from the default tests.


Platforms tested:
Only in eirene using pp.  Copper is still down.
2004-05-10 14:58:32 -05:00
Quincey Koziol
0a29514b9d [svn-r8383] Purpose:
Code cleanup

Description:
    Clean up lots of warnings based on those reported from the SGI compilers
as well as gcc.

Platforms tested:
    SGI O3900, IRIX64 6.5 (Cheryl's SGI machine)
    FreeBSD 4.9 (sleipnir) w/ & w/o parallel
    h5committest
2004-04-17 23:10:09 -05:00
Albert Cheng
d5fb4dfcef [svn-r8111] Purpose:
Improvement

Description:
Changed parsing of verbose level by the common test library routine.
Change t_mpi.c to use the Verbose control better.

Platforms tested:
verena (pp).

Misc. update:
2004-01-24 18:04:22 -05:00
Albert Cheng
f3113c02d5 [svn-r8096] Purpose:
Improvement.

Description:
Complete change of the verbose control to use the routines provided by
the test/libh5test.a.
Also put in a temporary fix for the H5Eset_auto() and H5Eget_auto()
so that the Compat code are isolated in one place rather than all over
the source file.

Platforms tested:
Tested in Eirene (parallel).

Misc. update:
2004-01-22 18:11:39 -05:00
Albert Cheng
71f3513337 [svn-r7841] Purpose:
new feature.

Description:
Added tests of 1wMr with options to apply Atomicity or File_sync.

Platforms tested:
only tested in eirene and Teragrid as this is just an MPI test.

Misc. update:
2003-11-12 23:01:22 -05:00
Albert Cheng
8f9eb1ae7f [svn-r7835] Purpose:
new test.

Description:
Added test_mpio_1wMr test which verify if the file system can support
1 process writes, many processes read.

Platforms tested:
h5committested.

Misc. update:
2003-11-11 23:55:46 -05:00
Albert Cheng
a9c79d6b61 [svn-r6286] Purpose:
bug fix
Description:
    Added a barrier to ensure all processes have finished using
    the file before cleaning it away.
    Added H5close() to ensure all HDF5 stuff are closed before
    calling MPI_Finalize.
Platforms tested:
    Tested h5committest {arabica (fortran), eirene (fortran, C++)
	modi4 (parallel, fortran)}? Yes
2003-01-15 11:06:47 -05:00
Quincey Koziol
ea052ffd55 [svn-r5674] Purpose:
Code cleanup

Description:
    Removed more compiler warnings, etc.

Platforms tested:
    Linux 2.2.x (eirene) w/parallel
2002-06-19 11:06:55 -05:00
Quincey Koziol
aefc39ac32 [svn-r5667] Purpose:
Code cleanup

Description:
    Turn on more warnings in the IRIX builds and clean them up.

Platforms tested:
    IRIX64 6.5 (modi4) w/parallel
2002-06-19 07:54:53 -05:00
Albert Cheng
dbca4a4022 [svn-r5516] Purpose:
Tidy up
Description:
    Old version showed tons of output even if MPI_Offset is too small
    to support multiple GB sized files and destined to fail.
    Output is pretty confusing.
Solution:
    Prints the signness and size of MPI_Offset for information.
    Skipped tests if MPI_Offset is not big enough to support the file
    sizes.
Platforms tested:
    modi4, eirene, burrwhite (all parallel).
2002-06-03 20:33:00 -05:00
Albert Cheng
5aeda255db [svn-r5222] Purpose:
feture
Description:
    add calls to show hostname.
Platforms tested:
    eirene (linux 2.2) parallel.
2002-04-22 15:24:59 -05:00
Albert Cheng
f28193d92c [svn-r4975] Description:
Users were alarmed by the OFFSET overflow and GB file size tests.
    Those tests only checks the limits of the MPI implementation, not
    really as an error.
Solution:
    Changed the VRFY macro to indicate it is an "ERROR".
    Modified the INFO macro to print messages as "REMARK (not an error)"
    so that users would not be alarmed.

    Added an explanation string in the GB file size write/read.
Platforms tested:
    eirene and modi4 (parallel)
2002-02-15 09:55:38 -05:00
Albert Cheng
cc8ba71296 [svn-r4399] Purpose:
Code cleanup
Description:
    This was "thrown" together in a quick way to test MPIO functionality.
    Cleaned out some embrassingly useless declaration to reduce compiler
    warnings.
Platforms tested:
    modi4-pp and eirene-pp.
2001-08-20 15:05:36 -05:00
Albert Cheng
80737b93ef [svn-r3973] Purpose:
Bug fix
Description:
    The t_mpi used to fail and exit if any error detected.
    That aborted other process in a "make check" situation.
Solution:
    Introduced a new error verification as INFO.  INFO is for
    information only.  It does not increase nerrors count.
    The program always exits with 0.
Platforms tested:
    eirene with mpich.
2001-06-07 01:36:08 -05:00
Albert Cheng
9c0f0b60dc [svn-r3903] Purpose:
Bug fix
Description:
    test_mpio_offset() was called with wrong syntax.  Dumb mistake.
Platforms tested:
    modi4, pp
2001-05-10 08:47:17 -05:00
Albert Cheng
3214f19350 [svn-r3901] Purpose:
Bug fix
Description:
    added a barrier to prevent racing condition before remove file and
    open file.
Platforms tested:
    modi4,pp
cVS: ----------------------------------------------------------------------
2001-05-10 08:40:07 -05:00
Albert Cheng
cde323f897 [svn-r3818] Purpose:
Bug fix and clean up.
Description:
    The part that should test 4GB was actually testing 2GB due to
    typo.
Solution:
    Corrected the typo to use 4GB constant.  Rearranged the code
    to group 2GB and 4GB tests in their own.  Removed some duplicated
    testing code.
Platforms tested:
    modi4.
2001-04-18 10:12:43 -05:00
Bill Wendling
e8ee45fa53 [svn-r3780] Purpose:
Update
Description:
    Changed

           #include <hdf5_file.h>

    to

           #include "hdf5_file.h"

     to be consistent with the new way of generating dependencies.
2001-04-05 12:09:42 -05:00
Albert Cheng
0fd3ca337b [svn-r3717] Purpose:
new test
Description:
    Added two new tests.
    test_mpio_offset:
	Verify that MPI_Offset exceeding 2**31 can be computed correctly.
    test_mpio_gb_file
	Test if MPIO can write file from under 2GB to over 2GB and then
	from under 4GB to over 4GB.
Platforms tested:
    modi4(-64), tflops.
2001-03-26 18:45:37 -05:00
Albert Cheng
b3e4cd6e97 [svn-r2710] Purpose:
Features, kind of.
Description:
    Separated the MPI features test into its own independent
    program so that it can be tested on its own without too
    much HDF5 stuff involved.
    Added automatic removal of temporary test files after
    the tests completed.
    Reduced the size of the dataset dimensions to avoid tripping
    the SGI MPI problems of running out of internal mpi type entries.
Platforms tested:
    O2K -64
2000-10-20 01:19:21 -05:00
Albert Cheng
f490968edc [svn-r1947] Changed the test files prefix to use the h5_fixname() in test/libh5test.a.
Makefile.in:
    Added test/ as one of the -I directories to search for header files.
    Needed because <h5test.h> is used.
t_file.c t_mpi.c testphdf5.c testphdf5.h:
    Added FILENAME to meet the assumption in h5test.h.  (May use
    CLEANUP in the future.)  Moved the prefix setting to the
    h5_fixname().
2000-01-25 23:33:38 -05:00
Albert Cheng
1b20703c20 [svn-r1417] t_mpi.c:
Changed it to skip the test instead of aborting when there is not
    enough processes to do the test.  Also corrected an error in the
    error reporting printf statement.
t_dset.c:
testphdf5.c:
testphdf5.h:
    Added option for specifying chunk dimensions.
1999-07-02 19:27:36 -05:00
Albert Cheng
a3a9df3657 [svn-r1071] Moved the MPI test to a file of its own (t_mpi.c) for future addition
of other MPI tests.
Changed return code tests from comparing with FAIL to with 0.
Updated MANIFEST for the addition of a new file.
Tested in O2k.
1999-02-16 23:39:22 -05:00