28 (
"clk",
"-clk_rdt",
"clk.rdt",
"Cholesky Decomposition: matrix->Decompose_Cholesky(). Decompose matrix using Cholesky Decomposition."),
29 (
"sfwd",
"-sfwd_rdt",
"sfwd.rdt",
"Substitute Forward: matrix->Substitute_Forward()."),
30 (
"sbck",
"-sbck_rdt",
"sbck.rdt",
"Substitute Backward: matrix->Substitute_Backard().")
35 def long_description():
36 desc =
"Executes the skyline tool collecting statistics for the following steps:" 37 for rdtarg
in rdtfiles_l :
38 desc = desc +
'\n\t' + rdtarg[0] +
' (' + rdtarg[1] +
' ' + rdtarg [2] +
') : ' + rdtarg[3]
44 import shlex, subprocess
51 builddir=
"@PERFTEST_BASE_DIR@" 52 datadir=
"@PERFTEST_SMALL_DATA_DIR@" 55 sys.stderr.write(
'ERROR (test.py): '+message+
'\n')
61 if not os.path.isdir(builddir) :
62 error(builddir+
' is an invalid build directory.', 5)
64 rundir = os.path.join(builddir,
'scripts',
'skyline_tst03')
65 if not os.path.isdir(rundir) :
66 error(rundir+
' is an invalid run directory.', 1)
67 if not os.path.isdir(builddir) :
68 error(builddir+
' is an invalid build directory.', 1)
70 executable=os.path.join(builddir,
"progs",
"skyline",
"skyline-perf")
71 if not os.path.isfile(executable) :
72 error(executable+
' is an invalid executable file name.', 1)
74 inputfn = os.path.join(datadir,
"substruct",
"inputs",
"cube1.txt")
75 if not os.path.isfile(inputfn) :
76 error(inputfn+
' is an invalid input file name.', 1)
78 arguments =
' -if ' + inputfn
79 arguments = arguments +
' -porder 4' 80 for rdtarg
in rdtfiles_l :
81 arguments = arguments +
' ' + rdtarg[1] +
' ' + rdtarg[2]
83 return rundir, executable+arguments
87 limits = {
"cpu" : (resource.RLIMIT_CPU, 1000,
"Max CPU user time in seconds (not wall clock time)"),
98 print "Setting resource limit in child" 99 for k, v
in limits.iteritems() :
100 resource.setrlimit(v[0], (v[1],v[1]))
106 for f
in rdtfiles_l :
108 rdt_fn = os.path.join(rundir,f[2])
110 results[rdt_id] = (rdt_fn, rdt_dsc)
118 args = shlex.split(cmd)
121 for i
in range(ntimes) :
122 p = subprocess.Popen(args, preexec_fn=setlimits, stdout=sout, stderr=serr, cwd=rundir)
124 if (p.returncode != 0) :
125 return p.returncode, {}
def error(message, status)
def sumarize_rdt_files(rundir)