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
|