[Gems-users] Direct cache-to-cache transfer


Date: Thu, 6 May 2010 23:54:38 -0500
From: Byn Choi <bynchoi1@xxxxxxxxxxxx>
Subject: [Gems-users] Direct cache-to-cache transfer
Hello-

I'm using MESI_SCMP_bankdirectory protocol. I am trying to experiment with direct cache-to-cache transfer (without going through the directory) based on predictions.
As a first step, I'm trying to model a "perfect" predictor, by simply  
looking at the directory (for free) to locate the L1 cache that has  
the line in E state. I managed to get this information, but I am  
having trouble actually sending the request through the network.
I suspect that the network isn't setup to handle direct cache-to-cache  
traffic. In MESI_SCMP_bankdirectory-L1cache.sm, I only see  
MessageBuffer/s setup to/from L2 bank, nothing to/from other L1  
caches. I did try sending a message (destined for one of the L1  
caches) through "requestFromL1Cache" MessageBuffer, but I get the  
following error:
---------------------------------------------------------------------------------
Warning: in fn void MessageBuffer::enqueue(const MsgPtr&, Time) in buffers/MessageBuffer.C:210: *this is [MessageBuffer: [PrioHeap: ]]
Warning: in fn void MessageBuffer::enqueue(const MsgPtr&, Time) in  
buffers/MessageBuffer.C:211: m_name is
Fatal Error: in fn void MessageBuffer::enqueue(const MsgPtr&, Time) in  
buffers/MessageBuffer.C:212: Ordering property of this queue has not  
been set
---------------------------------------------------------------------------------

As far as I can tell, this means the MessageBuffer isn't setup correctly - the setOrder() is called at the initialization time for all the MessageBuffer/s that will be used in the experiment.
For now, I can assume something like a crossbar (2D mesh would be more  
realistic but I expect more trouble in that direction).
I guess my question is: how would one go about setting up stuff like  
this? Is there some pre-built routines in network/ that I can use to  
do this?
Thanks,

Byn
[← Prev in Thread] Current Thread [Next in Thread→]
  • [Gems-users] Direct cache-to-cache transfer, Byn Choi <=