The dpm performance level can be changed to push the memory and GPU frequency to the highest levels (maximum performance).
NOTE: The default is auto, but this may result in some lag at some points while the GPU ramps up performance.
cat /sys/class/drm/card0/device/power_dpm_force_performance_level
returns:
auto
To set max performance:
echo "high" > /sys/class/drm/card0/device/power_dpm_force_performance_level
To set low performance:
echo "low" > /sys/class/drm/card0/device/power_dpm_force_performance_level
To set Auto performance:
echo "auto" > /sys/class/drm/card0/device/power_dpm_force_performance_level
To set manual performance:
echo "manual" > /sys/class/drm/card0/device/power_dpm_force_performance_level
NOTE: When manual is selected, the user can manually adjust which power states are enabled for each clock domain via the sysfs pp_dpm_mclk, pp_dpm_sclk, and pp_dpm_pcie files and adjust the power state transition heuristics via the pp_power_profile_mode sysfs file.
echo "profile_standard" > /sys/class/drm/card0/device/power_dpm_force_performance_level echo "profile_min_sclk" > /sys/class/drm/card0/device/power_dpm_force_performance_level echo "profile_min_mclk" > /sys/class/drm/card0/device/power_dpm_force_performance_level echo "profile_peak" > /sys/class/drm/card0/device/power_dpm_force_performance_level
NOTE: When the profiling modes are selected, clock and power gating are disabled and the clocks are set for different profiling cases.
This mode is recommended for profiling specific work loads where you do not want clock or power gating for clock fluctuation to interfere with your results.
Created a /etc/rc.local file and populate with:
#!/bin/bash echo low > /sys/class/drm/card0/device/power_dpm_force_performance_level
chmod a+x /etc/rc.local
See How to enable rc.local with systemd.