On Windows, the Wattman driver functionality allows to both increase and
decrease the GPU power consumption to either 150% or 50% (100% +/- 50%).
There already is such functionality implemented on Linux for the decrease part.
"cat /sys/class/drm/card0/device/hwmon/hwmon0/power1_cap" returns "48000000"
for my RX 560, which is the allowed maximum GPU power consumption of 48W.
I can successfully set lower values like e.g. "echo 30000000 >
/sys/class/drm/card0/device/hwmon/hwmon0/power1_cap" to set maximum GPU power
consumption to 30W.
However, unlike on Windows with Wattman, it's not possible that I can set
higher values than "48000000" to increase the maximum allowed power
consumption.
For instance, already "echo 49000000 >
/sys/class/drm/card0/device/hwmon/hwmon0/power1_cap", which is just 1W above
48W, is forbidden, it just returns "invalid value".
On Windows, Wattman allows setting GPU power consumption to 72W (150%) for my
RX 560.
Additionally to "/sys/class/drm/card0/device/hwmon/hwmon0/power1_cap", there
also is "/sys/class/drm/card0/device/hwmon/hwmon0/power1_cap_max".
"cat /sys/class/drm/card0/device/hwmon/hwmon0/power1_cap_max" returns
"48000000" as well for my card.
However, the value has no setter:
https://cgit.freedesktop.org/~agd5f/linux/tree/drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c?h=drm-next-4.18-wip#n1336
Unlike power1_cap, which has amdgpu_hwmon_set_power_cap() as a setter and thus
can be adjusted by the user. So, power1_cap_max is read only.
To conclude: There is no way implemented for the user to increase the maximum
allowed power consumption.
It would be nice if this would be implemented, as it basically is the only
missing piece to adjust the GPU's performance like with Wattman on Windows.