diff --git a/src/mem/ruby/network/garnet2.0/GarnetNetwork.cc b/src/mem/ruby/network/garnet2.0/GarnetNetwork.cc index 1eff921759..8f226b1de2 100644 --- a/src/mem/ruby/network/garnet2.0/GarnetNetwork.cc +++ b/src/mem/ruby/network/garnet2.0/GarnetNetwork.cc @@ -414,6 +414,20 @@ GarnetNetwork::collateStats() } } +void +GarnetNetwork::resetStats() +{ + for (int i = 0; i < m_routers.size(); i++) { + m_routers[i]->resetStats(); + } + for (int i = 0; i < m_networklinks.size(); i++) { + m_networklinks[i]->resetStats(); + } + for (int i = 0; i < m_creditlinks.size(); i++) { + m_creditlinks[i]->resetStats(); + } +} + void GarnetNetwork::print(ostream& out) const { diff --git a/src/mem/ruby/network/garnet2.0/GarnetNetwork.hh b/src/mem/ruby/network/garnet2.0/GarnetNetwork.hh index 9acbeef4e3..3821dd8b81 100644 --- a/src/mem/ruby/network/garnet2.0/GarnetNetwork.hh +++ b/src/mem/ruby/network/garnet2.0/GarnetNetwork.hh @@ -101,6 +101,7 @@ class GarnetNetwork : public Network // Stats void collateStats(); void regStats(); + void resetStats(); void print(std::ostream& out) const; // increment counters diff --git a/src/mem/ruby/system/RubySystem.cc b/src/mem/ruby/system/RubySystem.cc index 57d49667e7..2aeff8caeb 100644 --- a/src/mem/ruby/system/RubySystem.cc +++ b/src/mem/ruby/system/RubySystem.cc @@ -407,6 +407,7 @@ void RubySystem::resetStats() { m_start_cycle = curCycle(); + m_network->resetStats(); } bool