changeset 26670ac8244e in /z/repo/gem5
details: http://repo.gem5.org/gem5?cmd=changeset;node=26670ac8244e
description:
ruby: network: garnet: fixed: removes net_ptr from links
diffstat:
src/mem/ruby/network/garnet/fixed-pipeline/GarnetNetwork_d.cc | 10 ++--------
src/mem/ruby/network/garnet/fixed-pipeline/NetworkLink_d.hh | 4 +---
src/mem/ruby/network/orion/NetworkPower.cc | 4 +---
3 files changed, 4 insertions(+), 14 deletions(-)
diffs (77 lines):
diff -r 7a1bfe330d14 -r 26670ac8244e
src/mem/ruby/network/garnet/fixed-pipeline/GarnetNetwork_d.cc
--- a/src/mem/ruby/network/garnet/fixed-pipeline/GarnetNetwork_d.cc Fri Feb
21 08:02:02 2014 -0600
+++ b/src/mem/ruby/network/garnet/fixed-pipeline/GarnetNetwork_d.cc Fri Feb
21 08:02:04 2014 -0600
@@ -90,13 +90,6 @@
}
m_topology_ptr->createLinks(this);
- // initialize the link's network pointers
- for (vector<NetworkLink_d*>::const_iterator i = m_links.begin();
- i != m_links.end(); ++i) {
- NetworkLink_d* net_link = safe_cast<NetworkLink_d*>(*i);
- net_link->init_net_ptr(this);
- }
-
// FaultModel: declare each router to the fault model
if(isFaultModelEnabled()){
for (vector<Router_d*>::const_iterator i= m_routers.begin();
@@ -285,8 +278,9 @@
void
GarnetNetwork_d::collatePowerStats()
{
+ double sim_cycles = (double)(curCycle() - g_ruby_start);
for (int i = 0; i < m_links.size(); i++) {
- m_links[i]->calculate_power();
+ m_links[i]->calculate_power(sim_cycles);
m_dynamic_link_power += m_links[i]->get_dynamic_power();
m_static_link_power += m_links[i]->get_static_power();
}
diff -r 7a1bfe330d14 -r 26670ac8244e
src/mem/ruby/network/garnet/fixed-pipeline/NetworkLink_d.hh
--- a/src/mem/ruby/network/garnet/fixed-pipeline/NetworkLink_d.hh Fri Feb
21 08:02:02 2014 -0600
+++ b/src/mem/ruby/network/garnet/fixed-pipeline/NetworkLink_d.hh Fri Feb
21 08:02:04 2014 -0600
@@ -56,7 +56,7 @@
int get_id(){return m_id;}
void wakeup();
- void calculate_power();
+ void calculate_power(double);
double get_dynamic_power() const { return m_power_dyn; }
double get_static_power()const { return m_power_sta; }
@@ -69,7 +69,6 @@
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; }
uint32_t functionalWrite(Packet *);
private:
@@ -77,7 +76,6 @@
Cycles m_latency;
int channel_width;
- GarnetNetwork_d *m_net_ptr;
flitBuffer_d *linkBuffer;
Consumer *link_consumer;
flitBuffer_d *link_srcQueue;
diff -r 7a1bfe330d14 -r 26670ac8244e src/mem/ruby/network/orion/NetworkPower.cc
--- a/src/mem/ruby/network/orion/NetworkPower.cc Fri Feb 21 08:02:02
2014 -0600
+++ b/src/mem/ruby/network/orion/NetworkPower.cc Fri Feb 21 08:02:04
2014 -0600
@@ -211,7 +211,7 @@
}
void
-NetworkLink_d::calculate_power()
+NetworkLink_d::calculate_power(double sim_cycles)
{
OrionConfig* orion_cfg_ptr;
OrionLink* orion_link_ptr;
@@ -232,8 +232,6 @@
channel_width_bits,
orion_cfg_ptr);
- double sim_cycles = (double)(m_net_ptr->curCycle() - g_ruby_start);
-
// Dynamic Power
// Assume half the bits flipped on every link activity
double link_dynamic_energy =
_______________________________________________
gem5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/gem5-dev