I am interested in computing for my application a metric that I would call "fetch ratio": The total amount of data manipulated by the program compared to the total amount of data fetched from main memory (It is crucial that the total amount of data fetched also includes prefetched data).
I'm running my experiments on a Sandy Bridge i5-2410M running Linux x64 3.7
My problem is that I can't find the good events for my needs.
I ran into this article: http://software.intel.com/en-us/articles/detecting-memory-bandwidth-saturation-in-threaded-applications
But it seems that none of the events mentioned in this article are available on Sandy Bridge. I can't even find any mention of them in the Intel Manuel Volume 3B that list all available events for quite a lot of processors.
In the comments of the article mentionned above, someone asked about bandwidth measurement on Sandy Bridge. Romain Dementiev said that Intel Performance Counter Monitor can do it.
I looked at the code and it doesn't seem to be implemented for Sandy Bridge: http://pastebin.com/qw52cfeb
What event should I use? or at least, what is recommended by Intel for bandwidth measurement on Sandy Bridge? (even system-wide bandwidth measurement would be acceptable, I would just have to keep my machine dead quiet which is not a problem).