Hello,

I’m adjusting pp_table settings to get most out of my GPU (RX 6800 XT) and it works but every time I restart PC the changes revert back to default. Any idea how I could make them persist?

For me pp_table is located in /sys/class/drm/card1/device/pp_table

I have to use chmod to be able to make changes:

sudo chmod o+w /sys/class/drm/card1/device/pp_table

Then I’m able to write in changes with upp:

upp -p /sys/class/drm/card1/device/pp_table set --write smc_pptable/SocketPowerLimitAc/0=312 smc_pptable/SocketPowerLimitDc/0=293 smc_pptable/TdcLimit/0=300 smc_pptable/FreqTableSocclk/1=1350 smc_pptable/FreqTableFclk/1=2000 smc_pptable/FclkBoostFreq=2000

And just in case you’re wondering if the effort even makes sene, yes it does:

Max OC with LACT with max default limits (left) vs max OC with edited pp_table (right) in the picture.

  • catloaf@lemm.ee
    link
    fedilink
    English
    arrow-up
    5
    ·
    19 hours ago

    Writing udev rules would probably be the best. I’ve never done this so I can’t give you a reference, but I’m sure if you search for info on writing udev rules to set sysfs params you’ll find them. Hopefully the contents of pp_table can be specified in text, not binary.