A recent Concurrency Hazards: False Sharing article demonstrates how VS2010 profiler can be used to detect source of cache data locality issues. To achieve this, you can sample with cache specific CPU performance counters, as long as you do not run inside Virtual Machine or on Hyper-V enabled environment (and this is why).

In post-VS2010 Beta 2 releases you can use Last Level Cache Misses and Last Level Cache References counters for that purpose:

image

 

[Maxim Goldin]