Commit e01a20b6 authored by Pavan Balaji's avatar Pavan Balaji Committed by Kenneth Raffenetti
Browse files

Simplify the bcast test.



The current number of combinations we are checking are too many,
causing the test to take too long on some platforms.  This patch
simplifies the test, so we build two versions of the test.  In the
first version, we run only on COMM_WORLD but go through all datatypes.
In the second version, we run on all communicators, but go through
only a small subset of datatypes.
Signed-off-by: Kenneth Raffenetti's avatarKen Raffenetti <raffenet@mcs.anl.gov>
parent be82b6a7
......@@ -31,7 +31,9 @@ noinst_PROGRAMS = \
alltoallw1 \
alltoallw2 \
alltoallw_zeros \
bcast \
bcast_full \
bcast_min_datatypes \
bcast_comm_world \
bcasttest \
bcastzerotype \
coll2 \
......@@ -108,6 +110,14 @@ noinst_PROGRAMS = \
allgatherv4_LDADD = $(LDADD) -lm
bcast_full_SOURCES = bcast.c
bcast_min_datatypes_CPPFLAGS = -DBCAST_MIN_DATATYPES_ONLY $(AM_CPPFLAGS)
bcast_min_datatypes_SOURCES = bcast.c
bcast_comm_world_CPPFLAGS = -DBCAST_COMM_WORLD_ONLY $(AM_CPPFLAGS)
bcast_comm_world_SOURCES = bcast.c
# Create tests of the nonblocking collectives by reusing the blocking tests,
# using the MPI profiling interface to intercept the blocking call and
# replace it with a MPI_Ixxx/MPI_Wait pair.
......
......@@ -30,6 +30,11 @@ int main(int argc, char *argv[])
if (comm == MPI_COMM_NULL)
continue;
#if defined BCAST_COMM_WORLD_ONLY
if (comm != MPI_COMM_WORLD)
continue;
#endif /* BCAST_COMM_WORLD_ONLY */
/* Determine the sender and receiver */
MPI_Comm_rank(comm, &rank);
MPI_Comm_size(comm, &size);
......@@ -42,9 +47,9 @@ int main(int argc, char *argv[])
/* To shorten test time, only run the default version of datatype tests
* for comm world and run the minimum version for other communicators. */
if (comm != MPI_COMM_WORLD) {
MTestInitMinDatatypes();
}
#if defined BCAST_MIN_DATATYPES_ONLY
MTestInitMinDatatypes();
#endif /* BCAST_MIN_DATATYPES_ONLY */
while (MTestGetDatatypes(&sendtype, &recvtype, count)) {
for (root = 0; root < size; root++) {
......
......@@ -32,10 +32,11 @@ allgatherv4 4 timeLimit=600
bcasttest 4
bcasttest 8
bcasttest 10
bcast 4
bcast_full 4
# More that 8 processes are required to get bcast to switch to the long
# msg algorithm (see coll definitions in mpiimpl.h)
bcast 10 timeLimit=1500
bcast_min_datatypes 10 timeLimit=1200
bcast_comm_world 10 timeLimit=1200
bcastzerotype 1
bcastzerotype 4
bcastzerotype 5
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment