On 11/24/2012 10:00 PM, Nilay Vaish wrote:
On Sat, 24 Nov 2012, zhengchl wrote:

Hi,

I implement a 1 level cache coherence protocol based on MOESI-CMP-directory, and my protocol passes Ruby_random_test with max 16 cores and 10000000 loads. But I'm not sure those testes are enough, what should I do next to verify a protocol?


You can go through the literature on verification of coherence protocols and apply the techniques people have devised. I think the random tester is the best you can do as far as gem5 is concerned. You might want to test your protocol with some workloads as well.

--
Nilay


Thank you!

I'm curious about DMA transition when directory in M/O state sees a DMA_WRITE event, this code is copied from MOESI_CMP_directory-dir.sm.

1.    transition({O,M}, DMA_WRITE, OI_D) {
2.      f_forwardRequestDirIsRequestor;    // need the modified data
   before we can proceed
3.      g_sendInvalidations;               // these go to the DMA
   Controller
4.      v_allocateTBE;
5.      i_popIncomingRequestQueue;
6.    }
7.    transition(OI_D, Data, XI_U) {
8.      qw_queueMemoryWBRequest;
9.      a_sendDMAAck2;  // ack count may be zero
10.      p_writeFwdDataToMemory;
11.      l_writeDMADataToMemoryFromTBE;
12.      w_deallocateTBE;
13.      j_popIncomingUnblockQueue;
14.    }
15.    transition(XI_U, Exclusive_Unblock, I) {
16.      cc_clearSharers;
17.      c_clearOwner;
18.      j_popIncomingUnblockQueue;
19.    }

Question 1. in line 3 and line 17, directory send Inv message to all his sharers but not owner (however, owner must be in state MM, M, or O, these state can't receive a Inv message), and then transfer to I state. But, cache in MM, M or O state haven't be invalidated. This is incoherence. Question 2. line 10 and 11 write data from DMA to tbe of directory, while line 8 write data from cache to memory. This is unable to understand. Question 3. Ruby_Random_Test just test request from cores, is there any tester to check request from DMA?

Thank you!

--
Chuanlei Zheng

Department of Computer Science and Technology
Nanjing University

_______________________________________________
gem5-users mailing list
[email protected]
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users

Reply via email to