How is cpu2000.py supposed to work?  I'm in the head of the repo, and
if I try to run swim on zizzer I get this:

% build/ALPHA_SE/m5.debug configs/example/se.py --bench=swim
[...]
command line: build/ALPHA_SE/m5.debug configs/example/se.py --bench=swim
Global frequency set at 1000000000000 ticks per second
Permission denied
unable to open "/dist/m5/cpu2000/data/swim/ref/output/swim.out" for writing
fatal: can't open output file
 @ cycle 0
[openOutputFile:build/ALPHA_SE/sim/process.cc, line 190]

There are some comments in makeLiveProcess() that make it look like
it's intended to use the cwd or m5 output dir (which makes sense), but
the code in Benchmark.__init__() is setting the output dir to be where
the inputs are originally from.  I worked around it with the patch
below, but I'm not sure if that's the right thing to do.  If it is,
let me know and I'll commit, but if not please help.

Thanks,

Steve

------------------------

diff -r 641718b12a6b configs/common/cpu2000.py
--- a/configs/common/cpu2000.py Mon Jun 09 20:37:05 2008 -0400
+++ b/configs/common/cpu2000.py Mon Jun 09 23:13:03 2008 -0400
@@ -106,7 +106,6 @@ class Benchmark(object):
         all_dir = joinpath(data_dir, 'all')
         # dirs for input & output files for this input set
         inputs_dir = joinpath(data_dir, input_set, 'input')
-        outputs_dir = joinpath(data_dir, input_set, 'output')
         # keep around which input set was specified
         self.input_set = input_set

@@ -116,8 +115,6 @@ class Benchmark(object):
         self.inputs_dir = [ inputs_dir ]
         if isdir(all_dir):
             self.inputs_dir += [ joinpath(all_dir, 'input') ]
-        if isdir(outputs_dir):
-            self.outputs_dir = outputs_dir

         if not hasattr(self.__class__, 'stdin'):
             self.stdin = joinpath(inputs_dir, '%s.in' % self.name)
@@ -125,7 +122,7 @@ class Benchmark(object):
                 self.stdin = None

         if not hasattr(self.__class__, 'stdout'):
-            self.stdout = joinpath(outputs_dir, '%s.out' % self.name)
+            self.stdout = '%s.out' % self.name
             if not isfile(self.stdout):
                 self.stdout = None
_______________________________________________
m5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/m5-dev

Reply via email to