-
-
Notifications
You must be signed in to change notification settings - Fork 53
Description
Qubes OS release
4.1
Brief summary
CPU frequencies do not seem to scale properly, at least for the lower frequencies.
Steps to reproduce
Tested on:
Lenovo Thinkpad L14 Gen 3 AMD with Ryzen 7 Pro 5875u
Latest BIOS from Dec. 2022
Kernel: 6.1.5-1
EFI install.
(Also reported by @lunarthegrey on Ryzen 7 Pro 3700u on R4.0 with kernel 5.4.10-1: #4604 (comment))
In dom0, sudo xenpm get-cpufreq-para
Expected behavior
A low minimum frequency should be shown for powersaving and a maximum frequency of 4500MHz.
Frequencies should be able to be used.
Maybe implement amd p-state driver.
Actual behavior
Minimum frequency shown is 1600MHz and maximum is only 2000MHz:
cpu id : 0
affected_cpus : 0
cpuinfo frequency : max [2000000] min [1600000] cur [1600000]
scaling_driver : powernow
scaling_avail_gov : userspace performance powersave ondemand
current_governor : ondemand
ondemand specific :
sampling_rate : max [10000000] min [10000] cur [20000]
up_threshold : 80
scaling_avail_freq : 2000000 1800000 *1600000
scaling frequency : max [2000000] min [1600000] cur [1600000]
turbo mode : enabled
Changing governor to performance does not work.
BIOS setting to set CPU power usage to auto-saving does not make any difference.
Only 3 P states are reported:
sudo xenpm get-cpufreq-states
cpu id : 0
total P-states : 3
usable P-states : 3
current frequency : 1600 MHz
P0 [2000 MHz]: transition [ 1467]
residency [ 24856 ms]
P1 [1800 MHz]: transition [ 96]
residency [ 587 ms]
*P2 [1600 MHz]: transition [ 1434]
residency [ 90121 ms]
Just as the reporter of issue #4604 mentioned later, when using 'xenpm start 1', the average frequency reported under load are actually higher than the reported maximum. I've seen 4000-4100MHz under load.
When idle, it is never lower than 1600MHz though.
Notes
It is also necessary to use clocksource=tsc tsc=unstable hpetbroadcast=0 for proper performance. Not sure if related:
#6055