1#!/usr/bin/env python 2# (C) 2001 by Argonne National Laboratory. 3# See COPYRIGHT in top-level directory. 4# 5# Note that I repeat code for each test just in case I want to 6# run one separately. I can simply copy it out of here and run it. 7# A single test can typically be chgd simply by altering its value(s) 8# for one or more of: 9# PYEXT, NMPDS, HFILE 10 11import os, sys, commands 12sys.path += [os.getcwd()] # do this once 13 14print "mpi tests---------------------------------------------------" 15 16clusterHosts = [ 'bp4%02d' % (i) for i in range(0,8) ] 17print "clusterHosts=", clusterHosts 18 19MPIDir = "/home/rbutler/mpich2" 20 21# test: cpi 22print "TEST cpi" 23PYEXT = '.py' 24NMPDS = 1 25HFILE = 'temph' 26import os,socket 27from mpdlib import MPDTest 28mpdtest = MPDTest() 29os.environ['MPD_CON_EXT'] = 'testing' 30os.system("mpdallexit%s 1> /dev/null 2> /dev/null" % (PYEXT) ) 31os.system("mpdboot%s -1 -f %s -n %d" % (PYEXT,HFILE,NMPDS) ) 32expout = ['Process 0 of 3','Process 1 of 3','Process 2 of 3'] 33rv = mpdtest.run(cmd="mpiexec%s -n 3 %s/examples/cpi" % (PYEXT,MPIDir), 34 grepOut=1, expOut=expout ) 35os.system("mpdallexit%s 1> /dev/null 2> /dev/null" % (PYEXT) ) 36 37# test: spawn1 38print "TEST spawn1" 39PYEXT = '.py' 40NMPDS = 1 41HFILE = 'temph' 42import os,socket 43from mpdlib import MPDTest 44mpdtest = MPDTest() 45os.environ['MPD_CON_EXT'] = 'testing' 46os.system("mpdallexit%s 1> /dev/null 2> /dev/null" % (PYEXT) ) 47os.system("mpdboot%s -1 -f %s -n %d" % (PYEXT,HFILE,NMPDS) ) 48expout = ['No Errors'] 49olddir = os.getcwd() 50os.chdir('%s/test/mpi/spawn' % (MPIDir)) 51rv = mpdtest.run(cmd="%s/mpiexec%s -n 1 spawn1" % (olddir,PYEXT), # -n 1 52 grepOut=1, expOut=expout ) 53os.chdir(olddir) 54os.system("mpdallexit%s 1> /dev/null 2> /dev/null" % (PYEXT) ) 55 56# test: spawn2 57print "TEST spawn2" 58PYEXT = '.py' 59NMPDS = 1 60HFILE = 'temph' 61import os,socket 62from mpdlib import MPDTest 63mpdtest = MPDTest() 64os.environ['MPD_CON_EXT'] = 'testing' 65os.system("mpdallexit%s 1> /dev/null 2> /dev/null" % (PYEXT) ) 66os.system("mpdboot%s -1 -f %s -n %d" % (PYEXT,HFILE,NMPDS) ) 67expout = ['No Errors'] 68olddir = os.getcwd() 69os.chdir('%s/test/mpi/spawn' % (MPIDir)) 70rv = mpdtest.run(cmd="%s/mpiexec%s -n 1 spawn2" % (olddir,PYEXT), # -n 1 71 grepOut=1, expOut=expout ) 72os.chdir(olddir) 73os.system("mpdallexit%s 1> /dev/null 2> /dev/null" % (PYEXT) ) 74 75# test: spawnmult2 76print "TEST spawnmult2" 77PYEXT = '.py' 78NMPDS = 1 79HFILE = 'temph' 80import os,socket 81from mpdlib import MPDTest 82mpdtest = MPDTest() 83os.environ['MPD_CON_EXT'] = 'testing' 84os.system("mpdallexit%s 1> /dev/null 2> /dev/null" % (PYEXT) ) 85os.system("mpdboot%s -1 -f %s -n %d" % (PYEXT,HFILE,NMPDS) ) 86expout = ['No Errors'] 87olddir = os.getcwd() 88os.chdir('%s/test/mpi/spawn' % (MPIDir)) 89rv = mpdtest.run(cmd="%s/mpiexec%s -n 2 spawnmult2" % (olddir,PYEXT), # -n 2 90 grepOut=1, expOut=expout ) 91os.chdir(olddir) 92os.system("mpdallexit%s 1> /dev/null 2> /dev/null" % (PYEXT) ) 93 94# test: spawnargv 95print "TEST spawnargv" 96PYEXT = '.py' 97NMPDS = 1 98HFILE = 'temph' 99import os,socket 100from mpdlib import MPDTest 101mpdtest = MPDTest() 102os.environ['MPD_CON_EXT'] = 'testing' 103os.system("mpdallexit%s 1> /dev/null 2> /dev/null" % (PYEXT) ) 104os.system("mpdboot%s -1 -f %s -n %d" % (PYEXT,HFILE,NMPDS) ) 105expout = ['No Errors'] 106olddir = os.getcwd() 107os.chdir('%s/test/mpi/spawn' % (MPIDir)) 108rv = mpdtest.run(cmd="%s/mpiexec%s -n 1 spawnargv" % (olddir,PYEXT), # -n 2 109 grepOut=1, expOut=expout ) 110os.chdir(olddir) 111os.system("mpdallexit%s 1> /dev/null 2> /dev/null" % (PYEXT) ) 112 113# test: spawnintra 114print "TEST spawnintra" 115PYEXT = '.py' 116NMPDS = 1 117HFILE = 'temph' 118import os,socket 119from mpdlib import MPDTest 120mpdtest = MPDTest() 121os.environ['MPD_CON_EXT'] = 'testing' 122os.system("mpdallexit%s 1> /dev/null 2> /dev/null" % (PYEXT) ) 123os.system("mpdboot%s -1 -f %s -n %d" % (PYEXT,HFILE,NMPDS) ) 124expout = ['No Errors'] 125olddir = os.getcwd() 126os.chdir('%s/test/mpi/spawn' % (MPIDir)) 127rv = mpdtest.run(cmd="%s/mpiexec%s -n 1 spawnintra" % (olddir,PYEXT), # -n 2 128 grepOut=1, expOut=expout ) 129os.chdir(olddir) 130os.system("mpdallexit%s 1> /dev/null 2> /dev/null" % (PYEXT) ) 131 132# test: namepub 133print "TEST namepub" 134PYEXT = '.py' 135NMPDS = 1 136HFILE = 'temph' 137import os,socket 138from mpdlib import MPDTest 139mpdtest = MPDTest() 140os.environ['MPD_CON_EXT'] = 'testing' 141os.system("mpdallexit%s 1> /dev/null 2> /dev/null" % (PYEXT) ) 142os.system("mpdboot%s -1 -f %s -n %d" % (PYEXT,HFILE,NMPDS) ) 143expout = ['No Errors'] 144olddir = os.getcwd() 145os.chdir('%s/test/mpi/spawn' % (MPIDir)) 146rv = mpdtest.run(cmd="%s/mpiexec%s -n 1 namepub" % (olddir,PYEXT), # -n 2 147 grepOut=1, expOut=expout ) 148os.chdir(olddir) 149os.system("mpdallexit%s 1> /dev/null 2> /dev/null" % (PYEXT) ) 150