changeset 24a00a6d5992 in /z/repo/m5 details: http://repo.m5sim.org/m5?cmd=changeset;node=24a00a6d5992 description: garnet: added network ptr to links to be used by orion
diffstat: src/mem/ruby/network/garnet/fixed-pipeline/GarnetNetwork_d.cc | 7 +++++++ src/mem/ruby/network/garnet/fixed-pipeline/NetworkLink_d.hh | 7 ++++++- src/mem/ruby/network/orion/NetworkPower.cc | 8 ++------ 3 files changed, 15 insertions(+), 7 deletions(-) diffs (58 lines): diff -r 03cfd2ecf6bb -r 24a00a6d5992 src/mem/ruby/network/garnet/fixed-pipeline/GarnetNetwork_d.cc --- a/src/mem/ruby/network/garnet/fixed-pipeline/GarnetNetwork_d.cc Sun May 29 21:48:58 2011 -0700 +++ b/src/mem/ruby/network/garnet/fixed-pipeline/GarnetNetwork_d.cc Tue May 31 02:55:14 2011 -0400 @@ -90,6 +90,13 @@ } // false because this isn't a reconfiguration m_topology_ptr->createLinks(this, false); + + // initialize the link's network pointers + for (vector<NetworkLink_d*>::const_iterator i = m_link_ptr_vector.begin(); + i != m_link_ptr_vector.end(); ++i) { + NetworkLink_d* net_link = safe_cast<NetworkLink_d*>(*i); + net_link->init_net_ptr(this); + } } GarnetNetwork_d::~GarnetNetwork_d() diff -r 03cfd2ecf6bb -r 24a00a6d5992 src/mem/ruby/network/garnet/fixed-pipeline/NetworkLink_d.hh --- a/src/mem/ruby/network/garnet/fixed-pipeline/NetworkLink_d.hh Sun May 29 21:48:58 2011 -0700 +++ b/src/mem/ruby/network/garnet/fixed-pipeline/NetworkLink_d.hh Tue May 31 02:55:14 2011 -0400 @@ -65,12 +65,17 @@ inline bool isReady() { return linkBuffer->isReady(); } inline flit_d* peekLink() { return linkBuffer->peekTopFlit(); } inline flit_d* consumeLink() { return linkBuffer->getTopFlit(); } + void init_net_ptr(GarnetNetwork_d* net_ptr) + { + m_net_ptr = net_ptr; + } protected: int m_id; int m_latency; + int channel_width; - int channel_width; + GarnetNetwork_d *m_net_ptr; flitBuffer_d *linkBuffer; Consumer *link_consumer; flitBuffer_d *link_srcQueue; diff -r 03cfd2ecf6bb -r 24a00a6d5992 src/mem/ruby/network/orion/NetworkPower.cc --- a/src/mem/ruby/network/orion/NetworkPower.cc Sun May 29 21:48:58 2011 -0700 +++ b/src/mem/ruby/network/orion/NetworkPower.cc Tue May 31 02:55:14 2011 -0400 @@ -245,13 +245,9 @@ channel_width /* channel width */, orion_cfg_ptr); -// -// NOTE! I believe this calculation will be moved to McPAT, thus this -// reference to the net_ptr can be removed -// // // Dynamic Power - double sim_cycles = 0.0; -// (double)(g_eventQueue_ptr->getTime() - m_net_ptr->getRubyStartTime()); + double sim_cycles = + (double)(g_eventQueue_ptr->getTime() - m_net_ptr->getRubyStartTime()); double Plink_dyn = orion_link_ptr->calc_dynamic_energy(channel_width/2)* (m_link_utilized/ sim_cycles)*freq_Hz; _______________________________________________ gem5-dev mailing list gem5-dev@m5sim.org http://m5sim.org/mailman/listinfo/gem5-dev