Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
this test actually caused an overflow which led to strange things and leaks.
[simgrid.git] / teshsuite / smpi / mpich3-test / runtests
index 721da48..1e35c24 100755 (executable)
@@ -72,6 +72,7 @@ $testCount = 0;          # Used with batchRun to count tests.
 $batrundir = ".";        # Set to the directory into which to run the examples
 
 $execarg="";
+$wrapparg="";
 # TAP (Test Anything Protocol) output
 my $tapoutput = 0;
 my $tapfile = '';
@@ -154,7 +155,7 @@ foreach $_ (@ARGV) {
     elsif (/--?maxnp=(.*)/) { $np_max = $1; }
     elsif (/--?tests=(.*)/) { $listfiles = $1; }
     elsif (/--?srcdir=(.*)/) { $srcdir = $1;
-       $mpiexec="$mpiexec  -platform ${srcdir}/../../../../examples/platforms/small_platform_with_routers.xml -hostfile ${srcdir}/../../hostfile_coll --log=root.thr:critical --cfg=smpi/running_power:1e9  --cfg=smpi/async_small_thresh:65536"; }
+       $mpiexec="$mpiexec  -platform ${srcdir}/../../../../examples/platforms/small_platform_with_routers.xml -hostfile ${srcdir}/../../hostfile_coll --log=root.thr:critical --cfg=smpi/running-power:1e9  --cfg=smpi/async-small-thresh:65536"; }
     elsif (/--?verbose/) { $verbose = 1; }
     elsif (/--?showprogress/) { $showProgress = 1; }
     elsif (/--?debug/) { $debug = 1; }
@@ -162,6 +163,10 @@ foreach $_ (@ARGV) {
     elsif (/--?batchdir=(.*)/) { $batrundir = $1; }
     elsif (/--?timeoutarg=(.*)/) { $timeoutArgPattern = $1; }
     elsif (/--?execarg=(.*)/) { $execarg = "$execarg $1"; }
+    elsif (/VALGRIND_COMMAND=(.*)/) { 
+        $valgrind = $1; }
+    elsif (/VALGRIND_OPTIONS=(.*)/) {
+         $wrapparg = "-wrapper \"$valgrind $1\""; }
     elsif (/--?xmlfile=(.*)/) {
        $xmlfile   = $1;
        if (! ($xmlfile =~ /^\//)) {
@@ -207,14 +212,6 @@ foreach $_ (@ARGV) {
         # we do not know at this point how many tests will be run, so do
         # not print a test plan line like "1..450" until the very end
     }
-    else {
-       print STDERR "Unrecognized argument $_\n";
-       print STDERR "runtests [-tests=testfile] [-np=nprocesses] \
-        [-maxnp=max-nprocesses] [-srcdir=location-of-tests] \
-        [-xmlfile=filename ] [-noxmlclose] \
-        [-verbose] [-showprogress] [-debug] [-batch]\n";
-       exit(1);
-    }
 }
 
 # Perform any post argument processing
@@ -602,7 +599,7 @@ sub RunMPIProgram {
        &$InitForTest();
     }
     print STDOUT "Env includes $progEnv\n" if $verbose;
-    print STDOUT "$mpiexec $mpiexecArgs $np_arg $np $program_wrapper ./$programname $progArgs\n" if $verbose;
+    print STDOUT "$mpiexec $wrapparg $mpiexecArgs $np_arg $np $program_wrapper ./$programname $progArgs\n" if $verbose;
     print STDOUT "." if $showProgress;
     # Save and restore the environment if necessary before running mpiexec.
     if ($progEnv ne "") {
@@ -616,7 +613,7 @@ sub RunMPIProgram {
            }
        }
     }
-    open ( MPIOUT, "$mpiexec $np_arg $np $mpiexecArgs $program_wrapper ./$programname $progArgs 2>&1 |" ) ||
+    open ( MPIOUT, "$mpiexec $wrapparg $np_arg $np $mpiexecArgs $program_wrapper ./$programname $progArgs 2>&1 |" ) ||
        die "Could not run ./$programname\n";
     if ($progEnv ne "") {
        %ENV = %saveEnv;
@@ -627,7 +624,7 @@ sub RunMPIProgram {
     }
     else {
        if ($verbose) {
-           $inline = "$mpiexec $np_arg $np $program_wrapper ./$programname\n";
+           $inline = "$mpiexec $wrapparg $np_arg $np $program_wrapper ./$programname\n";
        }
        else {
            $inline = "";