Hi Dan, thank you very much for your answer. Well, I have changed only
the second call to triggerEvents() to triggerAllEvents() in
void TraceRecord::issueRequest(), so now I expect that each reference
is processed completely before the next one. But debugging tester.exec
and ruby with this trace file (all references are made by the same
processor, and L1 cache associativity is set to 1):
0x00000040 LD
0x00000080 LD
0x000000C0 LD
0x00900040 LD
0x000000C0 LD
0x00900040 LD
I have noted that the block 0x000000C0 (third reference) is allocated
in L2 cache ONLY after the reference 0x00900040 (fourth reference) is
read from the trace file. Do you know what's going on?
Sorry to be a nuisance.
|