diff options
Diffstat (limited to 'configs')
-rw-r--r-- | configs/common/FSConfig.py | 9 | ||||
-rw-r--r-- | configs/common/Options.py | 9 | ||||
-rw-r--r-- | configs/common/Simulation.py | 10 | ||||
-rw-r--r-- | configs/common/cpu2000.py | 2 | ||||
-rw-r--r-- | configs/example/fs.py | 7 | ||||
-rw-r--r-- | configs/ruby/Ruby.py | 6 |
6 files changed, 33 insertions, 10 deletions
diff --git a/configs/common/FSConfig.py b/configs/common/FSConfig.py index 3e0a3df2e..f54d63852 100644 --- a/configs/common/FSConfig.py +++ b/configs/common/FSConfig.py @@ -483,6 +483,15 @@ def makeDualRoot(testSystem, driveSystem, dumpfile): self.etherlink.int0 = Parent.testsys.tsunami.ethernet.interface self.etherlink.int1 = Parent.drivesys.tsunami.ethernet.interface + if hasattr(testSystem, 'realview'): + self.etherlink.int0 = Parent.testsys.realview.ethernet.interface + self.etherlink.int1 = Parent.drivesys.realview.ethernet.interface + elif hasattr(testSystem, 'tsunami'): + self.etherlink.int0 = Parent.testsys.tsunami.ethernet.interface + self.etherlink.int1 = Parent.drivesys.tsunami.ethernet.interface + else: + fatal("Don't know how to connect these system together") + if dumpfile: self.etherdump = EtherDump(file=dumpfile) self.etherlink.dump = Parent.etherdump diff --git a/configs/common/Options.py b/configs/common/Options.py index d5ea85090..1941875bc 100644 --- a/configs/common/Options.py +++ b/configs/common/Options.py @@ -27,7 +27,7 @@ # Authors: Lisa Hsu # system options -parser.add_option("-c", "--cpu-type", type="choice", default="atomic", +parser.add_option("--cpu-type", type="choice", default="atomic", choices = ["atomic", "timing", "detailed", "inorder"], help = "type of cpu to run with") parser.add_option("-n", "--num-cpus", type="int", default=1) @@ -63,7 +63,8 @@ parser.add_option("--work-end-exit-count", action="store", type="int", help="exit at specified work end count") parser.add_option("--work-begin-exit-count", action="store", type="int", help="exit at specified work begin count") - +parser.add_option("--init-param", action="store", type="int", default=0, + help="Parameter available in simulation with m5 initparam") # Checkpointing options ###Note that performing checkpointing via python script files will override @@ -84,6 +85,10 @@ parser.add_option("--work-end-checkpoint-count", action="store", type="int", help="checkpoint at specified work end count") parser.add_option("--work-cpus-checkpoint-count", action="store", type="int", help="checkpoint and exit when active cpu count is reached") +parser.add_option("--restore-with-cpu", action="store", type="choice", + default="atomic", choices = ["atomic", "timing", + "detailed", "inorder"], + help = "cpu type for restoring from a checkpoint") # CPU Switching - default switch model goes from a checkpoint diff --git a/configs/common/Simulation.py b/configs/common/Simulation.py index 1897fa8cb..434fe8369 100644 --- a/configs/common/Simulation.py +++ b/configs/common/Simulation.py @@ -60,7 +60,15 @@ def setCPUClass(options): test_mem_mode = 'atomic' if not atomic: - if options.checkpoint_restore != None or options.fast_forward: + if options.checkpoint_restore != None: + if options.restore_with_cpu != options.cpu_type: + CPUClass = TmpClass + class TmpClass(AtomicSimpleCPU): pass + else: + if options.restore_with_cpu != "atomic": + test_mem_mode = 'timing' + + elif options.fast_forward: CPUClass = TmpClass class TmpClass(AtomicSimpleCPU): pass else: diff --git a/configs/common/cpu2000.py b/configs/common/cpu2000.py index a8cc0ce5f..443399234 100644 --- a/configs/common/cpu2000.py +++ b/configs/common/cpu2000.py @@ -731,7 +731,7 @@ class vpr_route(vpr): '-first_iter_pres_fac', '4', '-initial_pres_fac', '8' ] output = 'route_log.out' -all = [ ammp, applu, apsi, art110, art470, equake, facerec, fma3d, galgel, +all = [ ammp, applu, apsi, art, art110, art470, equake, facerec, fma3d, galgel, lucas, mesa, mgrid, sixtrack, swim, wupwise, bzip2_source, bzip2_graphic, bzip2_program, crafty, eon_kajiya, eon_cook, eon_rushmeier, gap, gcc_166, gcc_200, gcc_expr, gcc_integrate, diff --git a/configs/example/fs.py b/configs/example/fs.py index 5945e5d9b..05e35c4ba 100644 --- a/configs/example/fs.py +++ b/configs/example/fs.py @@ -151,6 +151,8 @@ if options.kernel is not None: if options.script is not None: test_sys.readfile = options.script +test_sys.init_param = options.init_param + test_sys.cpu = [TestCPUClass(cpu_id=i) for i in xrange(np)] CacheConfig.config_cache(options, test_sys) @@ -190,8 +192,8 @@ if len(bm) == 2: elif buildEnv['TARGET_ISA'] == 'x86': drive_sys = makeX86System(drive_mem_mode, np, bm[1]) elif buildEnv['TARGET_ISA'] == 'arm': - drive_sys = makeArmSystem(drive_mem_mode, - machine_options.machine_type, bm[1]) + drive_sys = makeArmSystem(drive_mem_mode, options.machine_type, bm[1]) + drive_sys.cpu = DriveCPUClass(cpu_id=0) drive_sys.cpu.connectAllPorts(drive_sys.membus) if options.fastmem: @@ -199,6 +201,7 @@ if len(bm) == 2: if options.kernel is not None: drive_sys.kernel = binary(options.kernel) + drive_sys.init_param = options.init_param root = makeDualRoot(test_sys, drive_sys, options.etherdump) elif len(bm) == 1: root = Root(system=test_sys) diff --git a/configs/ruby/Ruby.py b/configs/ruby/Ruby.py index 1562c531c..a07bea1bb 100644 --- a/configs/ruby/Ruby.py +++ b/configs/ruby/Ruby.py @@ -67,7 +67,8 @@ def define_options(parser): def create_system(options, system, piobus = None, dma_devices = []): system.ruby = RubySystem(clock = options.clock, - stats_filename = options.ruby_stats) + stats_filename = options.ruby_stats, + no_mem_vec = options.use_map) ruby = system.ruby protocol = buildEnv['PROTOCOL'] @@ -154,11 +155,8 @@ def create_system(options, system, piobus = None, dma_devices = []): ruby_profiler = RubyProfiler(ruby_system = ruby, num_of_sequencers = len(cpu_sequencers)) - ruby_tracer = RubyTracer(ruby_system = ruby) - ruby.network = network ruby.profiler = ruby_profiler - ruby.tracer = ruby_tracer ruby.mem_size = total_mem_size ruby._cpu_ruby_ports = cpu_sequencers ruby.random_seed = options.random_seed |