diff --git a/README.md b/README.md index 173f14e..41c602c 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,78 @@ # amdgpu-overclock +## Increase performances of your AMD GPU on linux system: + +- Download & install [amdgpu-clocks](https://github.com/sibradzic/amdgpu-clocks) (go for the "manual installation"); +- Set `amdgpu.ppfeaturemask=0xffffffff` as boot kernel parameter ; +- Check initial status of your gpu (`card0` generally) with `cat /sys/class/drm/card0/device/pp_od_clk_voltage` + +*Example output* +``` +OD_SCLK: +0: 500Mhz +1: 2580Mhz +OD_MCLK: +0: 97Mhz +1: 1000MHz +OD_VDDGFX_OFFSET: +0mV +OD_RANGE: +SCLK: 500Mhz 3000Mhz +MCLK: 674Mhz 1075Mhz +``` +- Retrieve also all power-profile-modes available `cat /sys/class/drm/card0/device/pp_power_profile_mode` + +*Example output* +``` +PROFILE_INDEX(NAME) CLOCK_TYPE(NAME) FPS MinFreqType MinActiveFreqType MinActiveFreq BoosterFreqType BoosterFreq PD_Data_limit_c PD_Data_error_coeff PD_Data_error_rate_coeff + 0 BOOTUP_DEFAULT : + 0( GFXCLK) 0 5 1 0 4 800 4587520 -65536 0 + 1( SOCCLK) 0 5 1 0 1 0 3276800 -65536 -6553 + 2( MEMLK) 0 5 1 0 4 800 327680 -65536 0 + 1 3D_FULL_SCREEN : + 0( GFXCLK) 0 5 0 1600 4 650 5242880 -3276 0 + 1( SOCCLK) 0 5 1 0 1 0 655360 -65536 -6553 + 2( MEMLK) 0 5 4 850 4 800 327680 -65536 0 + 2 POWER_SAVING : + 0( GFXCLK) 0 5 1 0 3 0 5898240 -65536 0 + 1( SOCCLK) 0 5 1 0 1 0 3407872 -65536 -6553 + 2( MEMLK) 0 5 1 0 3 0 1966080 -65536 0 + 3 VIDEO : + 0( GFXCLK) 0 5 1 0 4 500 4587520 -65536 0 + 1( SOCCLK) 0 5 1 0 1 0 3473408 -65536 -6553 + 2( MEMLK) 0 5 1 0 4 500 1966080 -65536 0 + 4 VR : + 0( GFXCLK) 0 5 4 1000 1 0 3276800 0 0 + 1( SOCCLK) 0 5 1 0 1 0 655360 -65536 -6553 + 2( MEMLK) 0 5 1 0 4 800 327680 -65536 0 + 5 COMPUTE*: + 0( GFXCLK) 0 5 4 1000 1 0 3932160 0 0 + 1( SOCCLK) 0 5 1 0 1 0 655360 -65536 -6553 + 2( MEMLK) 0 5 4 850 3 0 327680 -65536 -32768 + 6 CUSTOM : + 0( GFXCLK) 0 5 1 0 4 800 4587520 -65536 0 + 1( SOCCLK) 0 5 1 0 1 0 3276800 -65536 -6553 + 2( MEMLK) 0 5 1 0 4 800 327680 -65536 0 +``` + +- Go for the **COMPUTE** n°**5** power profile to get maximum performances ; +- Create the file `/etc/default/amdgpu-custom-states.card0` ; + +*Configuration example* +> You better read the amdgpu-clocks shell script to understand & find some useful variables. +``` +# GPU Clock +OD_SCLK: +0: 500Mhz +1: 2580Mhz + +# Compute +FORCE_POWER_PROFILE: 5 + +# Watt +FORCE_POWER_CAP: 332000000 +FORCE_PERF_LEVEL: manual +``` + +- Enable the amdgpu-clocks systemd service ; +- Enjoy 99% GPU usage in games now :). \ No newline at end of file