summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlbert Cheng <acheng@hdfgroup.org>2005-04-12 22:04:01 (GMT)
committerAlbert Cheng <acheng@hdfgroup.org>2005-04-12 22:04:01 (GMT)
commit2b908577c1f6c930630c02e2d269d220d4d3fe52 (patch)
treec166db9bb3aceaa86dc4a6139d4424a87a50eaa3
parent184193360784b16a9ba08163a24a45bfdb77084d (diff)
downloadhdf5-2b908577c1f6c930630c02e2d269d220d4d3fe52.zip
hdf5-2b908577c1f6c930630c02e2d269d220d4d3fe52.tar.gz
hdf5-2b908577c1f6c930630c02e2d269d220d4d3fe52.tar.bz2
[svn-r10598] Purpose:
Bug fix. Description: The irregular chunk IO tests do not work for processes sizes larger than 3. Added a check of number of processes and skip the irregular chunk IO tests if number of processes are larger than 3. Revamped the tests of collective chunk IO tests too. Platforms tested: Tested in mir. Misc. update:
-rw-r--r--testpar/testphdf5.c77
1 files changed, 45 insertions, 32 deletions
diff --git a/testpar/testphdf5.c b/testpar/testphdf5.c
index 81bfbeb..284a2e1 100644
--- a/testpar/testphdf5.c
+++ b/testpar/testphdf5.c
@@ -415,41 +415,54 @@ int main(int argc, char **argv)
AddTest("fill", dataset_fillvalue, NULL,
"dataset fill value", PARATESTFILE);
- if(mpi_size > 64) {
- if(MAINPROCESS) {
- printf("Collective chunk IO tests haven't been tested \n");
- printf(" for the number of process greater than 64.\n");
- printf("Please try with the number of process \n");
- printf(" no greater than 64 for collective chunk IO test.\n");
- printf("Collective chunk tests will be skipped \n");
- }
+ /* Collective Chunk IO are verified to work for 64 processes.
+ * Add or skip depending on whether mpi_size is larger than 64.
+ */
+ if((mpi_size > 64) && MAINPROCESS) {
+ printf("Collective chunk IO tests haven't been tested \n");
+ printf(" for the number of process greater than 64.\n");
+ printf("Please try with the number of process \n");
+ printf(" no greater than 64 for collective chunk IO test.\n");
+ printf("Collective chunk tests will be skipped \n");
}
- else {
- AddTest("cchunk1", coll_chunk1,NULL,
- "simple collective chunk io",PARATESTFILE);
- AddTest("cchunk2", coll_chunk2,NULL,
- "noncontiguous collective chunk io",PARATESTFILE);
- AddTest("cchunk3", coll_chunk3,NULL,
- "multi-chunk collective chunk io",PARATESTFILE);
- AddTest("cchunk4", coll_chunk4,NULL,
- "collective to independent chunk io",PARATESTFILE);
+ AddTest((mpi_size > 64) ? "-cchunk1" : "cchunk1",
+ coll_chunk1,NULL, "simple collective chunk io",PARATESTFILE);
+ AddTest((mpi_size > 64) ? "-cchunk2" : "cchunk2",
+ coll_chunk2,NULL, "noncontiguous collective chunk io",PARATESTFILE);
+ AddTest((mpi_size > 64) ? "-cchunk3" : "cchunk3",
+ coll_chunk3,NULL, "multi-chunk collective chunk io",PARATESTFILE);
+ AddTest((mpi_size > 64) ? "-cchunk4" : "cchunk4",
+ coll_chunk4,NULL, "collective to independent chunk io",PARATESTFILE);
+
+ /* Collective irregular chunk IO are verified to work for 3 processes.
+ * Add or skip depending on whether mpi_size is larger than 3.
+ */
+ if((mpi_size > 3) && MAINPROCESS) {
+ printf("Collective irregular chunk IO tests haven't been tested \n");
+ printf(" for the number of process greater than 3.\n");
+ printf("Please try with the number of process \n");
+ printf(" no greater than 3 for collective irregular chunk IO test.\n");
+ printf("Collective irregular chunk tests will be skipped \n");
}
+ AddTest((mpi_size > 3) ? "-ccontw" : "ccontw",
+ coll_irregular_cont_write,NULL,
+ "collective irregular contiguous write",PARATESTFILE);
+ AddTest((mpi_size > 3) ? "-ccontr" : "ccontr",
+ coll_irregular_cont_read,NULL,
+ "collective irregular contiguous read",PARATESTFILE);
+ AddTest((mpi_size > 3) ? "-cschunkw" : "cschunkw",
+ coll_irregular_simple_chunk_write,NULL,
+ "collective irregular simple chunk write",PARATESTFILE);
+ AddTest((mpi_size > 3) ? "-cschunkr" : "cschunkr",
+ coll_irregular_simple_chunk_read,NULL,
+ "collective irregular simple chunk read",PARATESTFILE);
+ AddTest((mpi_size > 3) ? "-ccchunkw" : "ccchunkw",
+ coll_irregular_complex_chunk_write,NULL,
+ "collective irregular complex chunk write",PARATESTFILE);
+ AddTest((mpi_size > 3) ? "-ccchunkr" : "ccchunkr",
+ coll_irregular_complex_chunk_read,NULL,
+ "collective irregular complex chunk read",PARATESTFILE);
- AddTest("ccontw",coll_irregular_cont_write,NULL,
- "collective irregular contiguous write",PARATESTFILE);
- AddTest("ccontr",coll_irregular_cont_read,NULL,
- "collective irregular contiguous read",PARATESTFILE);
-
- AddTest("cschunkw",coll_irregular_simple_chunk_write,NULL,
- "collective irregular simple chunk write",PARATESTFILE);
- AddTest("cschunkr",coll_irregular_simple_chunk_read,NULL,
- "collective irregular simple chunk read",PARATESTFILE);
-
- AddTest("ccchunkw",coll_irregular_complex_chunk_write,NULL,
- "collective irregular complex chunk write",PARATESTFILE);
-
- AddTest("ccchunkr",coll_irregular_complex_chunk_read,NULL,
- "collective irregular complex chunk read",PARATESTFILE);
AddTest("null", null_dataset, NULL,
"null dataset test", PARATESTFILE);