Enabling/Disabling boost clock for amd-pstate-epp without rebooting

I want to enable or disable boosting without rebooting my computer/changing a bios setting. I am using the amd-pstate-epp driver. The only thing I have found is to set my maximum frequency to the nominal frequency (3.2), but this isn’t disabling boosting. I use a laptop and, unless I’m playing a game/doing a resource intense task, I don’t want my cpu to jump to 4.x ghz. It causes the temperatures to be much higher than they need to be. Relevant information:

❯ cpupower frequency-info
analyzing CPU 8:
  driver: amd-pstate-epp
  CPUs which run at the same hardware frequency: 8
  CPUs which need to have their frequency coordinated by software: 8
  maximum transition latency:  Cannot determine or is not supported.
  hardware limits: 400 MHz - 4.46 GHz
  available cpufreq governors: performance powersave
  current policy: frequency should be within 400 MHz and 4.46 GHz.
                  The governor "performance" may decide which speed to use
                  within this range.
  current CPU frequency: Unable to call hardware
  current CPU frequency: 3.38 GHz (asserted by call to kernel)
  boost state support:
    Supported: yes
    Active: yes
    AMD PSTATE Highest Performance: 166. Maximum Frequency: 4.46 GHz.
    AMD PSTATE Nominal Performance: 119. Nominal Frequency: 3.20 GHz.
    AMD PSTATE Lowest Non-linear Performance: 41. Lowest Non-linear Frequency: 1.10 GHz.
    AMD PSTATE Lowest Performance: 15. Lowest Frequency: 400 MHz.

Hardware info using inxi: https://0x0.st/XBKu.txt

Fastfetch:

see this

you can disable boost

sudo cat /sys/devices/system/cpu/amd_pstate/cpb_boost
sudo echo 0 > /sys/devices/system/cpu/amd_pstate/cpb_boost

added : i have checked on mkml mailing list , the patch is not still accepted , but it will coming

The cpb_boost directory doesn’t exist. In the amd_pstate folder there is only status and prefcore. In status it says active and in prefcore it says enabled. Should I change that? Any other ideas? Thanks!

can you report

sudo turbostat ( Ctrl+Q for exit )
sudo lscpu -ae

Turbostat doesn’t seem to exist. I’m using an amd cpu, a ryzen 5800H. Could that be why?
Running the command gives

❯ sudo turbostat
sudo: turbostat: command not found
Nevermind, I just installed turbostat. It returns:
Turbostat [CLICK TO REVEAL]

❯ sudo turbostat
[sudo] password for omni:
turbostat version 2024.04.08 - Len Brown lenb@kernel.org
Kernel command line: initrd=\00345e4bc32d4e5fa8c09c409afa6d9e\6.9.7-arch1-1\initrd nvme_load=YES nowatchdog rw root=UUID=fb990e3a-a3da-409d-bb26-bd44fff20fe0 resume=UUID=7cc0e17f-9121-47cb-ba47-5f2b35ec23bb nvidia_drm.modeset=1 rw root=UUID=fb990e3a-a3da-409d-bb26-bd44fff20fe0 resume=UUID=7cc0e17f-9121-47cb-ba47-5f2b35ec23bb nvidia_drm.modeset=1 rw root=UUID=fb990e3a-a3da-409d-bb26-bd44fff20fe0 resume=UUID=7cc0e17f-9121-47cb-ba47-5f2b35ec23bb nvidia_drm.modeset=1 systemd.machine_id=00345e4bc32d4e5fa8c09c409afa6d9e
CPUID(0): AuthenticAMD 0x10 CPUID levels
CPUID(1): family:model:stepping 0x19:50:0 (25:80:0) microcode 0x0
CPUID(0x80000000): max_extended_levels: 0x80000023
CPUID(1): SSE3 MONITOR - - - TSC MSR - HT -
CPUID(6): APERF, No-TURBO, No-DTS, No-PTM, No-HWP, No-HWPnotify, No-HWPwindow, No-HWPepp, No-HWPpkg, No-EPB
CPUID(7): No-SGX No-Hybrid
cpu0: cpufreq driver: amd-pstate-epp
cpu0: cpufreq governor: performance
/dev/cpu_dma_latency: 2000000000 usec (default)
current_driver: acpi_idle
current_governor: menu
current_governor_ro: menu
cpu0: POLL: CPUIDLE CORE POLL IDLE
cpu0: C1: ACPI FFH MWAIT 0x0
cpu0: C2: ACPI IOPORT 0x414
cpu0: C3: ACPI IOPORT 0x415
RAPL: 234 sec. Joule Counter Range, at 280 Watts
cpu0: MSR_RAPL_PWR_UNIT: 0x000a1003 (0.125000 Watts, 0.000015 Joules, 0.000977 sec.)

