GPU OVERCLOCK LINUX AMD
- linux 에서의 AMD gpu 오버클럭
개요
이 내용은 오버클럭을 할 수 있다! 라는게 아니라 오버클럭에 대한 내용을 간단하게 정리함으로서 혹시 시도를 하시려는 분들께 도움이 되었으면 하는 취지에서 정리해 두는 내용이다.
필요조건
- rx4xx 급 이상, AMD GPU 카드
- 이것보다 이하의 카드는 linux 에서 fan 속도 외에는 GPU 온도조차도 확인할 수가 없다
- GPU 카드의 메모리가 4G 이상
- 글을 쓰는 시점(20180630)에서 claymore dual 이 3G 이상의 메모리를 요구
- ubuntu 16.04
- AMD GPU driver 가 가장 안정적으로 동작하는 환경
AMD gpu parameter
AMG GPU 카드는 kernel 의 sysfs 를 통해 다음과같은 파라메터를 제공한다.
- /sys/class/drm/card0/device/hwmon/hwmon0/pwm1_min < 팬속도 최저(0)
- /sys/class/drm/card0/device/hwmon/hwmon0/pwm1_max < 팬속도 최고(255)
- /sys/class/drm/card0/device/hwmon/hwmon0/pwm1 < 현재 팬속도(0~255 사이)
- /sys/class/drm/card0/device/hwmon/hwmon0/pwm1_enable < 팬 속도 변경가능
- /sys/class/drm/card0/device/hwmon/hwmon0/temp1_crit < Critical temperature (단위는 섭씨)
- /sys/class/drm/card0/device/pp_sclk_od < 현재의 gpu 클럭 세팅값
- /sys/class/drm/card0/device/pp_mclk_od < 현재의 gpu 메모리 클럭 세팅값
- /sys/class/drm/card0/device/pp_dpm_sclk < 현재의 gpu 클럭값 및 선택가능 세팅값 목록
- /sys/class/drm/card0/device/pp_dpm_mclk < 현재의 메모리 클럭값 및 선택가능 세팅값 목록
당신의 장비에 GPU 카드가 여러장이 있다면 다음과 같이 나타나게 된다.
- /sys/class/drm/card0/
- /sys/class/drm/card1/
- /sys/class/drm/card2/
- blahblah....
카드가 8 장이면 0번에서 7번까지 나타난다는걸 주의하자.
또한 대부분의 경우에서 "/sys/class/drm/card0/device/hwmon/hwmon0" 에서 hwmon0 은 그대로 유지되지만, 경우에 따라 hwmon 뒤에 오는 번호가 바뀔 수 있음을 유의하자.
fan 속도 변경
fan 속도는 기본적으로 값을 수동으로 변경할 수 있도록 바꾸는 작업부터 시작된다.
- echo "1" > /sys/class/drm/card0/device/hwmon/hwmon0/pwm1_enable
fan 값은 0 ~ 255 사이의 값을 입력한다. MS-windows 에서는 percent 로 변경하는데 255 를 100% 로 보고 값을 넣어주면 된다. 어래처럼 하면 대략 70% 에 근접한다.
- echo "190" > /sys/class/drm/card0/device/hwmon/hwmon0/pwm1
GPU 클럭의 변경
선택 가능한 값은 다음을 통해서 볼 수 있다.
- cat /sys/class/drm/card0/device/pp_dpm_sclk
값의 세팅은 다음을 통해서 진행할 수 있다.
- echo "3" > /sys/class/drm/card0/device/pp_sclk_od
VGA 의 펌웨어 교체를 해주지 않으면, 실제로 효과를 볼 수는 없다.
VGA 메모리 클럭의 변경
선택 가능한 값은 다음을 통해서 볼 수 있다.
- cat /sys/class/drm/card0/device/pp_dpm_mclk
값의 세팅은 다음을 통해서 진행할 수 있다.
- echo "3" > /sys/class/drm/card0/device/pp_mclk_od
VGA 의 펌웨어 교체를 해주지 않으면, 실제로 효과를 볼 수는 없다.
저전력 세팅
linux 에서의 저전력 세팅은 불가능하다.
참고문서
- https://www.reddit.com/r/EtherMining/comments/7fwst5/bios_mod_and_overclocking_in_linux/
- https://github.com/RadeonOpenCompute/ROC-smi
- https://github.com/OhGodACompany/OhGodATool
- https://github.com/matszpk/amdcovc
- https://www.ddengle.com/mining/8448885
- https://www.ddengle.com/mining/8444389
- https://www.phoronix.com/scan.php?page=news_item&px=AMDGPU-OverDrive-Linux-4.15
- https://forum.ethereum.org/discussion/14678/overclocking-rx-580-on-ubuntu-16-04
- https://www.phoronix.com/scan.php?page=article&item=radeon-rx580-oc&num=1
- https://github.com/czombos/AMDGPU-XMR-ETH-Mining-Ubuntu
- https://nicewoong.github.io/development/2018/02/24/c-library-gcc-compile/
- https://jiafei427.wordpress.com/2016/11/15/%EB%9D%BC%EC%9D%B4%EB%B8%8C%EB%9F%AC%EB%A6%AC-%EC%9D%B4%ED%95%B4%ED%95%98%EA%B8%B0/
- https://support.amd.com/en-us/kb-articles/Pages/AMDGPU-PRO-Install.aspx