Using CMASK with PAPI native events
I am trying characterize the memory accesses for the kernels for my code. Two important PAPI native events for me to record are PAPI_NATIVE_OFFCORE_REQUESTS with
EMAND_RFO and
EMAND_READ_DATA options. In particular, I would like to set the CMASK to n=1,2,3...n for each of these counters to create a histogram of the number of cycles with outstanding requests to DRAM.
I am using a profiling tool called TAU which allows me to set an environment variable called TAU_METRICS with a number of PAPI events which I wish to measure during a run. I have found that I can set the CMASK for a particular PAPI event by appending ":c=n" where n=1,2,3, etc to the end of the event name. An example of what I have been trying is below for c=2:
setenv TAU_METRICS PAPI_NATIVE_OFFCORE_REQUESTS\\:DEMAND_RFO\\:c=2
The code will run when I set the metrics in this way, but unfortunately it does not count any events except when the CMASK is c=1. For all other values, the counter is zero.
If you have any advice on how I might fix this, I would certainly appreciate it!
I am using a profiling tool called TAU which allows me to set an environment variable called TAU_METRICS with a number of PAPI events which I wish to measure during a run. I have found that I can set the CMASK for a particular PAPI event by appending ":c=n" where n=1,2,3, etc to the end of the event name. An example of what I have been trying is below for c=2:
setenv TAU_METRICS PAPI_NATIVE_OFFCORE_REQUESTS\\:DEMAND_RFO\\:c=2
The code will run when I set the metrics in this way, but unfortunately it does not count any events except when the CMASK is c=1. For all other values, the counter is zero.
If you have any advice on how I might fix this, I would certainly appreciate it!