hi!!
I am trying to simulate multicore-multithreading in o3cpu. I am using
m5-ob3. I want the simulation to terminate exactly after reaching some fixed
number of instructions. But the problem is not all threads thread terminated
at same number of instructions. I also tried to solve the problem using the
patch provided by Korey Swellel. But It gave me the segmentation fault, may
be because the patch is not for m5-0b3.
Here is the part of my configuration file:
CPUClass.clock = '2GHz'
np = 2
system = System(cpu = [DerivO3CPU(cpu_id=i) for i in xrange(np)],
physmem = PhysicalMemory(range=AddrRange("1024MB")),
membus = Bus(), mem_mode = test_mem_mode)
system.physmem.port = system.membus.port
## @bipin L3 Cache
system.l3 = L3Cache(size='2MB')
system.tol3Bus = Bus()
system.l3.cpu_side = system.tol3Bus.port
system.l3.mem_side = system.membus.port
## @bipin end of L3 Cache
system.l2 = L2Cache(size='1MB')
system.tol2Bus = Bus()
system.l2.cpu_side = system.tol2Bus.port
system.l2.mem_side = system.tol3Bus.port
system.cpu[0].workload = [Benchmarks.SPECGCCEIO(),Benchmarks.SPECBZIP2EIO()]
system.cpu[1].workload = [Benchmarks.SPECPARSEREIO(),
Benchmarks.SPECPERLBMKEIO()]
## system.cpu[1].workload = [Benchmarks.SPECGCCEIO()]
system.cpu[0].addPrivateSplitL1Caches(L1Cache(size = '16kB'),
L1Cache(size = '8kB'))
system.cpu[0].connectMemPorts(system.tol2Bus)
system.cpu[0].max_insts_all_threads = 100
system.cpu[1].addPrivateSplitL1Caches(L1Cache(size = '16kB'),
L1Cache(size = '8kB'))
system.cpu[1].connectMemPorts(system.tol2Bus)
system.cpu[1].max_insts_all_threads = 100
root = Root(system = system)
Simulation.run(options, root, system, FutureClass)
and the reading from m5stat file is:
.......
..
system.cpu0.commit.COM:count 557
# Number of instructions committed
system.cpu0.commit.COM:count_0 105
# Number of instructions committed
system.cpu0.commit.COM:count_1 452
# Number of instructions committed
.................
..............
system.cpu1.commit.COM:count 206
# Number of instructions committed
system.cpu1.commit.COM:count_0 91
# Number of instructions committed
system.cpu1.commit.COM:count_1 115
# Number of instructions committed
even though i have used maximum number of instructions fixed to 100 why the
result is so varying?
any help would be appreciated
regards,
Prannav
_______________________________________________
m5-users mailing list
[email protected]
http://m5sim.org/cgi-bin/mailman/listinfo/m5-users