rapl-read-ryzen icon indicating copy to clipboard operation
rapl-read-ryzen copied to clipboard

kernel version

Open cminnoy opened this issue 5 years ago • 5 comments

What kernel version do you need? On 4.15 (Ryzen 1700X platform Ubuntu) this doesn't seem to work.

cminnoy avatar Apr 06 '19 12:04 cminnoy

Linux ab350 4.15.0-48-generic #51-Ubuntu SMP Wed Apr 3 08:28:49 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

$ wget https://raw.githubusercontent.com/djselbeck/rapl-read-ryzen/master/ryzen.c $ gcc -o ryzen ryzen.c -lm $ sudo ./ryzen

0 (0), 1 (0), 2 (0), 3 (0), 4 (0), 5 (0), 6 (0), 7 (0) 8 (0), 9 (0), 10 (0), 11 (0), 12 (0), 13 (0), 14 (0), 15 (0)

Detected 16 cores in 1 packages

Core energy units: a1003 Time_unit:10, Energy_unit: 16, Power_unit: 3 Time_unit:0.000976562, Energy_unit: 1.52588e-05, Power_unit: 0.125 Core 0, energy used: 4.43466W, Package: 51.8207W Core 1, energy used: 4.43466W, Package: 51.8207W Core 2, energy used: 4.45755W, Package: 51.8207W Core 3, energy used: 4.45755W, Package: 51.8207W Core 4, energy used: 4.05014W, Package: 51.8207W Core 5, energy used: 4.05014W, Package: 51.8207W Core 6, energy used: 4.44519W, Package: 51.8207W Core 7, energy used: 4.44519W, Package: 51.8207W Core sum: 34.7751W

Seems to work correctly on 1700x under ubuntu 18.04

fractalyse avatar May 04 '19 14:05 fractalyse

sudo ./ryzen 0 (0), 1 (0), 2 (0), 3 (0), 4 (0), 5 (0), 6 (0), 7 (0) 8 (0), 9 (0), 10 (0), 11 (0), 12 (0), 13 (0), 14 (0), 15 (0)

    Detected 16 cores in 1 packages

rdmsr:open: No such file or directory Trying to open /dev/cpu/0/msr

uname -a Linux hydro-one 4.15.0-48-generic #51-Ubuntu SMP Wed Apr 3 08:28:49 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

CPU: Ryzen 7 1700X Pro

ls /dev/cpu microcode

cminnoy avatar May 14 '19 09:05 cminnoy

sudo modprobe msr

cminnoy avatar May 14 '19 09:05 cminnoy

Yes, you have to insert module msr to get this working

fractalyse avatar May 14 '19 14:05 fractalyse

Hi, are you sure the following is correct:

    0 (0), 1 (0), 2 (0), 3 (0), 4 (0), 5 (0), 6 (0), 7 (0)
    8 (0), 9 (0), 10 (0), 11 (0), 12 (0), 13 (0), 14 (0), 15 (0)

    Detected 16 cores in 1 packages

Core energy units: a1003 Time_unit:10, Energy_unit: 16, Power_unit: 3 Time_unit:0.000976562, Energy_unit: 1.52588e-05, Power_unit: 0.125 Core 0, energy used: 0.119476W, Package: 14.0265W Core 1, energy used: 0.119476W, Package: 14.0265W Core 2, energy used: 0.0297546W, Package: 14.0265W Core 3, energy used: 0.0297546W, Package: 14.0265W Core 4, energy used: 0.0758362W, Package: 14.0265W Core 5, energy used: 0.0758362W, Package: 14.0265W Core 6, energy used: 0.0270081W, Package: 14.0265W Core 7, energy used: 0.0270081W, Package: 14.0265W Core sum: 0.50415W

As you can see it runs from core 0 to core 7, with clearly core 0 and core1 having the same energy, and so on. I would have guessed that you should skip all uneven cores instead of just dividing core_count by 2. This is because of the hyperthreading.

Did you have a look at uProf from AMD?

cminnoy avatar May 15 '19 11:05 cminnoy