I'm a new Simics + GEMS user. At the moment, I'm simulating an 8 CPU
UltraSPARC CMP system, running Solaris 10, with a DNUCA L2 cache (I've
compiled Ruby with protocol=MOESI_CMP_NUCA, and configured it properly).
I'm running 4 applications of the SPEC2000 suite as benchmarc... such
applications are assigned each to a specific CPU, using the Solaris'
processor_bind syscall.
I would like to be albe to stop the simulation when a given number N of
L2 references have been generated by the 4 CPUs running my 4 SPEC
applications, in order to stop the simulation when such number of L2
references is reached, dump the statistics, clear them and then let the
simulation continue from the point it was stopped. For this purpose, I
was trying to understand if there is a way to count the number of L1
misses for each CPU (or at least for the entire system...).
Is there any way to solve my problem? Or, if it's not possible to count
such number for each CPU, is it possible to count at least the number of
L1 miss of the entire system? I hope you can help me.
Thank you for your attention.
Marco