Software Tuning, Performance Optimization & Platform Monitoring
Discussion regarding monitoring and software tuning methodologies, Performance Monitoring Unit (PMU) of Intel microprocessors, and platform updating.
Announcements
FPGA community forums and blogs on community.intel.com are migrating to the new Altera Community and are read-only. For urgent support needs during this transition, please visit the FPGA Design Resources page or contact an Altera Authorized Distributor.

How to read Uncore Events by perf tools.

Daejin_J_
Beginner
4,006 Views

Hello

Does anyone know how to read intel "uncore events" by perf tools?

I used to exploit some commands to read core's performance counters like below. 

  - perf stat -e cpu/event=0xd3,umask=0x01/pp <command>

But, I am sure how to read uncore events such as Ingress_occupancy on CHA. 

when I try to a command like below, it doesn't work well..

  - perf state -e uncore_cha_0/event=0x11,umask=0x01 <command>

Note that I am using Knights Landing machine.

Is there any idea?

Sincerely,

Thank you.

 

0 Kudos
6 Replies
Dmitry_R_Intel1
Employee
4,006 Views

The following command worked for me:

perf stat -a -e uncore_cha_0/event=0x11,umask=0x1/

0 Kudos
Daejin_J_
Beginner
4,006 Views

Dear Dmitry,

Could you let me know which machine, kernel, perf version you tested on?

In my case, I used Intel's KNL, Linux knl 3.10.0-327.13.1.el7.xppsl_1.4.0.3211.x86_64, and perf version 3.10.0-327.el7.x86_64.debug. I received the "not supported" message.

Please check the following results.

 Performance counter stats for 'ls':

   <not supported>      uncore_cha_0/event=0x11,umask=01/

       0.009539475 seconds time elapsed

Thank you.

Daejin.

 

0 Kudos
McCalpinJohn
Honored Contributor III
4,006 Views

I also got the "<not supported>" message on 3.10.0-327.22.2.el7.xppsl_1.4.1.3272.x86_64, but this morning when I tried it again I got a much better error message pointing to "perf_event_paranoid" permissions.  

Sure enough,  I see that /proc/sys/kernel/perf_event_paranoid is set to 1, and setting it to zero allows the "perf stat" command above to succeed.  Running STREAM on 68 cores gave non-zero counts:

     1,130,452,502      uncore_cha_0/event=0x11,umask=0x1/                                   

       0.440644400 seconds time elapsed

 

0 Kudos
Daejin_J_
Beginner
4,006 Views

Dear Dr. John

Thank you for your response.

I updated my kernel version to 3.10.0-327.36.1.el7.xppsl_1.4.2.3331.x86_64 on my KNL CPU 7250. and set /proc/sys/kernel/perf_event_paranoid to zero. However, I still got the <not supported> message for uncore_cha_0/event=0x11,umask=0x01/

When I see the Kernel PMU event listed from "perf list" , there are not any unocre events. (my perf version is 3.10.0-327.36.2.el7.x86_64.debug )

Do you have any suggestions? Please let me know your perf version.

 

 

 

0 Kudos
Daejin_J_
Beginner
4,006 Views

Dear Dr John and Dmitry.

I did it. I extracted occupancy counters thanks to you.

But, I'd like to set a certain threshold to get event counts whenever the occupancy exceeds the threshold. is it possible on perf?

Thank you.

Daejin Jung.

0 Kudos
Dmitry_R_Intel1
Employee
4,006 Views

Please try adding 'thresh' option, e.g.:

uncore_cha_0/event=0x11,umask=0x1,thresh=0x2/

0 Kudos
Reply