Access and Read

Open discussion of PAPI.

Access and Read

Postby volvicer » Tue Jun 03, 2014 4:42 pm

Hi I have two questions about PAPI:

1.) What is the difference between a cache read and a cache access? How is the relation to a miss implemented?
2.) I sample PAPI on one socket with 4 cores and each core gather L3 cache misses. Finallay, I sum them up into one value. Is the the right way to do or do I get the same value four times?

Best regards
volvicer
 
Posts: 5
Joined: Tue Jun 03, 2014 4:24 pm

Re: Access and Read

Postby jagode00 » Thu Jun 05, 2014 8:18 pm

What architecture are you running on?
jagode00
 
Posts: 41
Joined: Tue Aug 25, 2009 2:12 pm

Re: Access and Read

Postby James Ralph » Thu Jul 03, 2014 9:22 am

1. That depends upon what architecture you are running on. You can see what hardware events we map the preset event to in papi_events.csv
http://icl.cs.utk.edu/trac/papi/browser/src/papi_events.csv And then look up a definition in vendor documentation.

2. Usually L3 is shared at the socket level, if so, one core measuring L3 misses will be sufficient.

Cheers,
James
James Ralph
 
Posts: 20
Joined: Tue Aug 25, 2009 2:43 pm

Re: Access and Read

Postby volvicer » Tue Feb 17, 2015 11:24 am

Hello I am running my tests on a Intel Xeon E5 using Sandy Bridge architecutre.

One question to the csv file. It contains the mappings of the preset events to the native events. However, my question regards the native events. For example, the event perf::PERF_COUNT_HW_CACHE_L1D supports the masks :READ for "read access" and :ACCESS for "hit access". What are the difference between both? The same occurs for perf::PERF_COUNT_HW_CACHE_LL.

Regards,
volvicer
volvicer
 
Posts: 5
Joined: Tue Jun 03, 2014 4:24 pm

Re: Access and Read

Postby jagode00 » Wed Feb 18, 2015 12:46 pm

Steffen,

An ACCESS can be either “read” or “write”.
More specifically, the event enumeration for perf::PERF_COUNT_HW_CACHE_L1D is a 2-dimensional space:
{ load, store, prefetch } x { accesses, misses }
Users have to pass one of each dimension and -- depending on whether or not the hardware supports this type and combo -- the kernel provides a counter.

For example, L1 DCache Loads (reads) should be equivalent to: PERF_COUNT_HW_CACHE_L1D:READ:ACCESS

Heike
jagode00
 
Posts: 41
Joined: Tue Aug 25, 2009 2:12 pm


Return to General discussion (read-only)

Who is online

Users browsing this forum: No registered users and 0 guests

cron