[Gems-users] How to set up the network file for MESI_SCMP_tiledL2bank_directory protocol


Date: Thu, 8 Mar 2007 02:15:08 -0500
From: Calvin <calvincv@xxxxxxxxx>
Subject: [Gems-users] How to set up the network file for MESI_SCMP_tiledL2bank_directory protocol
Hi all,

I am using GEMS to simulate a single-chip CMP system. I tried to use
the MESI_SCMP_tiledL2bank_directory protocol, but I don't quite
understand how to set up the network file to support different
configurations (e.g., with 2 cores, 4 cores, etc.).

GEMS 1.4 release only includes one file:
TILED_Procs-16_ProcsPerChip-16_L2Banks-16_Memories-16.txt
I tried to modify it for a simple two-core system:
---------------------------------------------------------------------------------------
processors:2
procs_per_chip:2
L2banks:2
memories:2

ext_node:L1Cache:0 int_node:0 link_latency:1 bw_multiplier:72
ext_node:L2Cache:0 int_node:0 link_latency:1 bw_multiplier:72
ext_node:L1Cache:1 int_node:1 link_latency:1 bw_multiplier:72
ext_node:L2Cache:1 int_node:1 link_latency:1 bw_multiplier:72
ext_node:Directory:0 int_node:0 link_latency:1 bw_multiplier:80
ext_node:Directory:1 int_node:1 link_latency:1 bw_multiplier:80

int_node:0 int_node:1 link_latency:2 bw_multiplier:64
-------------------------------------------------------------------------------------------

but GEMS got error like the following:
-------------------------------------------------------------------------------------------
Warning: in fn void MessageBuffer::enqueue(const MsgPtr&, long long
int) in Gems/Install_MESI_SCMP/ruby/buffers/MessageBuffer.C:259: *this
is [MessageBuffer:  consumer-yes [PrioHeap: [88380, 13, [RefCnt:
[L1Msg: Address=[0x762a040, line 0x762a040] RequestType=GETS
ResponseType=Fatal Error: in fn std::string
CoherenceResponseType_to_string(const CoherenceResponseType&) in
Gems/Install_MESI_SCMP/ruby/generated/MESI_SCMP_tiledL2bank_directory/CoherenceResponseType.C:35:
Invalid range for type CoherenceResponseType
Fatal Error: in fn std::string CoherenceResponseType_to_string(const
CoherenceResponseType&) in
Gems/Install_MESI_SCMP/ruby/generated/MESI_SCMP_tiledL2bank_directory/CoherenceResponseType.C:35:
Invalid range for type CoherenceResponseType
***  Simics getting shaky, switching to 'safe' mode.
***  Simics (main thread) received an abort signal, probably an assertion.
-------------------------------------------------------------------------------------------

Could you help clarify how to set up the network file or provide the
correct configuration? Is it possible to use other network topology
like PT_TO_PT?  I couldn't find detailed document on this.

Also, is there any other protocol available for simulating single-chip
CMP? It seems the only one available now is
MESI_SCMP_tiledL2bank_directory.

Thanks for your help,
Calvin
[← Prev in Thread] Current Thread [Next in Thread→]