Hi Steve,

I am sorry that I don't exactly understand what you mean. I use the
timing memory model, but I cannot find  any "utilization of the bus
between the L2 and memory " in m5stats.txt. I also tried the timing
CPU model and O3 CPU model, and there has no luck.  I attach my
configuration.

Thanks a lot,

Meng-Ju

=======================

import m5
from m5.objects import *
import os, optparse, sys
m5.AddToPath('./configs')
import Simulation
from Caches import *
import Mybench


config_path = os.path.dirname(os.path.abspath(__file__))
print config_path
config_root = os.path.dirname(config_path)+"/configs"
print config_root
m5_root = os.path.dirname(config_root)
print m5_root

parser = optparse.OptionParser()

# Benchmark options

parser.add_option("-b", "--benchmark", default="",
                 help="The benchmark to be loaded.")

parser.add_option("-c", "--chkpt", default="",
                 help="The checkpoint to load.")

execfile(os.path.join(config_root, "configs", "Options.py"))

(options, args) = parser.parse_args()

if args:
    print "Error: script doesn't take any positional arguments"
    sys.exit(1)


if options.benchmark == 'perlbench':
   process = Mybench.perlbench
elif options.benchmark == 'bzip2':
   process = Mybench.bzip2
elif options.benchmark == 'equake':
   process = Mybench.equake
elif options.benchmark == 'test':
   process = Mybench.test


if options.chkpt != "":
   process.chkpt = options.chkpt


(CPUClass, test_mem_mode, FutureClass) = Simulation.setCPUClass(options)

CPUClass.clock = '2GHz'
np = options.num_cpus

cmt_cpus = [CPUClass(cpu_id = i) for i in xrange(np)]

# ----------------------
# Create a system, and add system wide objects
# ----------------------

system = System(cpu = cmt_cpus,
                physmem = PhysicalMemory(range=AddrRange("1024MB"),
latency = '200ns'),
                membus = Bus(clock='400MHz',width=64), mem_mode='timing')

# ----------------------
# Connect the L2 cache and memory together
# ----------------------


if options.l2cache:
    system.l2 = L2Cache(size='4MB')
    system.tol2bus = Bus()
    system.l2.cpu_side = system.tol2bus.port
    system.l2.mem_side = system.membus.port


for i in xrange(np):
    if options.caches:
        system.cpu[i].addPrivateSplitL1Caches(L1Cache(size = '32kB'),
                                              L1Cache(size = '64kB'))

    if options.l2cache:
        system.cpu[i].connectMemPorts(system.tol2bus)
    else:
        system.cpu[i].connectMemPorts(system.membus)

    system.cpu[i].workload = [process[i]]

system.physmem.port = system.membus.port

root = Root(system = system)
root.system.mem_mode = 'timing'

Simulation.run(options, root, system, FutureClass)
_______________________________________________
m5-users mailing list
[email protected]
http://m5sim.org/cgi-bin/mailman/listinfo/m5-users

Reply via email to