[Gems-users] How to add additional member to each L2 cache entry


Date: Wed, 27 Jan 2010 12:35:28 +0530
From: Liz Joy <lizjoy86@xxxxxxxxx>
Subject: [Gems-users] How to add additional member to each L2 cache entry
Thank u Polina...
As u said ..I added a public member function void monitorId(int id) to CacheMemory.h. In the -L2cache.sm ..in CacheMemory, added the declaration of that function and in actions.......
At line no,527,542,625,722,828...I called the function by
L2cacheMemory.monitorId(in_msg.RequestorMachId)

but while making the protocol i am getting an error saying...

../protocols/MSI_MOSI_CMP_directory-L2cache.sm:527: Error: Invalid method call: Type 'CacheMemory' does not have a method 'monitorId_MachineID'

can u plz clarify this...Do I need to do anything in RubySlicc_Exports.sm..???If yes..where???

Thanking you
Liz



Liz,

So, like I said in my previous email, the requestor id (L1 id) is already known at L2. If you want to see it in CacheMemory, here's what you can do: add whatever function to CacheMemory that you would like to call to process id's (say void monitorId(int id). In the -L2cache.sm find CacheMemory, add a declaration of that function. Now you can call that function from actions in -L2cache.sm. So, say your L2 is processing a request from L1 (look for L1RequestIntraChipL2Network_in), then if you wish you can call your function and pass the L1 id to it like so: L2cacheMemory.monitorId(in_msg.RequestorMachId), I think that would work.

Polina


On Fri, Jan 15, 2010 at 12:34 AM, Liz Joy <lizjoy86@xxxxxxxxx> wrote:
Thanks for your reply,Polina

How can we add this MachineID in the request msg to each L2 cache entry.Where I need to make the assignment?I need this information in CacheMemory.h.Also,If we have some private area within the shared L2 cache for each core and need to check for a hit in both the shared area and the private area,where I need to make the changes in computing the set and the tag.Is it n CacheMemory.h or somewhere else too?

Thanks in Advance
Liz
[← Prev in Thread] Current Thread [Next in Thread→]