+++ /dev/null
-#! /bin/sh
-# This version puts the output from each program into a separate file.
-# -mvhome is needed for the ANL SP, and is ignored by others
-args=
-device=
-MPICH_VERSION=
-STOPFILE=${MPITEST_STOPTEST:-"$HOME/.stopmpichtests"}
-
-MAKE="make --no-print-directory"
-MPIRUNMVBACK=''
-#
-
-# Set mpirun to the name/path of the mpirun program
-#FindMPIRUN
-#
-runtests=1
-makeeach=0
-writesummaryfile=no
-have_fortran=0
-have_selector="no"
-quiet=0
-MAKE="make --no-print-directory"
-for arg in "$@" ; do
- case $arg in
- -basedir=* )
- basedir=`echo $arg | sed 's/-basedir=//'`
- ;;
- -srcdir=* )
- srcdir=`echo $arg | sed 's/-srcdir=//'`
- ;;
- -fort=* )
- have_fortran=`echo $arg | sed 's/-fort=//'`
- ;;
- -selector=* )
- have_selector=`echo $arg | sed 's/-selector=//'`
- ;;
- -checkonly )
- runtests=0
- ;;
- -margs=*)
- margs=`echo $arg | sed 's/-margs=//'`
- args="$args $margs"
- ;;
- -small)
- shift
- makeeach=1
- ;;
- -summaryfile=*)
- writesummaryfile=yes
- summaryfile=`echo A$arg | sed 's/A-summaryfile=//'`
- ;;
- -quiet)
- shift
- quiet=1
- ;;
- -help|-u)
- echo "runtests [-checkonly] [-margs='...']"
- echo "run tests in this directory. If -checkonly set, just run"
- echo "the differences check (do NO rerun the test programs)."
- echo "If -margs is used, these options are passed to mpirun."
- echo "If -small is used, the examples are built, run, and deleted."
- exit 1
- ;;
- *)
- if test -n "$arg" ; then
- echo "runtests: Unknown argument ($arg)"
- exit 1
- fi
- ;;
- esac
-done
-# Load basic procedures
-. ${srcdir}/../runbase
-#
-# If the programs are not available, run make.
-if [ ! -x coll1 -a $makeeach = 0 -a $runtests = 1 ] ; then
- $MAKE
-fi
-
-selector=${have_selector:+--cfg=smpi/coll_selector:$have_selector}
-
-mpirun=" ${basedir}/bin/smpirun -platform ${srcdir}/../../../../examples/msg/small_platform_with_routers.xml -hostfile ${srcdir}/../../hostfile --log=root.thres:critical $selector "
-testfiles=""
-if [ $runtests = 1 ] ; then
-echo '**** Testing MPI Collective routines ****'
-
-RunTest barrier 4 "*** Barrier Test ***" "" "barrier-0.out"
-
-RunTest bcast_mpich 4 "*** Broadcast Test ***" "" "bcast-0.out bcast-1.out bcast-2.out bcast-3.out"
-
-RunTest bcastvec 4 "*** Broadcast Datatype Test ***" "" "bcastvec-0.out bcastvec-1.out bcastvec-2.out bcastvec-3.out"
-
-
-#TODO : handle MPI_BOTTOM to allow som operations to use absolute addresses
-RunTest coll1 4
-
-RunTest coll2 5
-
-RunTest coll3 5
-
-RunTest coll4 4
-
-RunTest coll5 4
-
-RunTest coll6 5
-
-RunTest coll7 5
-
-RunTest coll8 4
-
-RunTest coll9 4
-
-RunTest coll10 4
-
-RunTest coll11 4
-
-#weird manipulations of ranks in split, and comms -> deadlock, removed
-#RunTest scantst 4
-
-RunTest coll12 4
-
-# coll13 is very picky about arguments
-RunTest coll13 14
-
-RunTest longuser 4
-
-# Some implementations (e.g., IBM's) forget to handle the np = 1 case.
-#RunTest longuser 1 "*** longuser (np == 1) ***"
-MakeExe longuser
-cp longuser longuser1
-RunTest longuser1 1 '*** longuser (np == 1) ***'
-rm -f longuser1
-
-#OutTime
-#testfiles="$testfiles allredmany.out"
-#rm -f allredmany.out
-#MakeExe allredmany
-#echo '**** allredmany ****'
-#echo '*** allredmany ***' >> allredmany.out
-#cnt=0
-## Run several times to try and catch timing/race conditions in managing
-## the flood of one-way messages.
-#while [ $cnt -lt 20 ] ; do
-# echo "*** allredmany run $cnt ***" >> allredmany.out
-# $mpirun -np 2 $args allredmany >> allredmany.out 2>&1
-# cnt=`expr $cnt + 1`
-#done
-#echo '*** allredmany ***' >> allredmany.out
-#CleanExe allredmany
-
-RunTest grouptest 4
-
-RunTest allred 4 "*** Allred ***"
-
-RunTest allred2 4 "*** Allred2 ***"
-#uses MPI_Dims_create, MPI_Cart_create ... removed
-#RunTest scatterv 4 "*** Scatterv ***"
-
-RunTest scattern 4 "*** Scattern ***"
-
-RunTest redscat 4 "*** Reduce_scatter ***"
-
-RunTest alltoallv_mpich 4 "*** Alltoallv ***"
-echo "runtests: fortran ($have_fortran)"
-#
-# Run Fortran tests ONLY if Fortran available
-if [ $have_fortran -eq "1" ] ; then
- echo "FORTRAN TESTS"
-
- RunTest allredf 4 "*** Testing allreduce from Fortran ***"
-
- RunTest assocf 4 "*** Testing allreduce from Fortran (2) ***"
-
- RunTest bcastlog 4 "*** Testing logical datatype in BCAST ***"
- #buggy test, not available in original test, removed
- #RunTest allgatherf 2 "*** Testing allgather from Fortran ***"
- echo "END OF FORTRAN TESTS"
-fi
-
-else
- # Just run checks
- testfiles=`echo *.out`
- if test "$testfiles" = "*.out" ; then
- echo "No output files remain from previous test!"
- exit 1
- fi
-fi
-
-echo '*** Checking for differences from expected output ***'
-CheckAllOutput coll.diff
-exit 0