import commandArgs import subprocess PROGRAM_NAME="..." NUM_REPETITION=3 NUM_THREADS=[ 1, 2, 4, 8, 12, 14] for nThreads in THREADS: args = {\ 'nx':64*14, 'ny':128, 'nz':128,\ "nseqi":128,\ "dump":"off",\ "nthreads":nThreads,\ } for nRep in NUM_REPETITION: process = subprocess.Popen(PROGRAM_NAME+commandArgs.makeArgs(args), shell=True) process.wait()
import commandArgs import subprocess PROGRAM_NAME = "../../../../../build/src/tasks/running_wave/running_wave_sequential/running_wave_sequential" NUM_REPETITION = 3 NUM_THREADS = [1, 2, 4, 8, 12, 14, 16] for nThreads in NUM_THREADS: args = {\ 'nx':4096, 'ny':128, 'nz':128,\ "nseqi":32,\ "dump":"off",\ "nthreads":nThreads,\ } for nRep in range(NUM_REPETITION): output = "output_" + str(nThreads) + "_" + str(nRep) + ".txt" process = subprocess.Popen( "mpirun -wait -stdiodir ./scal_omp -stdout " + output + " " + PROGRAM_NAME + " " + commandArgs.makeArgs(args), shell=True) process.wait()
import commandArgs import subprocess PROGRAM_NAME="..." MAX_NUM_NODES_DEG=4 NUM_NODES=[ 2**n for n in range(1, MAX_NUM_NODES_DEG)] NUM_THREADS=14 NUM_REPETITION=3 for nNodes in NUM_NODES: args = {\ 'nx':3584, 'ny':256, 'nz':256,\ # 3584=256*14 #'nx':128, 'ny':32, 'nz':32,\ "npari":128, "ndomi":1,\ "dump":"off",\ "nthreads":NUM_THREADS,\ } for nRep in NUM_REPETITION: process = subprocess.Popen("mpirun -np "+str(nNodes)+" -ppn 1 "+PROGRAM_NAME+commandArgs.makeArgs(args), shell=True) process.wait()
import sys PROGRAM_NAME = "../../../../../build/src/tasks/running_wave/running_wave_just_parallel/running_wave_just_parallel" DIR_RESULTS = "./results/" if (os.path.exists(DIR_RESULTS)): for (dirpath, dirnames, filenames) in os.walk(DIR_RESULTS): for file in filenames: os.remove(DIR_RESULTS + file) else: os.mkdir(DIR_RESULTS) NUM_THREADS = 4 NUM_PROCESS = 2 args = {\ "nx":32, "ny":32, "nz":32,\ "npx":NUM_PROCESS, "npy":1, "npz":1,\ "gx":8, "gy":0, "gz":0,\ "npari":1, "ndomi":1,\ "dump":"on",\ "dir":DIR_RESULTS,\ "dim":1,\ "nthreads":NUM_THREADS,\ } process = subprocess.Popen("mpirun -np " + str(NUM_PROCESS) + " -ppn " + str(NUM_PROCESS) + " " + PROGRAM_NAME + " " + commandArgs.makeArgs(args), shell=True) process.wait()
import commandArgs import subprocess PROGRAM_NAME = "../../../../../build/bin/running_wave_global_fft" MAX_NUM_PROCESS_DEG = 4 NUM_PROCESS = [2**n for n in range(1, MAX_NUM_PROCESS_DEG + 1)] NUM_THREADS = 1 NUM_REPETITION = 3 for nProcess in NUM_PROCESS: args = {\ 'nx':256*nProcess, 'ny':128, 'nz':128,\ 'gx':16, 'gy':0, 'gz':0,\ "npari":32, "ndomi":1,\ "dump":"off",\ "nthreads":NUM_THREADS,\ } for nRep in range(NUM_REPETITION): output = "output_wsg_" + str(nProcess) + "_" + str(nRep) + ".txt" process = subprocess.Popen("mpirun -np "+str(nProcess)+" -ppn "+str(nProcess)+" -wait -maxtime 60 -stdout "+\ output+" "+PROGRAM_NAME+" "+commandArgs.makeArgs(args), shell=True) process.wait()