sibradzic / upp

A tool for parsing, dumping and modifying data in Radeon PowerPlay tables
GNU General Public License v3.0
155 stars 24 forks source link

Voltages too high values for Navi10 #5

Closed azeam closed 4 years ago

azeam commented 4 years ago

I've managed to undervolt my MSI 5700 XT Gaming X using upp so it is working as I had hoped (less power usage, a lot cooler and quieter but only a few fps lower). However, the voltages reported via upp are 4 times what the actual values are supposed to be (at least what seems to be reported under Windows according to online screenshots ). From pp_table dump:

smcPPTable: [...] MinVoltageGfx: 3000 MinVoltageSoc: 3000 MaxVoltageGfx: 4800 MaxVoltageSoc: 4200

I've set the MaxVoltageGfx to 4400 (-100mV or 1100 mV from 1200 mV supposedly). I guess this is not actually an upp issue (?), but I'm worried that future updates elsewhere to the way pp_table handles voltages (starting to use the actual values) may cause the upp settings to damage the card if the values are set several volts higher than they should? Tested under amd-staging-drm-next (drivers via oibaf) as of today (2019-12-27), didn't test to set any values but the same values were reported under kernel 5.5-rc2.

sibradzic commented 4 years ago

Most of the voltage values in (Radeon VII and later) PowerPlay tables seems to be quadruple of actual effective voltages, and it is not dictated by kernel or upp at all, it is the representation AMD choose to use, probably because HW voltage controller(s) on these recent boards are using such values internally... Even the default VROM pp-tables have voltages set as quadruple, so it is not something you should worry about.

I know it may be a bit counter-intuitive to work with such voltage values as a human, but since upp is pretty low level & non-GUI tool that can decode and encode all pp-table values regardless of what they really represent, I made a decision not to interpret any of the values at all, as it would only complicate things more and introduce risk of voltage conversion bugs.

If you or someone want to develop a simple GUI on top of upp that interprets voltages in a similar manner that MorePowerTool or others do, please feel free to do so, I'll be happy to support such effort.

azeam commented 4 years ago

Sounds great, thanks for the information! I just might try to find some time to write a simple GUI at least for these settings, pp_od_clk_voltage settings are still not working and these Navi cards have been out for a while now.

azeam commented 4 years ago

So I started a simple GUI for upp and it is now working as intended on my system, but still needs work in terms of user feedback etc. I have some questions mainly regarding the data to include and it would be great if you would like to answer some of those or maybe give me some other feedback. I don't think this is the right forum for this though but couldn't find any other means of contacting you, if you would be willing to do so you can send me an e-mail to dennishagg @ gmail com