Sorry for trouble! I checked your reply information and it
seems that it's not the thing I want. Thank you, Let me
For a multicore platform running multithreaded programs, I
want to collect the traffic trace
for cores which means to export the core's traffic trace
into a trace file. The format
of the trace file is something like follows.
The
format of the trace file for a 16-core CMP system
----------------------------------------------------------------------------------
1 U rd 0 1 16 0xa01280
1 U rd 1 15 16 0xb6fb80
1 U rd 2 1 16 0xa01280
1 U rd 3 1 16 0xa01280
1 U rd 4 1 16 0xa01280
1 U rd 5 1 16 0xa01280
1 U rd 6 1 16 0xa01280
1 U rd 7 1 16 0xa01280
1 U rd 8 1 16 0xa01280
1 U rd 9 1 16 0xa01280
1 U rd 10 1 16 0xa01280
1 U rd 11 1 16 0xa01280
1 U rd 12 1 16 0xa01280
1 U rd 13 1 16 0xa01280
1 U rd 14 1 16 0xa01280
1 U rd 15 1 16 0xa01280
--The
first field is the injection time stamp.
--The
second field is the message type – this is either a U
for unicast and an M for multicast (multicast means that
write-caused
write-invalidate in directory based cache coherence protocols)
--The
third field relates to the type of coherence message
such as read, write
--The fourth field is the source
--The fifth field is the destination (when the message
type is M, this is a bit vector represented as a hex
number;
for unicast it will only be destinations from 0 to 15)
--The sixth field is the message size in bytes
--The seventh field is the memory address
--------------------------------------------------------------------------------------
Wish someone can help me on this issue. I just want to know
how and where to implement such
function in GEMS framework. Thanks in advance!
Regards,
Jianhua