Cache Coherence - PAPI

Open discussion of PAPI.

Cache Coherence - PAPI

Postby madman » Fri Oct 16, 2009 9:48 am


I have a question regarding using PAPI counter events to get details of the cache coherence overheads associated with different kernels in a parallel application (In SGI Altix 4700 machine).

> PAPI_CA_SNP 0x80000009 Yes No Requests for a snoop
> PAPI_CA_INV 0x8000000c Yes Yes Requests for cache line invalidation

Is it correct to assume that these could be used to derive invalidation to snooping ratio for a particular parallel kernel?

Thanks for your support!

Posts: 1
Joined: Fri Oct 16, 2009 9:36 am

Re: Cache Coherence - PAPI

Postby Dan Terpstra » Fri Oct 16, 2009 8:12 pm

It's always dangerous to make assumptions!
You can use /utils/papi_avail -e PAPI_CA_SNP or /utils/papi_avail -e PAPI_CA_INV to get more detail on each of these events, including the native event codes that they measure, and vendor documentation on what those events actually count. That might provide more detail on exactly what's being counted here.
Further, you can us /utils/papi_native_avail to list all available native events with descriptions for your platform. You may find a native event more suitable for measuring what you're interested in than the PAPI preset events are.
But in any case, don't assume the event is measuring what you expect. Devise a test to produce a predictable number or range of events, and verify that the event you're measuring matches your expectations. In many cases events may not produce the number you expect, but at least scale linearly with what you're trying to measure, so they are still useful.
Dan Terpstra

Return to General discussion (read-only)

Who is online

Users browsing this forum: No registered users and 2 guests