From 25cd13dbf1d6f7d306b40c7e2e3d7231b0c5eb04 Mon Sep 17 00:00:00 2001 From: Nilay Vaish Date: Sat, 12 Sep 2015 16:16:03 -0500 Subject: ruby: simple network: store Switch* in PerfectSwitch and Throttle There are two reasons for doing so: a. provide a source of clock to PerfectSwitch. A follow on patch removes sender and receiver pointers from MessageBuffer means that the object owning the buffer should have some way of providing timing info. b. schedule events. A follow on patch removes the consumer class. So the PerfectSwitch needs some EventManager object to schedule events on its own. --- src/mem/ruby/network/simple/PerfectSwitch.cc | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'src/mem/ruby/network/simple/PerfectSwitch.cc') diff --git a/src/mem/ruby/network/simple/PerfectSwitch.cc b/src/mem/ruby/network/simple/PerfectSwitch.cc index de038d211..84ead6e26 100644 --- a/src/mem/ruby/network/simple/PerfectSwitch.cc +++ b/src/mem/ruby/network/simple/PerfectSwitch.cc @@ -49,9 +49,8 @@ operator<(const LinkOrder& l1, const LinkOrder& l2) } PerfectSwitch::PerfectSwitch(SwitchID sid, Switch *sw, uint32_t virt_nets) - : Consumer(sw) + : Consumer(sw), m_switch_id(sid), m_switch(sw) { - m_switch_id = sid; m_round_robin_start = 0; m_wakeups_wo_switch = 0; m_virtual_networks = virt_nets; -- cgit v1.2.3