Thank you Mike.
ok... knowing this value from either MOESI_CMP_NUCA-L1cache.sm or
Sequencer.C, is there any way to stop the simulation? I mean:
1) Can I read such value from Simics, test it and, if it matches some
conditions, stop the simulation? Or
2) Is there any way to stop the simulation directly from such Ruby files?
Please remember that I need to stop the simulation when 4 CPU (I exaclty
know their IDs...) globally reach a given N of L1 misses.
Sorry for this silly question...
Marco
You can profile L1 misses in the L1 controller (MESI_CMP_NUCA-L1cache.sm).
Or you can profiler them in Sequencer.C.
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
_______________________________________________
Gems-users mailing list
Gems-users@xxxxxxxxxxx
https://lists.cs.wisc.edu/mailman/listinfo/gems-users
Use Google to search the GEMS Users mailing list by adding
"site:https://lists.cs.wisc.edu/archive/gems-users/" to your search.
|