ruby: fixed clearStats
authorDerek Hower <drh5@cs.wisc.edu>
Wed, 29 Jul 2009 18:46:58 +0000 (13:46 -0500)
committerDerek Hower <drh5@cs.wisc.edu>
Wed, 29 Jul 2009 18:46:58 +0000 (13:46 -0500)
src/mem/ruby/system/CacheMemory.hh
src/mem/ruby/system/System.cc

index cfaa229a5a482d62f922519427b23f10d240a470..7a46bd3a57d8f82d306484f5ae10dde1f60b2121 100644 (file)
@@ -127,6 +127,7 @@ public:
   void print(ostream& out) const;
   void printData(ostream& out) const;
 
+  void clearStats() const;
   void printStats(ostream& out) const;
 
 private:
@@ -561,6 +562,11 @@ void CacheMemory::printData(ostream& out) const
   out << "printData() not supported" << endl;
 }
 
+inline void CacheMemory::clearStats() const
+{
+  m_profiler_ptr->clearStats();
+}
+
 inline
 void CacheMemory::printStats(ostream& out) const
 {
index 2c24c9adef248d5021772c4077b6f0eb0b653fef..ad67cdc8024a28727dc4d7656b65c6f096731855 100644 (file)
@@ -347,15 +347,16 @@ void RubySystem::printStats(ostream& out)
 
 void RubySystem::clearStats() const
 {
-  /*
   m_profiler_ptr->clearStats();
-  for (int i=0; i<m_rubyRequestQueues.size(); i++)
-    for (int j=0;j<m_rubyRequestQueues[i].size(); j++)
-      m_rubyRequestQueues[i][j]->clearStats();
   m_network_ptr->clearStats();
-  for (int i=0; i < MachineType_base_level(MachineType_NUM); i++)
-    m_controllers[i][0]->clearStats();
-  */
+  for (map<string, CacheMemory*>::const_iterator it = m_caches.begin();
+       it != m_caches.end(); it++) {
+    (*it).second->clearStats();
+  }
+  for (map<string, AbstractController*>::const_iterator it = m_controllers.begin();
+       it != m_controllers.end(); it++) {
+    (*it).second->clearStats();
+  }
 }
 
 void RubySystem::recordCacheContents(CacheRecorder& tr) const