From 0962d768270696395dacfbd2ceabe4ee1035a496 Mon Sep 17 00:00:00 2001 From: Tushar Krishna Date: Thu, 6 Oct 2016 14:35:20 -0400 Subject: config: add port directions and per-router delay in topology. This patch adds port direction names to the links during topology creation, which can be used for better printed names for the links or for users to code up their own adaptive routing algorithms. It also adds support for every router to have an independent latency value to support heterogeneous topologies with the subsequent garnet2.0 patch. --- src/mem/ruby/network/garnet/fixed-pipeline/GarnetNetwork_d.cc | 4 +++- src/mem/ruby/network/garnet/fixed-pipeline/GarnetNetwork_d.hh | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-) (limited to 'src/mem/ruby/network/garnet/fixed-pipeline') diff --git a/src/mem/ruby/network/garnet/fixed-pipeline/GarnetNetwork_d.cc b/src/mem/ruby/network/garnet/fixed-pipeline/GarnetNetwork_d.cc index 1e36a4cf0..9fd0c8669 100644 --- a/src/mem/ruby/network/garnet/fixed-pipeline/GarnetNetwork_d.cc +++ b/src/mem/ruby/network/garnet/fixed-pipeline/GarnetNetwork_d.cc @@ -175,7 +175,9 @@ GarnetNetwork_d::makeExtOutLink(SwitchID src, NodeID dest, BasicLink* link, void GarnetNetwork_d::makeInternalLink(SwitchID src, SwitchID dest, BasicLink* link, - const NetDest& routing_table_entry) + const NetDest& routing_table_entry, + PortDirection src_outport, + PortDirection dst_inport) { GarnetIntLink_d* garnet_link = safe_cast(link); NetworkLink_d* net_link = garnet_link->m_network_links[0]; diff --git a/src/mem/ruby/network/garnet/fixed-pipeline/GarnetNetwork_d.hh b/src/mem/ruby/network/garnet/fixed-pipeline/GarnetNetwork_d.hh index a11f3ea50..36a96e955 100644 --- a/src/mem/ruby/network/garnet/fixed-pipeline/GarnetNetwork_d.hh +++ b/src/mem/ruby/network/garnet/fixed-pipeline/GarnetNetwork_d.hh @@ -74,7 +74,9 @@ class GarnetNetwork_d : public BaseGarnetNetwork void makeExtInLink(NodeID src, SwitchID dest, BasicLink* link, const NetDest& routing_table_entry); void makeInternalLink(SwitchID src, SwitchID dest, BasicLink* link, - const NetDest& routing_table_entry); + const NetDest& routing_table_entry, + PortDirection src_outport, + PortDirection dst_inport); //! Function for performing a functional write. The return value //! indicates the number of messages that were written. -- cgit v1.2.3