Core    CPU     Avg_MHz Busy%   Bzy_MHz TSC_MHz IPC     IRQ     POLL    C1      C2      C3      POLL%   C1%     C2%     C3%     CorWattPkgWatt
-       -       13      0.37    3482    3211    0.45    3884    0       88      148     3309    0.00    0.02    0.10    100.04  0.64  4.98
0       0       10      0.30    3368    3194    0.33    239     0       18      3       225     0.00    0.24    0.05    99.44   0.05  4.94
0       1       1       0.03    3269    3194    0.14    32      0       0       0       29      0.00    0.00    0.00    99.97
1       2       13      0.37    3541    3194    0.42    209     0       23      14      159     0.00    0.03    0.22    99.41   0.06
1       3       2       0.05    3236    3194    0.11    48      0       0       2       45      0.00    0.00    0.02    99.94
2       4       10      0.27    3540    3194    0.33    189     0       30      10      141     0.00    0.05    0.08    99.62   0.05
2       5       2       0.06    3256    3194    0.13    51      0       0       1       48      0.00    0.00    0.02    99.93
3       6       46      1.21    3787    3194    1.03    381     0       0       27      325     0.00    0.00    0.33    98.52   0.17
3       7       5       0.14    3448    3194    0.82    57      0       0       0       54      0.00    0.00    0.00    99.87
4       8       4       0.13    3393    3194    0.37    91      0       0       6       79      0.00    0.00    0.03    99.85   0.03
4       9       1       0.03    3323    3194    0.17    33      0       0       1       31      0.00    0.00    0.02    99.95
5       10      21      0.61    3477    3194    0.58    296     0       0       17      268     0.00    0.00    0.22    99.21   0.07
5       11      4       0.11    3257    3194    0.15    72      0       0       0       56      0.00    0.00    0.00    99.20
6       12      59      1.80    3284    3194    0.08    1765    0       2       58      1512    0.00    0.00    0.63    97.86   0.15
6       13      5       0.15    3287    3194    0.20    109     0       1       1       105     0.00    0.00    0.02    99.85
7       14      18      0.51    3472    3194    0.30    249     0       14      8       191     0.00    0.03    0.02    99.46   0.05
7       15      2       0.07    3284    3194    0.44    63      0       0       0       41      0.00    0.00    0.00    99.93
Core    CPU     Avg_MHz Busy%   Bzy_MHz TSC_MHz IPC     IRQ     POLL    C1      C2      C3      POLL%   C1%     C2%     C3%     CorWattPkgWatt
-       -       16      0.44    3619    3194    0.64    3710    0       18      117     3047    0.00    0.01    0.06    99.52   0.70  5.11
0       0       9       0.26    3346    3194    0.56    412     0       2       3       207     0.00    0.00    0.04    99.73   0.04  5.11
0       1       1       0.04    3220    3194    0.14    32      0       1       3       28      0.00    0.00    0.08    99.89
1       2       19      0.53    3523    3194    0.67    188     0       0       3       171     0.00    0.00    0.03    99.46   0.07
1       3       1       0.02    3275    3194    0.12    13      0       0       3       10      0.00    0.00    0.03    99.96
2       4       6       0.18    3349    3194    0.16    118     0       0       7       94      0.00    0.00    0.07    99.77   0.03
2       5       1       0.04    3224    3194    0.15    27      0       0       0       26      0.00    0.00    0.00    99.97
3       6       74      1.84    4029    3194    1.12    487     0       0       21      289     0.00    0.00    0.17    98.04   0.24
3       7       8       0.24    3516    3194    0.86    84      0       4       0       78      0.00    0.05    0.00    99.73
4       8       6       0.18    3269    3194    0.28    139     0       0       1       124     0.00    0.00    0.00    99.83   0.04
4       9       0       0.01    3336    3194    0.24    11      0       0       0       10      0.00    0.00    0.00    99.99
5       10      10      0.32    3255    3194    0.16    248     0       4       8       219     0.00    0.08    0.05    99.58   0.04
5       11      4       0.11    3188    3194    0.13    72      0       0       2       65      0.00    0.00    0.02    99.88
6       12      61      1.83    3366    3194    0.22    1455    0       6       41      1361    0.00    0.01    0.23    98.21   0.14
6       13      5       0.15    3262    3194    0.26    98      0       1       6       84      0.00    0.02    0.04    99.80
7       14      43      1.11    3862    3194    0.77    222     0       0       15      184     0.00    0.00    0.12    98.81   0.10
7       15      6       0.17    3367    3194    0.31    104     0       0       4       97      0.00    0.00    0.07    99.77
^CCore  CPU     Avg_MHz Busy%   Bzy_MHz TSC_MHz IPC     IRQ     POLL    C1      C2      C3      POLL%   C1%     C2%     C3%     CorWattPkgWatt
-       -       15      0.44    3452    3195    0.60    616     0       14      28      576     0.00    0.10    0.12    99.42   0.60  5.22
0       0       10      0.30    3276    3194    0.33    40      0       0       0       38      0.00    0.00    0.00    99.73   0.04  5.22
0       1       1       0.03    3335    3194    0.33    4       0       0       0       4       0.00    0.00    0.00    99.97
1       2       12      0.35    3296    3194    0.17    30      0       0       2       28      0.00    0.00    0.09    99.60   0.03
1       3       2       0.05    3378    3194    0.25    5       0       0       0       5       0.00    0.00    0.00    99.96
2       4       2       0.06    3397    3194    0.26    9       0       0       1       9       0.00    0.00    0.09    99.86   0.01
2       5       2       0.05    3276    3194    0.23    5       0       0       0       5       0.00    0.00    0.00    99.95
3       6       48      1.27    3785    3194    1.23    73      0       9       2       65      0.00    1.33    0.13    97.34   0.21
3       7       40      1.07    3776    3194    1.31    41      0       2       1       39      0.00    0.16    0.00    98.81
4       8       7       0.22    3289    3194    0.36    14      0       0       2       12      0.00    0.00    0.08    99.71   0.01
4       9       1       0.04    3406    3194    0.27    5       0       0       0       5       0.00    0.00    0.00    99.96
5       10      8       0.26    3260    3194    0.17    37      0       1       2       33      0.00    0.09    0.06    99.63   0.02
5       11      6       0.17    3237    3194    0.15    24      0       0       1       21      0.00    0.00    0.10    99.76
6       12      53      1.64    3210    3194    0.07    230     0       1       16      215     0.00    0.00    1.29    97.35   0.17
6       13      5       0.16    3235    3194    0.17    15      0       1       0       14      0.00    0.01    0.00    99.85
7       14      20      0.61    3283    3194    0.25    36      0       0       0       38      0.00    0.00    0.00    99.42   0.10
7       15      25      0.71    3471    3194    0.47    48      0       0       1       45      0.00    0.00    0.14    99.19

