cancel
Showing results for 
Search instead for 
Did you mean: 

Processors

pick_d
Adept I

5800X3D, CPPC and Linux

Hello.

I have 5800X3D neatly placed in Asus ROG STRIX B550-F with latest 2806 firmware.

The problem is that despite the fact that I have CPPC and CPPC Preferred Cores enabled in BIOS, I am not sure if it's working or even is supported by CPU at all.

That's what cpuinfo shows:

Spoiler
processor       : 0
vendor_id       : AuthenticAMD
cpu family      : 25
model           : 33
model name      : AMD Ryzen 7 5800X3D 8-Core Processor
stepping        : 2
microcode       : 0xa20120a
cpu MHz         : 2848.651
cache size      : 512 KB
physical id     : 0
siblings        : 16
core id         : 0
cpu cores       : 8
apicid          : 0
initial apicid  : 0
fpu             : yes
fpu_exception   : yes
cpuid level     : 16
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc cpuid extd_apicid aperfmperf rapl pni pclmulqdq monitor ssse3 fma cx16 sse4_1 s
se4_2 x2apic movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_llc mwaitx cpb cat_l3 cdp_l3 hw_pstate ssbd mba ibrs ibpb stibp vmmcall fsgsbase b
mi1 avx2 smep bmi2 erms invpcid cqm rdt_a rdseed adx smap clflushopt clwb sha_ni xsaveopt xsavec xgetbv1 xsaves cqm_llc cqm_occup_llc cqm_mbm_total cqm_mbm_local clzero irperf xsaveerptr rdpru wbnoinvd arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists
pausefilter pfthreshold avic v_vmsave_vmload vgif v_spec_ctrl umip pku ospke vaes vpclmulqdq rdpid overflow_recov succor smca fsrm
bugs            : sysret_ss_attrs spectre_v1 spectre_v2 spec_store_bypass
bogomips        : 6799.71
TLB size        : 2560 4K pages
clflush size    : 64
cache_alignment : 64
address sizes   : 48 bits physical, 48 bits virtual
power management: ts ttp tm hwpstate cpb eff_freq_ro [13] [14]

As we can see, no CPPC at all.

I had 5800X using same settings in this GNU/Linux distro, and CPPC worked just find, so coupled with amd_pstate driver I saw it idling at 550MHz or so. Now, sadly, it doesn't go below 2200MHz.

However, hwinfo64 in Windows 11 shows this:

 Core Performance Order:2, 1, 7, 6, 5, 4, 8, 3
 Core Performance Order (CPPC):1, 2, 7, 6, 5, 4, 8, 3

 

So one could assume that there's CPPC support still. Kind of confused right now.

So the questions are:

1. Does 5800X3D have CPPC support at all? And if yes, then

2. Any idea if this is firmware or OS issue? (or my settings, of course)

Thanks.

1 Solution

1. Yes, absolutely

2.  It is up to OS vendor to decide what and how to implement. I don't know if the Linux community ever added support. I think there might possibly be some very recent Linux distros with CPPC support, but I don't know if they support highest performance or highest performance change extensions.

I hope that helps!

View solution in original post

4 Replies

1. Yes, absolutely

2.  It is up to OS vendor to decide what and how to implement. I don't know if the Linux community ever added support. I think there might possibly be some very recent Linux distros with CPPC support, but I don't know if they support highest performance or highest performance change extensions.

I hope that helps!

pick_d
Adept I

Thanks for your reply.

The distro (Gentoo GNU/Linux) most definitely supports CPPC, as it worked with my 5800X pretty well (that AMD Pstate driver really worked great).

I was kind of confused before, because there was some info that some Zen2-Zen3 CPUs don't support it and I was thinking maybe X3D version don't have it. But if you say the support is there, so it must be Linux kernel issue or something.

Guess, the issue is solved, thanks for your time

0 Likes
cyring
Adept II

Here has been collected for Ryzen 7 5800X3D a firmware implementation of CPPC

In CoreFreq, CPPC capabilities and performance target ratios that you can build and run under Gentoo

2022-12-17-014336_644x550_scrot.png

2022-12-17-014708_644x550_scrot.png

With the CachyOS patched kernel, is also implemented the EPP Energy Performance Hint as a preview of future kernel upstream

CPPC/EPPCPPC/EPP

Thanks for this in-depth reply. This thing is a bit complicated to manage.

Apparently kernel amd_pstate module still works, they just changed the stuff one should put in kernel boot option / command line. Had to re-read documentation page to notice the change. When I discovered it, was able to fix it in no time.

Before:

 

amd_pstate.shared_mem=1

 

Now:

 

amd_pstate.shared_mem=1 amd_pstate=passive

 

 

Wish they'd make changes a bit more visible next time, so it would be easier to notice, but anyway. Thanks all.