ruby: record fully busy cycle with in the controller
authorNilay Vaish <nilay@cs.wisc.edu>
Mon, 11 Feb 2013 03:26:22 +0000 (21:26 -0600)
committerNilay Vaish <nilay@cs.wisc.edu>
Mon, 11 Feb 2013 03:26:22 +0000 (21:26 -0600)
commita49b1df3f0d1e1c9ce46675d9fce7787d98caca7
tree9c79c45ad9d0c19cff355a156f7e5ac2ee715998
parent10f1f8c6a49fa96ffb420eaa8cdd3641128ec9ec
ruby: record fully busy cycle with in the controller
This patch does several things. First, the counter for fully busy cycles for a
controller is now kept with in the controller, instead of being part of the profiler.
Second, the topology class no longer keeps an array of controllers which was only
used for printing stats. Instead, ruby system will now ask each controller to print
the stats. Thirdly, the statistical variable for recording how many different types
were created is being moved in to the controller from the profiler. Note that for
printing, the profiler will collate results from different controllers.
16 files changed:
src/mem/protocol/MOESI_CMP_directory.slicc
src/mem/ruby/common/Global.cc
src/mem/ruby/common/Global.hh
src/mem/ruby/network/Topology.cc
src/mem/ruby/network/Topology.hh
src/mem/ruby/network/garnet/BaseGarnetNetwork.cc
src/mem/ruby/network/simple/SimpleNetwork.cc
src/mem/ruby/profiler/Profiler.cc
src/mem/ruby/profiler/Profiler.hh
src/mem/ruby/slicc_interface/AbstractController.cc
src/mem/ruby/slicc_interface/AbstractController.hh
src/mem/ruby/slicc_interface/RubySlicc_Profiler_interface.cc
src/mem/ruby/slicc_interface/RubySlicc_Profiler_interface.hh
src/mem/ruby/system/MachineID.hh
src/mem/ruby/system/System.cc
src/mem/slicc/symbols/StateMachine.py