From b952eb19c18bffcd4519bac19f79979fab477ff6 Mon Sep 17 00:00:00 2001 From: Tushar Krishna Date: Fri, 7 Aug 2009 13:59:40 -0700 Subject: bug fix for data_msg_size in network/Network.cc --- src/mem/ruby/network/Network.cc | 39 +++++++++++++++++++++++++++++++++++++-- 1 file changed, 37 insertions(+), 2 deletions(-) (limited to 'src/mem/ruby/network/Network.cc') diff --git a/src/mem/ruby/network/Network.cc b/src/mem/ruby/network/Network.cc index cb3507471..984ec7ca8 100644 --- a/src/mem/ruby/network/Network.cc +++ b/src/mem/ruby/network/Network.cc @@ -26,9 +26,44 @@ void Network::init(const vector & argv) m_adaptive_routing = (argv[i+1]=="true"); else if (argv[i] == "link_latency") m_link_latency = atoi(argv[i+1].c_str()); - + else if (argv[i] == "control_msg_size") + m_control_msg_size = atoi(argv[i+1].c_str()); } + + m_data_msg_size = RubySystem::getBlockSizeBytes() + m_control_msg_size; + assert(m_virtual_networks != 0); assert(m_topology_ptr != NULL); -// printf ("HERE \n"); +} + +int Network::MessageSizeType_to_int(MessageSizeType size_type) +{ + switch(size_type) { + case MessageSizeType_Undefined: + ERROR_MSG("Can't convert Undefined MessageSizeType to integer"); + break; + case MessageSizeType_Control: + case MessageSizeType_Request_Control: + case MessageSizeType_Reissue_Control: + case MessageSizeType_Response_Control: + case MessageSizeType_Writeback_Control: + case MessageSizeType_Forwarded_Control: + case MessageSizeType_Invalidate_Control: + case MessageSizeType_Unblock_Control: + case MessageSizeType_Persistent_Control: + case MessageSizeType_Completion_Control: + return m_control_msg_size; + break; + case MessageSizeType_Data: + case MessageSizeType_Response_Data: + case MessageSizeType_ResponseLocal_Data: + case MessageSizeType_ResponseL2hit_Data: + case MessageSizeType_Writeback_Data: + return m_data_msg_size; + break; + default: + ERROR_MSG("Invalid range for type MessageSizeType"); + break; + } + return 0; } -- cgit v1.2.3