summaryrefslogtreecommitdiff
path: root/configs/ruby/MOESI_CMP_token.py
diff options
context:
space:
mode:
authorNilay Vaish <nilay@cs.wisc.edu>2013-08-20 11:32:31 -0500
committerNilay Vaish <nilay@cs.wisc.edu>2013-08-20 11:32:31 -0500
commitc4e7e18eeb72ede635ea75314406a19fa532fdd6 (patch)
treedb08ff711f1548f541679be9b7be94322da03972 /configs/ruby/MOESI_CMP_token.py
parentc6062a3981e121d43ace2313766bdd4a1ce52d94 (diff)
downloadgem5-c4e7e18eeb72ede635ea75314406a19fa532fdd6.tar.xz
ruby: add option for number of transitions per cycle
The number of transitions per cycle that a controller can carry out is a proxy for the number of ports that a controller has. This value is currently 32 which is way too high. The patch introduces an option for the number of ports and uses this option in the protocol files to set the number of transitions. The default value is being set to 4. None of the se regressions change. Ruby stats for the fs regression change and are being updated.
Diffstat (limited to 'configs/ruby/MOESI_CMP_token.py')
-rw-r--r--configs/ruby/MOESI_CMP_token.py4
1 files changed, 4 insertions, 0 deletions
diff --git a/configs/ruby/MOESI_CMP_token.py b/configs/ruby/MOESI_CMP_token.py
index 43b9f97e8..c7ec908eb 100644
--- a/configs/ruby/MOESI_CMP_token.py
+++ b/configs/ruby/MOESI_CMP_token.py
@@ -114,6 +114,7 @@ def create_system(options, system, piobus, dma_ports, ruby_system):
options.allow_atomic_migration,
send_evictions = (
options.cpu_type == "detailed"),
+ transitions_per_cycle = options.ports,
ruby_system = ruby_system)
cpu_seq = RubySequencer(version = i,
@@ -149,6 +150,7 @@ def create_system(options, system, piobus, dma_ports, ruby_system):
cntrl_id = cntrl_count,
L2cache = l2_cache,
N_tokens = n_tokens,
+ transitions_per_cycle = options.ports,
ruby_system = ruby_system)
exec("ruby_system.l2_cntrl%d = l2_cntrl" % i)
@@ -188,6 +190,7 @@ def create_system(options, system, piobus, dma_ports, ruby_system):
size = dir_size),
memBuffer = mem_cntrl,
l2_select_num_bits = l2_bits,
+ transitions_per_cycle = options.ports,
ruby_system = ruby_system)
exec("ruby_system.dir_cntrl%d = dir_cntrl" % i)
@@ -205,6 +208,7 @@ def create_system(options, system, piobus, dma_ports, ruby_system):
dma_cntrl = DMA_Controller(version = i,
cntrl_id = cntrl_count,
dma_sequencer = dma_seq,
+ transitions_per_cycle = options.ports,
ruby_system = ruby_system)
exec("ruby_system.dma_cntrl%d = dma_cntrl" % i)