diff options
author | Nilay Vaish <nilay@cs.wisc.edu> | 2013-02-10 21:26:22 -0600 |
---|---|---|
committer | Nilay Vaish <nilay@cs.wisc.edu> | 2013-02-10 21:26:22 -0600 |
commit | a49b1df3f0d1e1c9ce46675d9fce7787d98caca7 (patch) | |
tree | 9c79c45ad9d0c19cff355a156f7e5ac2ee715998 /src/mem/ruby/common | |
parent | 10f1f8c6a49fa96ffb420eaa8cdd3641128ec9ec (diff) | |
download | gem5-a49b1df3f0d1e1c9ce46675d9fce7787d98caca7.tar.xz |
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.
Diffstat (limited to 'src/mem/ruby/common')
-rw-r--r-- | src/mem/ruby/common/Global.cc | 3 | ||||
-rw-r--r-- | src/mem/ruby/common/Global.hh | 6 |
2 files changed, 9 insertions, 0 deletions
diff --git a/src/mem/ruby/common/Global.cc b/src/mem/ruby/common/Global.cc index a2ed4e6ae..407e37307 100644 --- a/src/mem/ruby/common/Global.cc +++ b/src/mem/ruby/common/Global.cc @@ -28,4 +28,7 @@ #include "mem/ruby/common/Global.hh" +using namespace std; + RubySystem* g_system_ptr = 0; +vector<map<uint32_t, AbstractController *> > g_abs_controls; diff --git a/src/mem/ruby/common/Global.hh b/src/mem/ruby/common/Global.hh index d6597be89..671f423f0 100644 --- a/src/mem/ruby/common/Global.hh +++ b/src/mem/ruby/common/Global.hh @@ -29,10 +29,16 @@ #ifndef __MEM_RUBY_COMMON_GLOBAL_HH__ #define __MEM_RUBY_COMMON_GLOBAL_HH__ +#include <map> +#include <vector> + #include "base/str.hh" class RubySystem; extern RubySystem* g_system_ptr; +class AbstractController; +extern std::vector<std::map<uint32_t, AbstractController *> > g_abs_controls; + #endif // __MEM_RUBY_COMMON_GLOBAL_HH__ |