lscpu -ae returns

lscpu -ae [CLICK TO REVEAL]
CPU NODE SOCKET CORE L1d:L1i:L2:L3 ONLINE    MAXMHZ   MINMHZ       MHZ
  0    0      0    0 0:0:0:0          yes 4463.0000 400.0000 3334.9880
  1    0      0    0 0:0:0:0          yes 4463.0000 400.0000 3350.9031
  2    0      0    1 1:1:1:0          yes 4463.0000 400.0000 4159.7539
  3    0      0    1 1:1:1:0          yes 4463.0000 400.0000  400.0000
  4    0      0    2 2:2:2:0          yes 4463.0000 400.0000 3900.2241
  5    0      0    2 2:2:2:0          yes 4463.0000 400.0000  400.0000
  6    0      0    3 3:3:3:0          yes 4463.0000 400.0000 3383.8130
  7    0      0    3 3:3:3:0          yes 4463.0000 400.0000  400.0000
  8    0      0    4 4:4:4:0          yes 4463.0000 400.0000 3383.0681
  9    0      0    4 4:4:4:0          yes 4463.0000 400.0000  400.0000
 10    0      0    5 5:5:5:0          yes 4463.0000 400.0000 4176.9438
 11    0      0    5 5:5:5:0          yes 4463.0000 400.0000  400.0000
 12    0      0    6 6:6:6:0          yes 4463.0000 400.0000 4121.3628
 13    0      0    6 6:6:6:0          yes 4463.0000 400.0000 4167.5000
 14    0      0    7 7:7:7:0          yes 4463.0000 400.0000 3633.7971
 15    0      0    7 7:7:7:0          yes 4463.0000 400.0000 3930.9360

Image form:
image

Note: The discrepency between turbostat and iscpu was because I ran it a few minutes apart as I was trying to figure out formatting lol.

Welcome,
You can enable the boost with (at least that’s how it is for the Ryzen 5 5600X) :

echo 1 > /sys/devices/system/cpu/cpufreq/boost

as root, and disable it with echo 0.

https://wiki.archlinux.org/title/CPU_frequency_scaling#Setting_via_sysfs_(other_scaling_drivers)

Oddly enough there isn’t a boost directory. Is it because I’m using a laptop? Or maybe it’s because I’m using the amd pstate epp driver?

I am currently just setting the cpu frequency to 3.2. I have done some more digging and I have yet to find an answer. If anyone knows, please do tell. Thanks!

I’m not that well versed with this but i run amd_pstate=passive
With cpu power installed and set to ondemand can you not disable turbo or limit the peak frequency manually.

Example: sudo cpupower frequency-set -g ondemand -u 3.2GHz

It seems like using amd_pstate=active w/ powersave governor allows the cpu to have a lower idle frequency than amd_pstate=passive w/ ondemand governor, so I think I will use active. I’ll use gamemode with a script for automatically swapping the max cpu frequency and the cpu governor. Thanks for help!

1 Like

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.