View previous topic :: View next topic |
Author |
Message |
rsnfunky Tux's lil' helper

Joined: 30 Dec 2007 Posts: 121
|
Posted: Sat Apr 12, 2025 2:56 am Post subject: AMD 8700G CPU Governors |
|
|
Hi,
I have an AMD 8700G (A fairly recent processor). I wanted to set the 'OnDemand' Governor.
I had build the Kernel 6.14 and have built all CPU governors:
Code: | -*- CPU Frequency scaling │ │
│ │ [*] CPU frequency transition statistics │ │
│ │ Default CPUFreq governor (ondemand) ---> │ │
│ │ -*- 'performance' governor │ │
│ │ <*> 'powersave' governor │ │
│ │ <*> 'userspace' governor for userspace frequency scaling │ │
│ │ -*- 'ondemand' cpufreq policy governor │ │
│ │ <*> 'conservative' cpufreq governor │ │
│ │ -*- 'schedutil' cpufreq policy governor │ │
│ │ *** CPU frequency scaling drivers *** │ │
│ │ [ ] Intel P state control │ │
│ │ <M> Processor Clocking Control interface driver │ │
│ │ -*- AMD Processor P-State driver │ │
│ │ (3) AMD Processor P-State default mode │ │
│ │ <M> selftest for AMD Processor P-State driver │ │
│ │ <M> ACPI Processor P-States driver │ │
│ │ [*] Legacy cpb sysfs knob support for AMD CPUs │ │
│ │ <M> AMD Opteron/Athlon64 PowerNow! │ │
│ │ <M> AMD frequency sensitivity feedback powersave bias │ │
│ │ < > Intel Enhanced SpeedStep (deprecated) │ │
│ │ < > Intel Pentium 4 clock modulation │ │
│ └───────────────────────────v(+)──────────────────────────────────────── |
The system shows only 2 CPU Governors Performance and Powersave, whereas all the governors were compiled into the kernel.
Code: | # 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 - 5.18 GHz
available cpufreq governors: performance powersave
current policy: frequency should be within 2.40 GHz and 5.18 GHz.
The governor "powersave" may decide which speed to use
within this range.
current CPU frequency: Unable to call hardware
current CPU frequency: 4.69 GHz (asserted by call to kernel)
boost state support:
Supported: yes
Active: yes
Boost States: 0
Total States: 3
Pstate-P0: 4200MHz
Pstate-P1: 2200MHz
Pstate-P2: 1600MHz
|
How do I get the ondemand governor. |
|
Back to top |
|
 |
blu3bird Retired Dev

Joined: 04 Oct 2003 Posts: 616 Location: Munich, Germany
|
Posted: Sat Apr 12, 2025 8:12 am Post subject: |
|
|
A long time ago the kernel/governor would actively managed a CPUs frequency. For instance the ondemand governor would increase/decrease the frequency depending on the systems load. That's probably what you are referring to when you use the term ondemand.
Turns out having the operating system control the CPU frequency doesn't really work that well. It's far better to let the CPU itself control it's own frequency and just have the operating system provide some parameters on how the CPU should do that.
That's what the pstate driver (both amd pstate and intel pstate) does. It does not directly control the CPUs frequency it just provides parameters on how the CPU should operate.
The cpupower program is one way to manage these parameter but since it was designed ages ago and wants to remain compatible with older CPUs it's using terms like governor that are technically incorrect for modern CPUs. You can check out /sys/devices/system/cpu/cpu*/cpufreq for a list of parameters your kernel offers to influence the CPU.
So long story short: Both the powersave and performance "governors" offered by cpupower are ondemand-like governors. One is tailored a bit more for powersaving, the for performance.
* this whole post is over-simplified _________________ Black Holes are created when God divides by zero! |
|
Back to top |
|
 |
Ralphred l33t

Joined: 31 Dec 2013 Posts: 779
|
Posted: Sat Apr 12, 2025 3:50 pm Post subject: |
|
|
Just as an addendum to blu3bird's post: As and avid gamer and user of AMD cpu's, the amd-pstate powersave governor is the first ever non-"performance" governor that doesn't introduce frametime spikes or noticeable periods of lag. When running at full load (when load average is ~= to nproc) there is no difference between the powersave and performance governors AFAICT. Maybe because the maximum boost clocks are applied when the "thermal opportunity" presents itself at times of need, I get a "higher average clock speed for working cores" using powersave than performance.
If you really want to use schedutil you can add amd_pstate=guided on the kernel command line, but that feels like replacing a modern car's ECU with a distributor... |
|
Back to top |
|
 |
|