diff options
author | Quincey Koziol <koziol@hdfgroup.org> | 2004-08-02 17:56:37 (GMT) |
---|---|---|
committer | Quincey Koziol <koziol@hdfgroup.org> | 2004-08-02 17:56:37 (GMT) |
commit | 34cbb564af98b82c9b9f392fa33787094be4c74f (patch) | |
tree | d86ac0112734470cec82b4b26eacf2d798f61a3d /testpar | |
parent | af7def1357e2e8fa43e6abe1adc768219c2df620 (diff) | |
download | hdf5-34cbb564af98b82c9b9f392fa33787094be4c74f.zip hdf5-34cbb564af98b82c9b9f392fa33787094be4c74f.tar.gz hdf5-34cbb564af98b82c9b9f392fa33787094be4c74f.tar.bz2 |
[svn-r8989] Purpose:
Backport feature
Description:
Backport Kent's collective chunk I/O work to date into the release branch.
Also, minor code cleanups, etc.
Platforms tested:
FreeBSD 4.10 (sleipnir) w/parallel
IRIX64 6.5 (modi4)
h5committested
Diffstat (limited to 'testpar')
-rw-r--r-- | testpar/Dependencies | 75 | ||||
-rw-r--r-- | testpar/Makefile.in | 2 | ||||
-rw-r--r-- | testpar/t_coll_chunk.c | 10 | ||||
-rw-r--r-- | testpar/testphdf5.c | 17 | ||||
-rw-r--r-- | testpar/testphdf5.h | 12 |
5 files changed, 85 insertions, 31 deletions
diff --git a/testpar/Dependencies b/testpar/Dependencies index 87e7af2..aab346b 100644 --- a/testpar/Dependencies +++ b/testpar/Dependencies @@ -40,9 +40,7 @@ t_mpi.lo: \ $(top_srcdir)/src/H5FDstdio.h \ $(top_srcdir)/src/H5FDstream.h \ $(top_srcdir)/src/H5private.h \ - $(top_srcdir)/src/H5MPprivate.h \ - $(top_srcdir)/test/testhdf5.h \ - $(top_srcdir)/src/H5Eprivate.h + $(top_srcdir)/src/H5MPprivate.h testphdf5.lo: \ $(srcdir)/testphdf5.c \ $(srcdir)/testphdf5.h \ @@ -82,9 +80,7 @@ testphdf5.lo: \ $(top_srcdir)/src/H5FDstdio.h \ $(top_srcdir)/src/H5FDstream.h \ $(top_srcdir)/src/H5private.h \ - $(top_srcdir)/src/H5MPprivate.h \ - $(top_srcdir)/test/testhdf5.h \ - $(top_srcdir)/src/H5Eprivate.h + $(top_srcdir)/src/H5MPprivate.h t_dset.lo: \ $(srcdir)/t_dset.c \ $(srcdir)/testphdf5.h \ @@ -124,9 +120,7 @@ t_dset.lo: \ $(top_srcdir)/src/H5FDstdio.h \ $(top_srcdir)/src/H5FDstream.h \ $(top_srcdir)/src/H5private.h \ - $(top_srcdir)/src/H5MPprivate.h \ - $(top_srcdir)/test/testhdf5.h \ - $(top_srcdir)/src/H5Eprivate.h + $(top_srcdir)/src/H5MPprivate.h t_file.lo: \ $(srcdir)/t_file.c \ $(srcdir)/testphdf5.h \ @@ -166,9 +160,7 @@ t_file.lo: \ $(top_srcdir)/src/H5FDstdio.h \ $(top_srcdir)/src/H5FDstream.h \ $(top_srcdir)/src/H5private.h \ - $(top_srcdir)/src/H5MPprivate.h \ - $(top_srcdir)/test/testhdf5.h \ - $(top_srcdir)/src/H5Eprivate.h + $(top_srcdir)/src/H5MPprivate.h t_mdset.lo: \ $(srcdir)/t_mdset.c \ $(srcdir)/testphdf5.h \ @@ -208,9 +200,7 @@ t_mdset.lo: \ $(top_srcdir)/src/H5FDstdio.h \ $(top_srcdir)/src/H5FDstream.h \ $(top_srcdir)/src/H5private.h \ - $(top_srcdir)/src/H5MPprivate.h \ - $(top_srcdir)/test/testhdf5.h \ - $(top_srcdir)/src/H5Eprivate.h + $(top_srcdir)/src/H5MPprivate.h t_ph5basic.lo: \ $(srcdir)/t_ph5basic.c \ $(srcdir)/testphdf5.h \ @@ -250,6 +240,57 @@ t_ph5basic.lo: \ $(top_srcdir)/src/H5FDstdio.h \ $(top_srcdir)/src/H5FDstream.h \ $(top_srcdir)/src/H5private.h \ + $(top_srcdir)/src/H5MPprivate.h +t_coll_chunk.lo: \ + $(srcdir)/t_coll_chunk.c \ + $(srcdir)/testphdf5.h \ + $(top_srcdir)/test/h5test.h \ + $(top_srcdir)/src/hdf5.h \ + $(top_srcdir)/src/H5public.h \ + $(top_builddir)/src/H5pubconf.h \ + $(top_srcdir)/src/H5api_adpt.h \ + $(top_srcdir)/src/H5Apublic.h \ + $(top_srcdir)/src/H5Ipublic.h \ + $(top_srcdir)/src/H5ACpublic.h \ + $(top_srcdir)/src/H5Bpublic.h \ + $(top_srcdir)/src/H5Dpublic.h \ + $(top_srcdir)/src/H5Epublic.h \ + $(top_srcdir)/src/H5Fpublic.h \ + $(top_srcdir)/src/H5FDpublic.h \ + $(top_srcdir)/src/H5Gpublic.h \ + $(top_srcdir)/src/H5Opublic.h \ + $(top_srcdir)/src/H5HGpublic.h \ + $(top_srcdir)/src/H5HLpublic.h \ + $(top_srcdir)/src/H5MMpublic.h \ + $(top_srcdir)/src/H5Ppublic.h \ + $(top_srcdir)/src/H5Zpublic.h \ + $(top_srcdir)/src/H5Rpublic.h \ + $(top_srcdir)/src/H5Spublic.h \ + $(top_srcdir)/src/H5Tpublic.h \ + $(top_srcdir)/src/H5FDcore.h \ + $(top_srcdir)/src/H5FDfamily.h \ + $(top_srcdir)/src/H5FDgass.h \ + $(top_srcdir)/src/H5FDlog.h \ + $(top_srcdir)/src/H5FDmpi.h \ + $(top_srcdir)/src/H5FDmpio.h \ + $(top_srcdir)/src/H5FDmpiposix.h \ + $(top_srcdir)/src/H5FDmulti.h \ + $(top_srcdir)/src/H5FDsec2.h \ + $(top_srcdir)/src/H5FDsrb.h \ + $(top_srcdir)/src/H5FDstdio.h \ + $(top_srcdir)/src/H5FDstream.h \ + $(top_srcdir)/src/H5private.h \ $(top_srcdir)/src/H5MPprivate.h \ - $(top_srcdir)/test/testhdf5.h \ - $(top_srcdir)/src/H5Eprivate.h + $(top_srcdir)/src/H5Dprivate.h \ + $(top_srcdir)/src/H5FDprivate.h \ + $(top_srcdir)/src/H5Oprivate.h \ + $(top_srcdir)/src/H5HGprivate.h \ + $(top_srcdir)/src/H5Fprivate.h \ + $(top_srcdir)/src/H5RCprivate.h \ + $(top_srcdir)/src/H5Tprivate.h \ + $(top_srcdir)/src/H5Gprivate.h \ + $(top_srcdir)/src/H5Bprivate.h \ + $(top_srcdir)/src/H5ACprivate.h \ + $(top_srcdir)/src/H5RSprivate.h \ + $(top_srcdir)/src/H5Rprivate.h \ + $(top_srcdir)/src/H5Zprivate.h diff --git a/testpar/Makefile.in b/testpar/Makefile.in index 9c9c4f1..20fbb5d 100644 --- a/testpar/Makefile.in +++ b/testpar/Makefile.in @@ -43,7 +43,7 @@ MOSTLYCLEAN=MPItest.h5 Para*.h5 *.clog DISTCLEAN=go Makefile testph5.sh ## Test source files -TEST_PHDF5_SRC=testphdf5.c t_dset.c t_file.c t_mdset.c t_ph5basic.c +TEST_PHDF5_SRC=testphdf5.c t_dset.c t_file.c t_mdset.c t_ph5basic.c t_coll_chunk.c TEST_PHDF5_OBJ=$(TEST_PHDF5_SRC:.c=.lo) TEST_SRC=t_mpi.c $(TEST_PHDF5_SRC) TEST_OBJ=$(TEST_SRC:.c=.lo) diff --git a/testpar/t_coll_chunk.c b/testpar/t_coll_chunk.c index 8c2373b..4b32bfa 100644 --- a/testpar/t_coll_chunk.c +++ b/testpar/t_coll_chunk.c @@ -189,13 +189,8 @@ coll_chunktest(char* filename,int chunk_factor,int select_factor) { VRFY((status>= 0),"MPIO collective transfer property succeeded"); #ifdef H5_HAVE_INSTRUMENTED_LIBRARY prop_value = H5D_XFER_COLL_CHUNK_DEF; -#ifdef H5_WANT_H5_V1_6_COMPAT status = H5Pinsert(xfer_plist,H5D_XFER_COLL_CHUNK_NAME,H5D_XFER_COLL_CHUNK_SIZE,&prop_value, NULL,NULL,NULL,NULL,NULL); -#else /* H5_WANT_H5_V1_6_COMPAT */ - status = H5Pinsert(xfer_plist,H5D_XFER_COLL_CHUNK_NAME,H5D_XFER_COLL_CHUNK_SIZE,&prop_value, - NULL,NULL,NULL,NULL,NULL,NULL); -#endif /* H5_WANT_H5_V1_6_COMPAT */ VRFY((status >= 0),"testing property list inserted succeeded"); #endif /* H5_HAVE_INSTRUMENTED_LIBRARY */ @@ -275,13 +270,8 @@ coll_chunktest(char* filename,int chunk_factor,int select_factor) { VRFY((status>= 0),"MPIO collective transfer property succeeded"); #ifdef H5_HAVE_INSTRUMENTED_LIBRARY prop_value = H5D_XFER_COLL_CHUNK_DEF; -#ifdef H5_WANT_H5_V1_6_COMPAT status = H5Pinsert(xfer_plist,H5D_XFER_COLL_CHUNK_NAME,H5D_XFER_COLL_CHUNK_SIZE,&prop_value, NULL,NULL,NULL,NULL,NULL); -#else /* H5_WANT_H5_V1_6_COMPAT */ - status = H5Pinsert(xfer_plist,H5D_XFER_COLL_CHUNK_NAME,H5D_XFER_COLL_CHUNK_SIZE,&prop_value, - NULL,NULL,NULL,NULL,NULL,NULL); -#endif /* H5_WANT_H5_V1_6_COMPAT */ VRFY((status >= 0),"testing property list inserted succeeded"); #endif /* H5_HAVE_INSTRUMENTED_LIBRARY */ status = H5Dread(dataset, H5T_NATIVE_INT, H5S_ALL, file_dataspace, diff --git a/testpar/testphdf5.c b/testpar/testphdf5.c index 8c533aa..2eee9e8 100644 --- a/testpar/testphdf5.c +++ b/testpar/testphdf5.c @@ -44,7 +44,7 @@ int doindependent=1; /* independent test */ unsigned dobig=0; /* "big" dataset tests */ /* FILENAME and filenames must have the same number of names */ -const char *FILENAME[10]={ +const char *FILENAME[14]={ "ParaEg1", "ParaEg2", "ParaEg3", @@ -54,8 +54,12 @@ const char *FILENAME[10]={ "ParaIndividual", "ParaBig", "ParaFill", + "ParaCC1", + "ParaCC2", + "ParaCC3", + "ParaCC4", NULL}; -char filenames[10][PATH_MAX]; +char filenames[14][PATH_MAX]; hid_t fapl; /* file access property list */ #ifdef USE_PAUSE @@ -462,6 +466,15 @@ int main(int argc, char **argv) AddTest("fillvalue", dataset_fillvalue, NULL, "dataset fill value", filenames[8]); + AddTest("coll. chunked 1", coll_chunk1,NULL, + "simple collective chunk io",filenames[9]); + AddTest("coll. chunked 2", coll_chunk2,NULL, + "noncontiguous collective chunk io",filenames[10]); + AddTest("coll. chunked 3", coll_chunk3,NULL, + "multi-chunk collective chunk io",filenames[11]); + AddTest("coll. chunked 4", coll_chunk4,NULL, + "collective to independent chunk io",filenames[12]); + /* Display testing information */ TestInfo(argv[0]); diff --git a/testpar/testphdf5.h b/testpar/testphdf5.h index 405f002..359eb958 100644 --- a/testpar/testphdf5.h +++ b/testpar/testphdf5.h @@ -16,7 +16,6 @@ #define PHDF5TEST_H #include "h5test.h" -#include "testhdf5.h" #ifndef TRUE #define TRUE 1 @@ -113,6 +112,13 @@ #define FACC_MULTI 0x4 /* Multi File */ #define FACC_MPIPOSIX 0x8 /* MPIPOSIX */ +/*Constants for collective chunk definitions */ +#define SPACE_DIM1 24 +#define SPACE_DIM2 24 +#define BYROW_CONT 1 +#define BYROW_DISCONT 2 +#define DSET_COLLECTIVE_CHUNK_NAME "coll_chunk_name" + /* type definitions */ typedef struct H5Ptest_param_t /* holds extra test parameters */ { @@ -152,6 +158,10 @@ void extend_readAll(void); void compact_dataset(void); void big_dataset(void); void dataset_fillvalue(void); +void coll_chunk1(void); +void coll_chunk2(void); +void coll_chunk3(void); +void coll_chunk4(void); /* commonly used prototypes */ hid_t create_faccess_plist(MPI_Comm comm, MPI_Info info, int l_facc_type, hbool_t use_gpfs); |