Closed notgood closed 2 years ago
Hello,
What I have noticed in BIOS is that those limits have to be changed from [AUTO] to any value, lower than their max. Then I able to increase/decrease the limits, from CoreFreq
Can you give a try in that way ?
EDIT:
10W
.142W
, plus 10W
Went to BIOS, lowered TDC and EDC to 100A, PPT to 100W, temp to 80C.
Corefreq still incorrectly displays stock and non-adjustable values for 5950X (TDC 95A, EDC 140A, PPT 142W)
As I mentioned, real and correct PPT is displayed in Corefreq "Power Limit (0 sec) PL1" field. I can adjust in any steps as well (until I hit some other temperature or current limits) Here is a some screenshots of burn test: adjusting PL1 to 80W, 100W and 120W results same consumption in Package power label.
PL1
and PL2
somehow reflected by dialing values into BIOSEDC
TDC
are not taken into account
0x59800
) but couldn't find this BIOS value among bits.OK, tried installing https://gitlab.com/leogx9r/ryzen_smu/ driver and https://github.com/hattedsquirrel/ryzen_monitor frontend.
ryzen_smu is able to correctly retrieve EDC/TDC/PPT/TempLimit, both current and limits. It also can adjust all four variables.
So perhaps required registers can be found in ryzen_smu code.
OK, tried installing https://gitlab.com/leogx9r/ryzen_smu/ driver and https://github.com/hattedsquirrel/ryzen_monitor frontend.
ryzen_smu is able to correctly retrieve EDC/TDC/PPT/TempLimit, both current and limits. It also can adjust all four variables.
So perhaps required registers can be found in ryzen_smu code.
Those are undocumented, unspecified registers from Manufacturer.
I will rather implement the "safe" i2c/RSMI, RBI protocols.
From my limited testing, both corefreqk and ryzen_smu kernel drivers can coexist. Frontends also seem to run OK at the same time.
I was able to run the following things simultaneously:
Fits my needs I guess.
From my limited testing, both corefreqk and ryzen_smu kernel drivers can coexist. Frontends also seem to run OK at the same time.
I was able to run the following things simultaneously:
- burn test in corefreqd
- watch all the related data in corefreq-cli and ryzen_monitor
- adjust max allowed temperature using /sys/kernel/ryzen_smu_drv/rsmu_cmd
Fits my needs I guess.
Hello,
Can you give a try to the develop
branch for those cases:
Feel free to add screenshots; thank you.
Installed git AUR packages: corefreq-client-git 1.88.4.r19.g39eeddd-1 corefreq-dkms-git 1.88.4.r19.g39eeddd-1 corefreq-server-git 1.88.4.r19.g39eeddd-1
Memory controller corefreq vs zentimings:
Corefreq sensors
Limits corefreq vs AMDMaster, TDC/EDC/PPT still stock instead of actual ones.
@notgood Thank you for your screenshots.
Apparently looks like based on develop
branch : do you confirm ?
TDC/EDC/PPT, they are indeed still stock. I can't beat Ryzen-Master because only AMD knows those registers. Perhaps one day.
CTR/Hydra can do it on Windows, FYI.
AMD Ryzen TDC/EDC/PPT can be reliably read and changed using open source software on both Linux (ryzen_smu) and Windows (SMUDebugTool), I've tested it myself. SMU commands, addresses and arguments required to to so are all available in relevant gitlab/github repositories. To my understanding, this information was acquired by snooping on commands sent to CPU by Ryzen Master.
But I also understand and respect @cyring wish to only use officialy available and documented commands.
AMD Ryzen TDC/EDC/PPT can be reliably read and changed using open source software on both Linux (ryzen_smu) and Windows (SMUDebugTool), I've tested it myself. SMU commands, addresses and arguments required to to so are all available in relevant gitlab/github repositories. To my understanding, this information was acquired by snooping on commands sent to CPU by Ryzen Master.
But I also understand and respect @cyring wish to only use officialy available and documented commands.
Issue postponed until I get better TDC , EDC registers specs. PPT of 270W appears ok with RM
Running CoreFreq 1.88.4 on Ryzen 5950X, here is a sysinfo output:
corefreq-cli -s
What I'm really interested in is ability to display and control power/thermal limits: TDC, EDC, PPT and max temperature.
CoreFreq currently displays stock PPT, EDC, and TDC values for 5950X, instead of actual live ones. TDC field is editable, but adjusting it doesn't work. At the same time actual PPT value is displayed in "Power Limit (0 sec) PL1", and adjusting it does work.
User adjustable max temperature ("Platform Thermal Throttle Limit" in AMD BIOS, allows to cap max temperature below TjMax) seems no be unavailable in CoreFreq.
Here are my actual values, set in UEFI, seen in Win10 tools: PPT 270W, TDC 160A, EDC 180A, Temp Limit 80C.