
Hi Andy, On Dec 20, 2006, at 9:15, Andy Georges wrote:
Well, AFAIK, PAPI abstracts away the platform dependencies quite well, so I guess your code can be run straightforward on all IA-32 platforms (depending on the events you wish to measure, which may or may not be present on all platforms). PowerPC, Itanium, Mips, Alpha should work as well, IIRC. If the GHC backend can generate code there, that is.
As the code stands now, data cache misses can be measured in a platform independent way. For branch mispredictions, I am using Opteron specific counters for reasons I no longer remember. Maybe I couldn't find platform independent counters in PAPI for branch misprediction.
Have you published anything about that?
We are on the process of writing such a paper right now. My wish is to have the related code submitted to the head as soon as possible :). But at the moment we still have to tweak and clean up our optimisations a bit more.
I should get around to start a wiki page about using PAPI these days, but meanwhile feel free to contact me if you need further information or help.
I've been toying with this idea for a while [4], but never had the time to do something with it. If you have some cool stuff, let us know. I'm very interested.
The code in the head will allow you to get numbers for the Mutator and the GC separately. Also, I have hacked nofib-analyse so you can compare CPU statistics among different runs of the nofib suite. This is not committed yet, I guess it will make its way to the PAPI wiki page once it's up. I will let you know when I bring the page up. Cheers, Alexey