Software Tuning, Performance Optimization & Platform Monitoring
Discussion around monitoring and software tuning methodologies, Performance Monitoring Unit (PMU) of Intel microprocessors, and platform monitoring
Announcements
This community is designed for sharing of public information. Please do not share Intel or third-party confidential information here.

Using PCM API. No authority to

Kim__Kyungjoo
Beginner
140 Views

I tried to insert PCM API into my code to measure memory saturation and I encountered the following problem. As I am not administrator of the public machien, I do not have root authority nor access to /dev/cpu/*/msr. Is there anyway that I can redirect the workspace path or device path ?

Also I am wondering if system admin can open the directory for users.

Thank you

Kyungjoo

Core PMU (perfmon) version: 3 
Number of core PMU generic (programmable) counters: 4 
Width of generic (programmable) counters: 48 bits 
Number of core PMU fixed counters: 3 
Width of fixed counters: 48 bits 
Can not access CPUs Model Specific Registers (MSRs). 
Try to execute 'modprobe msr' as root user and then 
you also must have read and write permissions for /dev/cpu/*/msr devices (/dev/msr* for Android). The 'chown' command can help. 

0 Kudos
4 Replies
Patrick_F_Intel1
Employee
140 Views

Hello Kyungjoo,

You need to be able to read and write the MSR device. The root user can set the permissions on the device such that anyone can read/write to the device but they may decide they don't want to do this.

Or root could create a group of users with read/write access to the /dev/cpu/*/msr files and add you to that group.

Good luck, Pat

Patrick_F_Intel1
Employee
140 Views

Hello Kyungjoo,

You need to be able to read and write the MSR device. The root user can set the permissions on the device such that anyone can read/write to the device but they may decide they don't want to do this.

Or root could create a group of users with read/write access to the /dev/cpu/*/msr files and add you to that group.

Good luck, Pat

Kim__Kyungjoo
Beginner
140 Views

Thank you for the answer. As you expected, the administrator does not allow me to access the directory. Is there any other ways to check whether my application scalability is limited by saturated memory bandwidth ? My application is sparse problems and use BLAS calls. In other words, you can presume that all operations are GEMM, TRSM, LU with partial pivoting. I can measure the number of function calls of those. Probably then I can approximate the memory traffic for those computation if there exist a model for those operations. Any comment for this approach ? 

Thank you.

Kyungjoo

Patrick_F_Intel1
Employee
140 Views

Have you asked the administrator if he would run PCM while you run your application? I kind of doubt they would be willing to do this.

Frequently a site may have a development box (similar to the production box) on which folks can run things like PCM and your application.

Does the system have linux 'perf' installed and enabled? 'perf' is a built-in profiling capability. I guessing that this too is not accessible.

Pat

Reply