Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
remove older mpich test suite
[simgrid.git] / teshsuite / smpi / mpich-test / pt2pt / runtests
diff --git a/teshsuite/smpi/mpich-test/pt2pt/runtests b/teshsuite/smpi/mpich-test/pt2pt/runtests
deleted file mode 100755 (executable)
index f831471..0000000
+++ /dev/null
@@ -1,383 +0,0 @@
-#! /bin/sh
-#
-# Run some of the tests.  If any arguments are provided, pass them to the
-# test programs.
-#
-# -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=""
-#
-# Load basic procedures
-
-#
-# Set mpirun to the name/path of the mpirun program
-#FindMPIRUN
-#
-# If the programs are not available, run make.
-runtests=1
-makeeach=0
-writesummaryfile=no
-check_at_once=1
-quiet=0
-check_canrun=0
-have_fortran=0
-CheckOutputWhileRunning="yes"
-# Using shifts should  remove args from the list.
-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=//'`
-       ;;
-       -checkonly)
-       shift
-       runtests=0
-       ;;
-        -margs=*)
-       shift
-       margs=`echo $arg | sed 's/-margs=//'`
-       args="$args $margs"
-       ;;
-       -summaryfile=*)
-       writesummaryfile=yes
-       summaryfile=`echo A$arg | sed 's/A-summaryfile=//'`
-       ;;
-       -echo)
-       shift
-       set -x
-       ;;
-       -check)
-       check_canrun=1
-       ;;
-       -quiet)
-       shift
-       quiet=1
-       ;;
-       -small)
-       shift
-       makeeach=1
-       ;;
-       -atend)
-       shift
-       check_at_once=0
-       ;;
-       -help|-u)
-       shift
-       echo "runtests [-checkonly] [-margs='...'] [-atend] [-check]"
-       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."
-       echo "If -atend is used, the success of the tests is checked only"
-       echo "at the end of the test rather than also after each test."
-       echo "If -check is used, only a single simple test is run; this"
-       echo "is used to check that mpirun can run an MPI program."
-       exit 1
-       ;;
-       *)
-       if test -n "$arg" ; then
-           echo "Passing remaining arguments to programs ($*)"
-           break
-        fi
-       ;;
-    esac
-done
-
-#
-# Load basic procedures
-. ${srcdir}/../runbase
-
-# Do this because we're writing the output while running
-savewritesummaryfile=$writesummaryfile
-writesummaryfile=no
-
-mpirun=" ${basedir}/bin/smpirun --cfg=smpi/running_power:108095000 -platform ${srcdir}/../../../../examples/msg/small_platform_with_routers.xml -hostfile ${srcdir}/../../hostfile  --log=root.thres:critical"
-
-# If cannot run test, do that and exit
-if [ $check_canrun = 1 ] ; then
-    # Make sure that we don't have an old file lying around
-    rm -f third third.o third.exe
-    MakeExe third
-    rm -f third.out
-    echo '*** Testing Unexpected messages ***' >> third.out
-    $mpirun $args -np 2 ./third </dev/null >> third.out 2>&1
-    echo '*** Testing Unexpected messages ***' >> third.out
-    rm -f third.stdo
-    cat >>third.stdo <<EOF
-*** Testing Unexpected messages ***
- No Errors
-*** Testing Unexpected messages ***
-EOF
-#    if diff -b third.out third.stdo > /dev/null ; then
-       rc=0
-#    else
-#      echo "Failed to run simple program!"
-#      echo "Output from run attempt was"
-#      cat third.out
-#        echo "mpirun program was $mpirun"
-#      echo "mpirun command was "
-#      echo "$mpirun $args -np 2 ./third </dev/null >>third.out 2>&1"
-#      rc=1
-#    fi
-#    CleanExe third
-#    rm -f third.out 
-#    exit $rc
-fi
-
-# If the programs are not available, run make.
-#if [ ! -x sendrecv_mpich -a $makeeach = 0 -a $runtests = 1 ] ; then
-#    $MAKE
-#fi
-
-testfiles=""
-if [ $runtests = 1 ] ; then
-echo '**** Testing MPI Point-to-point routines ****'
-
-RunTest sendrecv_mpich 2 "**** Testing MPI_Send and MPI_Recv ****" "" "sendrecv-0.out sendrecv-1.out"
-
-RunTest sendrecv2 2 "**** Testing MPI_Send and MPI_Recv (2) ****"
-
-
-#Uses MPI_Pack and Unpack
-#RunTest sendrecv3 2 "**** Testing MPI_Send and MPI_Recv (3) ****"
-#Uses MPI_BOTTOM
-#RunTest sendrecv4 2 "**** Testing MPI_Send and MPI_Recv (4) ****"
-
-#not supported
-#RunTest bsendtest 2 "**** Testing MPI_Bsend and MPI_Recv (4) ****" "" "bsendtest-0.out bsendtest-1.out"
-
-RunTest isndrcv 2 "**** Testing MPI_Isend and MPI_Irecv ****" "" "isndrcv-0.out isndrcv-1.out"
-
-#RunTest irsend 2 "**** Testing MPI_Irsend ****"
-
-#RunTest irsendinit 2 "**** Testing MPI_Rsend_init ****"
-
-
-#rsend and ssend to implement, removed for now
-RunTest longmsgs 2 "**** Testing long messages ****"
-
-RunTest testsome 2 "**** Testing MPI_Testsome/Testany/Waitsome ****"
-
-#issend used, replaced by isend - fails 
-#RunTest testall_mpich 2 "**** Testing MPI_Testall ****"
-
-#MPI_Cancel, not yet implemented
-#RunTest cancel 2 "**** Checking MPI_Cancel (Irecv's) ****"
-
-#RunTest cancel2 2 "**** Checking MPI_Cancel (Persistent Recv's) ****"
-
-#RunTest cancel3 2 "**** Checking MPI_Cancel (Persistent Send's) ****"
-
-#RunTest cancelmessages 2 "**** Checking MPI_Cancel (short/eager/rndv) ****"
-
-#RunTest cancelibm 2 "**** Checking MPI_Cancel (successful/nonsuccessful) ****"
-
-# This test exposes a SEGV in the MPICH1 code.  However, this is an
-# uncommon situtation.  Users who need this feature should switch to 
-# MPICH2 (www.mcs.anl.gov/mpi/mpich2)
-#RunTest cancelissend 2 "**** Checking MPI_Cancel and MPI_Issend (short msgs) ****"
-
-RunTest sndrcv 2 "**** Testing MPI_Sendrecv ****"
-
-RunTest sndrcvrep 2 "**** Testing MPI_Sendrecv_replace ****"
-
-RunTest sndrcvrpl2 2 "**** Testing MPI_Sendrecv_replace (long) ****"
-
-#not implemented :TODO, should be simple, add a nbelements parameter to the datatype, compute it at creation time, then multiply status->count by this number
-#RunTest getelm 2 "**** Testing MPI_Get_elements ****"
-
-#uses Pack_size, Buffer_attach, Bsend, Buffer_detach
-#RunTest overtake 2 "**** Verifying that messages are non-overtaking ****" "" "overtake-0.out overtake-1.out"
-
-#RunTest ssendtest 2 "**** Verifying ssend ****"
-
-#RunTest ssendtest2 2 "**** Verifying ssend (2) ****"
-
-#RunTest issendtest 2 "**** Verifying Issend ****" "" "issendtest-1.out"
-
-#RunTest issend2 2 "**** Verifying Issend (2) ****"
-
-#uses MPI_Cancel, lets a lot of orphan comms.
-#RunTest reqcreate 1 "**** Checking the request creation routines ****"
-
-
-#free does really free the request, without waiting for completion, leading to bugs.
-#RunTest reqfree 2 "**** Checking request free ****" "-req 2048"
-
-RunTest typebase 1 "**** Checking the type (sizes) routines ****"
-
-RunTest typecreate 1 "**** Checking the type creation routines ****"
-
-RunTest typetest 2 "**** Checking the type routines ****" "" "typetest-0.out typetest-1.out"
-
-#weird error, because comment says smpi returned value is same as expected from mpich .. modified to handle this value as correct
-RunTest typeub 2 "**** Checking the type routines: MPI_UB ****"
-
-RunTest typeub2 1 "**** Checking the type routines: MPI_UB(2) ****"
-
-RunTest typeub3 1 "**** Checking the type routines: MPI_UB(3) ****"
-
-RunTest typelb 1 "**** Checking the type routines: MPI_LB ****"
-
-RunTest structlb 1 "**** Checking Type_struct routines: MPI_LB ****"
-
-#ssend, replaced by send
-RunTest dtypelife 2 "**** Checking the type routines: MPI_Type_free ****"
-
-#TODO: handle alignment for extent values 
-#RunTest dataalign 2 "**** Checking the type alignment ****"
-
-RunTest dtyperecv 2 "**** Checking the type recv ****"
-
-RunTest commit 1 "**** Checking the type routines: MPI_Type_commit ****"
-
-RunTest third 2 "*** Testing Unexpected messages ***"
-
-RunTest fourth 4 "*** Testing Irecv/Isend/Wait ***"
-
-RunTest fifth 4 "*** Testing Irecv/Isend/Waitall ***"
-
-#uses MPI_keyval_create, Attr_put, Attr_get, Attr_delete, Keyval_free
-#RunTest sixth 2 "*** Testing attribute manipulation ***"
-
-RunTest nblock 4 "*** Testing Isend/Irecv (large numbers) ***"
-
-#TODO : unlock probing ...
-#RunTest nbtest 4 "*** Testing Isend/Probe/Recv (large numbers) ***"
-
-RunTest sendmany 8 "*** Testing Send (many procs) ***"
-
-RunTest order 2 "*** Testing Recv ordering ***"
-
-RunTest sendorder 2 "**** Checking Message Ordering ****"
-
-RunTest exittest 3 "**** Checking Exit Processing ****"
-
-#uses MPI_Errors
-#RunTest trunc 2 "*** Testing Message truncation ***"
-
-RunTest truncmult 2 '*** Testing Message trunction in multiple completions ***'
-
-RunTest nullproc 2 "*** Testing handling of MPI_PROC_NULL ***"
-
-RunTest nullproc2 2 "*** Testing handling of MPI_PROC_NULL in blocking Recv ***"
-
-RunTest relrank 2 "*** Testing handling of relative rank ***"
-
-RunTest hvectest 2 "*** Testing Vector type ***"
-
-RunTest hvectest2 2 "*** Testing struct type for vectors (MPI_UB) ***"
-
-RunTest hvec 2 "*** Testing Type_Hvector ***"
-
-RunTest hindexed 1 "*** Testing Type_Hindexed ***"
-
-RunTest probe 2 "*** Testing Probe and Get_count ***"
-
-RunTest probe1 2 "*** Testing Iprobe and Get_count ***"
-
-RunTest self 1 "*** Testing send to self ***"
-#TODO : handle COMM_SELF
-#RunTest selfvsworld 2 "*** Testing COMM_SELF and COMM_WORLD ***"
-
-RunTest testtest1 2 "*** Testing MPI_Test ***"
-
-RunTest persistent 4 "*** Testing MPI_Recv_init ***"
-
-RunTest persist 4 "*** Testing MPI_Startall/Request_free ***"
-#used MPI_Buffers and Bsends
-#RunTest persist2 4 "*** Testing MPI_Startall(Bsend)/Request_free ***"
-
-RunTest waitall 4 "*** Testing MPI_Waitall ***"
-
-#uses issend, replaced by isend, and ssend replaced by send
-#RunTest waitall2 2 "*** Testing MPI_Waitall (order) ***"
-
-#RunTest waitall3 4 "*** Testing MPI_Waitall (order-irecv) ***"
-
-#RunTest waitall4 4 "*** Testing MPI_Waitall (order-isend) ***"
-#put a big value for the message size, because it failed as a detached send (isend was used instead of issend)
-RunTest waitany 4 "*** Testing MPI_Waitany ***"
-
-#RunTest pack 2 "*** Testing MPI_Pack ***"
-
-#calls to ssend replaced by send
-RunTest flood 2 "**** Testing large messages ****"
-
-#very long
-#RunTest flood2 2 "**** Testing large numbers of messages ****"
-#
-# Run Fortran tests ONLY if Fortran available
-if [ $have_fortran -eq "1" ] ; then 
-    echo "FORTRAN TESTS"
-    #
-    #echo "*** secondf ***" >> pt2pt.out
-    #$mpirun $args -np 2 ./secondf "$@" >> pt2pt.out 2>&1
-    #
-    RunTest isendf 2 "*** Testing isend from Fortran ***"
-
-    RunTest sendcplx 2 "*** Testing Fortran send ***"
-    #RunTest allpair 2 "*** Testing pt-2-pt from Fortran ***"
-
-    #RunTest allpair2 2 "*** Testing pt-2-pt from Fortran (many calls) ***"
-    #
-#    OutTime
-#    testfiles="$testfiles structf.out"
-#    rm -f structf.out
-#    MakeExe structf
-#    echo '*** Testing Type_struct from Fortran ***'
-#    echo '*** Testing Type_struct from Fortran ***' >> structf.out
-    # This is tricky.  Because of a bug in IRIX64, we need to direct 
-    # input from /dev/null (so that we can know that we need a new process
-    # group).  This should be ok for everyone, but SunOS 4.1.4 tends to
-    # panic (!!) in this case.  Since both behaviors represent broken
-    # operating systems, we test for ARCH=IRIX64 
-#    if [ "LINUX" = "IRIX64" ] ; then 
-#      $mpirun $args -np 2 ./structf "$@" >> structf.out 2>&1 < /dev/null
-#    else
-#      $mpirun $args -np 2 ./structf "$@" >> structf.out 2>&1
-#    fi
-#    echo '*** Testing Type_struct from Fortran ***' >> structf.out
-#    CheckOutput structf
-#    CleanExe structf
-    #
-    RunTest send1 2 "*** Testing pt-2-pt from Fortran (2) ***"
-
-    RunTest sendfort 2 "*** Testing Fortran logical datatype ***"
-
-    #
-    testfiles="$testfiles pingpong.out"
-    rm -f pingpong.out
-    #MakeExe pingpong
-
-    echo '*** Testing pt-2-pt from Fortran (3) ***' 
-    $mpirun $args -np 2 ./pingpong_f "$@" >> /dev/null 
-    CheckOutput pingpong
-    #CleanExe pingpong
-    #
-    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
-#
-writesummaryfile=$savewritesummaryfile
-echo '*** Checking for differences from expected output ***'
-CheckAllOutput pt2pt.diff
-exit 0
-