summaryrefslogtreecommitdiffstats
path: root/testpar
diff options
context:
space:
mode:
authorQuincey Koziol <koziol@hdfgroup.org>2004-08-02 17:56:37 (GMT)
committerQuincey Koziol <koziol@hdfgroup.org>2004-08-02 17:56:37 (GMT)
commit34cbb564af98b82c9b9f392fa33787094be4c74f (patch)
treed86ac0112734470cec82b4b26eacf2d798f61a3d /testpar
parentaf7def1357e2e8fa43e6abe1adc768219c2df620 (diff)
downloadhdf5-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/Dependencies75
-rw-r--r--testpar/Makefile.in2
-rw-r--r--testpar/t_coll_chunk.c10
-rw-r--r--testpar/testphdf5.c17
-rw-r--r--testpar/testphdf5.h12
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);