changeset f596091c854d in /z/repo/m5 details: http://repo.m5sim.org/m5?cmd=changeset;node=f596091c854d description: se.py: Modify script to make multiprogramming much easier. Now, instead of --bench benchname, you can do --bench bench1-bench2-bench3 and it will set up a simulation that instantiates those three workloads. Only caveat is that now, for sanity checking, your -n X must match the number of benches in the list.
diffstat: configs/example/se.py | 28 +++++++++++++++++++--------- 1 files changed, 19 insertions(+), 9 deletions(-) diffs (51 lines): diff -r c40d598146ec -r f596091c854d configs/example/se.py --- a/configs/example/se.py Sat Mar 19 21:12:55 2011 -0700 +++ b/configs/example/se.py Sat Mar 19 21:12:59 2011 -0700 @@ -76,20 +76,30 @@ print "Error: script doesn't take any positional arguments" sys.exit(1) +multiprocesses = [] +apps = [] + if options.bench: - try: - if buildEnv['TARGET_ISA'] != 'alpha': - print >>sys.stderr, "Simpoints code only works for Alpha ISA at this time" + apps = options.bench.split("-") + if len(apps) != options.num_cpus: + print "number of benchmarks not equal to set num_cpus!" + sys.exit(1) + + for app in apps: + try: + if buildEnv['TARGET_ISA'] != 'alpha': + print >>sys.stderr, "Simpoints code only works for Alpha ISA at this time" + sys.exit(1) + exec("workload = %s('alpha', 'tru64', 'ref')" % app) + multiprocesses.append(workload.makeLiveProcess()) + except: + print >>sys.stderr, "Unable to find workload for %s" % app sys.exit(1) - exec("workload = %s('alpha', 'tru64', 'ref')" % options.bench) - process = workload.makeLiveProcess() - except: - print >>sys.stderr, "Unable to find workload for %s" % options.bench - sys.exit(1) else: process = LiveProcess() process.executable = options.cmd process.cmd = [options.cmd] + options.options.split() + multiprocesses.append(process) if options.input != "": @@ -151,7 +161,7 @@ CacheConfig.config_cache(options, system) for i in xrange(np): - system.cpu[i].workload = process + system.cpu[i].workload = multiprocesses[i] if options.fastmem: system.cpu[0].physmem_port = system.physmem.port _______________________________________________ m5-dev mailing list m5-dev@m5sim.org http://m5sim.org/mailman/listinfo/m5-dev