ruby: convert to M5 MemorySize

Converted both ruby caches and directory memory to use the M5 MemorySize python
type.
This commit is contained in:
Brad Beckmann
2010-01-29 20:29:23 -08:00
parent 3a835c7cbb
commit 134cc3d48d
8 changed files with 26 additions and 17 deletions

View File

@@ -37,17 +37,13 @@ from m5.util import addToPath
# Note: the L1 Cache latency is only used by the sequencer on fast path hits
#
class L1Cache(RubyCache):
assoc = 2
latency = 3
size = 32768
#
# Note: the L2 Cache latency is not currently used
#
class L2Cache(RubyCache):
assoc = 16
latency = 15
size = 1048576
def create_system(options, phys_mem, piobus, dma_devices):
@@ -74,9 +70,12 @@ def create_system(options, phys_mem, piobus, dma_devices):
#
# First create the Ruby objects associated with this cpu
#
l1i_cache = L1Cache()
l1d_cache = L1Cache()
l2_cache = L2Cache()
l1i_cache = L1Cache(size = options.l1i_size,
assoc = options.l1i_assoc)
l1d_cache = L1Cache(size = options.l1d_size,
assoc = options.l1d_assoc)
l2_cache = L2Cache(size = options.l2_size,
assoc = options.l2_assoc)
cpu_seq = RubySequencer(icache = l1i_cache,
dcache = l1d_cache,

View File

@@ -54,8 +54,12 @@ def create_system(options, physmem, piobus = None, dma_devices = []):
#
network = SimpleNetwork(topology = makeCrossbar(all_cntrls))
mem_size_mb = sum([int(dir_cntrl.directory.size_mb) \
for dir_cntrl in dir_cntrls])
#
# determine the total memory size of the ruby system
#
total_mem_size = MemorySize('0B')
for dir_cntrl in dir_cntrls:
total_mem_size.value += dir_cntrl.directory.size.value
ruby_profiler = RubyProfiler(num_of_sequencers = len(cpu_sequencers))
@@ -66,7 +70,7 @@ def create_system(options, physmem, piobus = None, dma_devices = []):
debug = RubyDebug(filter_string = 'none',
verbosity_string = 'none',
protocol_trace = False),
mem_size_mb = mem_size_mb)
mem_size = total_mem_size)
ruby.cpu_ruby_ports = cpu_sequencers