일단 제목은 NVIDIA 우분투 마이닝 FAQ라고 적었지만,
최근 게시판에 지속적으로 올라오는 우분투 16.04.2 LTS + NVIDIA 드라이버 설치에 관련된 내용 및 리눅스/우분투 초보자들이 겪는 문제를 위주로 해서 정리해 나갈 예정입니다.
우분투 리눅스 + NVIDIA 그래픽 환경 설정에 대한 글은 다음 링크를 우선 참조하시기 바랍니다.
https://www.ddengle.com/2395534
Q. 패키지 설치를 확인하는 방법은 무엇인가요? (우분투 관련)
A. 특정 패키지의 이름을 잘 모르고 시스템에 설치된 모든 패키지를 알고싶다면 다음의 명령을 실행합니다.
$ dpkg -l
특정 패키지 이름을 정확히 알고있다면, 예를 들어 nvidia-375라는 이름의 패키지가 설치되어있는지 확인하려면
$ dpkg -l nvidia-375
그러면 다음과 같은 식으로 출력 결과가 표시됩니다.
$ dpkg -l nvidia-375 Desired=Unknown/Install/Remove/Purge/Hold | Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend |/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad) ||/ Name Version Architecture Description +++-====================-===============-===============-============================================= ii nvidia-375 375.66-0ubuntu0 amd64 NVIDIA binary driver - version 375.66
여기서 첫번째 "i"는 Desired 상태, 즉 Install 되었음을 의미하고, 두번째 "i"는 현재 Install된 상태로 확인됨을 말합니다.
특정 패키지의 이름을 정확히 모르는 경우, 예를 들어 nvidia-로 시작하는 모든 패키지를 찾고 싶다면
$ dpkg -l "nvidia-*" Desired=Unknown/Install/Remove/Purge/Hold | Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend |/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad) ||/ Name Version Architecture Description +++-====================-===============-===============-============================================= ii nvidia-375 375.66-0ubuntu0 amd64 NVIDIA binary driver - version 375.66 un nvidia-common <none> <none> (no description available) un nvidia-driver-binary <none> <none> (no description available)
이 경우 nvidia-common 패키지의 상태는 "u" unkown이며, "n": not installed를 의미합니다.
예제)
1. CUDA-8 설치 확인하려면 dpkg -l "cuda*"
2. cuda 런타임 라이브러리가 설치되어있는지 확인하려면? cuda 런타임 라이브러리는 libcuda로 시작하므로 dpkg -l "libcuda*"
3. nvidia 드라이버 설치 확인하려면 dpkg -l "nvidia-375" 혹은 P106-100용 드라이버의 경우 dpkg -l "nvidia-384"
버전 번호를 잘 모르겠으면 dpkg -l "nvidia*"
팁)
특정 패키지가 설치되어있는지 확인하려고 하는데 dpkg 명령이 생각이 안난다면, 그냥 sudo apt-get install 패키지명 명령을 실행시켜보면 패키지가 설치되어있는지 확인할 수 있습니다. 패키지가 이미 설치되어 있는 경우에는 설치된 상태를 보여주고 종료될 것이고, 패키지가 설치되어 있지 않은 상태라면 패키지를 설치할 것인지 물어보고 설치가 진행되게 될 것입니다.
Q. 그래픽카드를 장착했는데, 제대로 인식이 되지 않는 것 같습니다. 어떻게 해야 할까요?
A. 새 카드를 추가 장착하면 커널에서 기본적으로 인식이 되며 드라이버 설치 유무와 상관 없이 lspci 명령을 통해서 확인할 수 있습니다.
예)
$ lspci |grep VGA # P106 카드의 경우 3D를 검색하면 됨 즉, lspci |grep 3D 01:00.0 VGA compatible controller: NVIDIA Corporation Device 1b84 (rev a1) 02:00.0 VGA compatible controller: NVIDIA Corporation Device 1b84 (rev a1) 03:00.0 VGA compatible controller: NVIDIA Corporation Device 1b84 (rev a1) 05:00.0 VGA compatible controller: NVIDIA Corporation Device 1b84 (rev a1) 06:00.0 VGA compatible controller: NVIDIA Corporation Device 1b84 (rev a1) 07:00.0 VGA compatible controller: NVIDIA Corporation Device 1b84 (rev a1)
새로 추가 장착 했는데, lspci를 통해서 장착된 기기를 볼 수 있다면 이는 십중팔구 바이오스 세팅 문제 / 라이져카드 장착 문제 입니다.
그래픽드라이버를 제대로 설치하고 그래픽 카드 인식이 정확히 되었다면 nvidia-xconfig 혹은 nvidia-smi 명령을 통해서 다음과 같은 식으로 그래픽 카드 인식 여부를 알 수 있습니다.
$ nvidia-xconfig --query-gpu-info 혹은
$ nvidia-smi -L
Q. NVIDIA 드라이버를 모두 설치했는데 안됩니다. 어떻게 해야 할까요?
A. Nvidia 드라이버 설치 문서를 보고 그대로 따라했는데 안된다는 질문이 상당히 많이 보입니다. 원인도 다양하고 어떤 문제인지 확인하기도 쉽지 않은 경우도 있습니다. 기본적으로 다음 내용을 확인하셔야 합니다.
1단계 확인 : nvidia-smi가 작동 하는가?
1단계 확인은 가장 기본적인 부분입니다. nvidia-smi 명령이 작동한다는 것은 nvidia 커널 드라이버가 제대로 설치되었고, 작동되고 있다는 뜻입니다.
1. nvidia 드라이버 설치 유무 : nvidia-375 패키지(안정버전) 혹은 nvidia-384 패키지 (개발버전. P106-100 그래픽 카드의 경우)
2. cuda 런타임 라이브러리 설치 유무 : libcuda1-375 혹은 libcuda1-384 패키지 설치 유무
3. nvidia-smi 작동 상태 확인 - 가장 중요.
4. claymore 혹은 ethminer 작동 상태 확인
그밖에 다음을 확인해야 할 수도 있습니다.
5. bumblebee 제거 : 간혹 bumblebee 패키지가 자동으로 설치되어서 특정 오류 메시지가 나오는 경우가 있습니다.
$ sudo apt-get purge bumblebee 명령을 내려서 패키지 및 패키지 설정 파일을 모두 삭제해줍니다.
nvidia-smi 작동 상태 확인하기
nvidia-smi를 실행시켜보면 다음과 같은 식의 내용이 뜹니다.
(세부적인 내용은 다를 수 있으니 주의하시기 바랍니다.)
$ nvidia-smi Sat Aug 12 15:29:16 2017 +-----------------------------------------------------------------------------+ | NVIDIA-SMI 375.66 Driver Version: 375.66 | |-------------------------------+----------------------+----------------------+ | GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC | | Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. | |===============================+======================+======================| | 0 GeForce GTX 106... On | 0000:01:00.0 On | N/A | | 85% 67C P2 105W / 80W | 2261MiB / 3011MiB | 100% Default | +-------------------------------+----------------------+----------------------+ | 1 GeForce GTX 106... On | 0000:02:00.0 Off | N/A | | 85% 63C P2 95W / 80W | 2232MiB / 3013MiB | 100% Default | +-------------------------------+----------------------+----------------------+ | 2 GeForce GTX 106... On | 0000:03:00.0 Off | N/A | | 85% 56C P2 95W / 80W | 2232MiB / 3013MiB | 100% Default | +-------------------------------+----------------------+----------------------+ | 3 GeForce GTX 106... On | 0000:05:00.0 Off | N/A | | 85% 67C P2 94W / 80W | 2232MiB / 3013MiB | 100% Default | +-------------------------------+----------------------+----------------------+ | 4 GeForce GTX 106... On | 0000:06:00.0 Off | N/A | | 85% 64C P2 92W / 80W | 2232MiB / 3013MiB | 100% Default | +-------------------------------+----------------------+----------------------+ | 5 GeForce GTX 106... On | 0000:07:00.0 Off | N/A | | 85% 66C P2 96W / 80W | 2232MiB / 3013MiB | 100% Default | +-------------------------------+----------------------+----------------------+
(위 출력은 persistence-Mode가 활성화(On) 상태이며, 파워제한이 80W가 걸려있다)
1. Persistence 모드 : nvidia 커널 모듈은 그래픽 GPU가 작동하기 위해 필요한데, X윈도우 상태이거나 혹은 cuda 애플리케이션이 작동할 때에 커널 모듈이 활성화 되게 됩니다. X윈도우가 종료되거나 cuda 애플리케이션이 더이상 작동하지 않는 경우에는 커널 모듈이 비활성화상태가 됩니다. Persistence 모드는 nvidia 커널 모듈이 지정된 GPU에 대해서 항상 활성화 상태가 되도록 강제합니다.
예를 들어 파워제한을 70W로 주는 명령은 $ sudo nvidia-smi -pl 70 입니다. 그런데 X윈도우 상태가 아니거나, cuda 애플리케이션을 쓰고 있지 않은 상태 즉 nvidia 커널 모듈이 활성화되지 않은 상태에서 persistence 모드가 켜있지 않을 때에는 파워 제한이 다시 원상복구 되어버립니다. (즉 파워 제한이 걸리지 않음) persistence 모드가 아니기때문에 설정값이 일시적으로 커널 모듈로 전달이 되지만, 커널 모듈이 사용되지 않는 비활성 상태에서는 파워제한이 다시 원상복구가 되기 때문입니다.
$ sudo nvidia-smi -pm 1 명령을 통해서 persistence 모드로 진입됩니다.
이 상태에서 $ sudo nvidia-smi -pl 70 이라는 명령을 내리면 파워 제한을 70W를 걸고 이 상태가 유지되게 됩니다.
2단계 : claymore혹은 ethminer 테스트
nvidia-smi가 정상적으로 실행된다면 X윈도우를 띄우지 않더라도 오버클럭이나, 팬 콘트롤을 하지 않은 상태에서 claymore/ethminer를 실행할 수 있습니다.
만약 claymore/ethminer가 아예 실행이 되지 않는다면 cuda 런타임 라이브러리 libcuda1-375 혹은 libcuda1-384가 설치되지 않은 상태입니다. cuda 런타임 라이브러리가 설치되어 있는데도 제대로 실행이 되지 않는 경우라면 수동으로 nvidia-* 커널 라이브러리를 설치해서 설정이 꼬여있는 상태입니다. 이 경우는 https://www.ddengle.com/2395534 문서에 설명된 대로 재설치 하시고 다시 실행해보시기 바랍니다.
X윈도우를 띄우지 않은 상태에서 마이너를 실행시키는 방법
nvidia 커널을 다시 로딩시키려면 어떻게 해야 할까?
(이것이 쉽게 이해되지 않는다면 3단계로 바로 넘어가셔도 상관 없습니다)
다음 명령을 내리면 persistence 모드를 끄고, nvidia 커널 모듈을 비활성화시키고 nvidia 커널 모듈을 커널에서 언로드 할 수 있습니다.
$ sudo nvidia-smi -pm 0 # persistence 모드 끔 $ sudo service lightdm stop # X 윈도우 종료상태 확인 # 그밖에 마이너 프로그램 강제로 종료시키고... $ sudo rmmod nvidia_drm nvidia_modeset nvidia_uvm nvidia # nvidia 커널 모듈을 모두 언로드. # 오류가 나는 경우에는 커널 모듈이 다른 프로그램에서 사용중이라서 제대로 제거가 되지 못한 경우.
그런 후에 다음 명령을 내리면 nvidia 커널 모듈이 다시 적재되게 됩니다.
$ sudo nvidia-smi -pm 1 # persistence 모드 활성화
그런데, 이 상태에서 claymore 혹은 ethminer를 실행시키면 GPU는 P0 혹은 P2 상태가 아닌 P8상태(idle 상태)로 들어가버리고 제 성능이 나오지 않아 버립니다.
그렇다면 X윈도우를 아예 띄우지 않은 상태에서 마이너를 실행시키려면 어떻게 해야 할까요?
이 경우에는 오버클럭이나 팬 컨트롤을 제대로 사용할 수 없으나, 성능 레벨(Performance Level)을 강제로 고정하는 방식으로
GPU가 휴먼상태(idle)로 빠지지 않게 하면서 마이너를 실행시키는 것은 가능합니다.
Performance Level을 강제로 고정하려면 /etc/modprobe.d/nvidia.conf 파일을 하나 만들어서 다음의 내용을 써 넣습니다.
# /etc/modprobe.d/nvidia.conf 내용 options nvidia NVreg_RegistryDwords="PerfLevelSrc=0x2222;PowerMizerLevel=0x1;PowerMizerDefault=0x1;PowerMizerDefaultAC=0x1" # 끝
nvidia 커널 모듈이 적재되지 않은 상태인지 확인하려면 $ lsmod |grep nvidia 명령을 내려봅니다. 아무 결과가 나오지 않는다면 이 상태에서 nvidia 커널 모듈을 $ sudo nvidia-smi -pm 1 명령을 사용하여 적재시킵니다.
명령이 제대로 실행되었다면 /proc/drivers/nvidia/params 내용이 다음과 같이 나타날 것입니다.
$ cat /proc/drivers/nvidia/params | grep Dwords RegistryDwords: "PerfLevelSrc=0x2222;PowerMizerLevel=0x1;PowerMizerDefault=0x1;PowerMizerDefaultAC=0x1"
(위와 같이 나오지 않는다면 중간 단계에서 nvidia 커널 모듈 언로드가 실패하거나 혹은 실수를 하신 것입니다.)
이 상태에서 마이닝 프로그램을 실행시키면 GPU가 휴면상태로 가지 않고 마이닝 프로그램이 정상적으로 실행될 것입니다.
(단, 위에서 설명한대로 오버클럭 및 팬 컨트롤을 제대로 할 수 없습니다)
3단계 : X윈도우 설정
오버클럭이나 팬 컨트롤을 하기 위해서는 X윈도우를 설정해서 nvidia-settings를 실행할 수 있는 상태가 되어야 합니다.
1. 내장 그래픽 비활성화 + GTX XXXX 그래픽 카드 조합의 경우 : 일반적인 경우입니다. https://www.ddengle.com/2395534 문서에 있는 방식으로 설정할 수 있습니다.
2. 내장 그래픽 활성화 + GTX 10XX 혹은 P106-100 조합: 원리적으로 위와 같습니다만, 다음 사항을 주의해야 합니다.
- 이미 X가 설정된 경우: 내장그래픽으로 이미 X윈도우가 설정된 경우에는 /etc/X11/xorg.conf 파일이 생성되어 있거나, 기본 값으로 X가 떠있는 경우입니다. xorg.conf 파일이 이미 있는 경우에는 이 설정값을 참고로 내장그래픽을 추가합니다.
- 내장 그래픽 추가 : X가 활성화 되지 않은 경우에는 $ X -configure 명령을 통해서 X 설정값을 자동으로 설정할 수 있습니다. X -configure 명령을 내리면 ~/xorg.conf.new 라는 파일이 생성되며, 이 설정 파일을 참고해서 내장 그래픽을 추가할 수 있습니다.
X서버가 이미 실행중인 경우에는 X -configure를 실행할 수 없다는 오류가 납니다. 이런 경우에는 X :1 -configure 명령을 사용하실 수 있습니다.
(xorg.conf 파일을 직접 편집하는 작업은 꽤 어려운 작업이므로 주의하시기 바랍니다.)
내장그래픽이 활성화되어서 X윈도우를 이미 사용할 수 있는 경우, 이미 내장 그래픽이 잘 작동하는 xorg.conf 파일이 있는 경우에는 이 파일을 백업해두고 아래 내용을 진행하시기 바랍니다. (cp /etc/X11/xorg.conf xorg.conf.work 와 같은 방식으로 xorg.conf를 복사해 둡니다.)
- GTX XXXX 및 P106-100 그래픽 카드에 대한 설정은 nvidia-xconfig 명령을 사용하여 초기 설정값을 얻을 수 있습니다.
$ sudo rm /etc/X11/xorg.conf # /etc/X11/xorg.conf 설정파일이 잘 작동한다면 백업해두고 지웁니다.
$ sudo nvidia-xconfig -a --cool-bits=28 --allow-empty-initial-configuration
이 명령을 내리면 /etc/X11/xorg.conf 파일이 생성됩니다. 이를 바탕으로 xorg.conf를 수정합니다.
인텔 내장 그래픽의 경우
Section "ServerLayout" Identifier "X.org Configured" Screen 0 "DefaultScreen0" # 추가 Screen 1 "Screen0" 0 0 # 숫자 변경 및 0으로 수정 Screen 2 "Screen1" 0 0 # 숫자 변경 및 0으로 수정 Screen 3 "Screen2" 0 0 # 숫자 변경 및 0으로 수정 ... (생략) InputDevice "Mouse0" "CorePointer" InputDevice "Keyboard0" "CoreKeyboard" EndSection ... Section "Device" Identifier "IntelDevice0" Driver "modesetting" # "modesetting"이 안되는 경우는 "intel" 혹은 "fbdev"를 넣어본다. BusID "PCI:x:y:z" # 이 값은 lspci |grep VGA 명령을 통해서 얻을 수 있음 (하단에 설명) #Option "AccelMethod" "none" EndSection ... Section "Screen" Identifier "DefaultScreen0" Device "IntelDevice0" SubSection "Display" Depth 24 EndSubSection EndSection # 끝
내장 그래픽 장치의 BusID는 lspci 명령을 통해 얻습니다. 예를 들어 다음과 같다면
$ lspci |grep Display 혹은 lspci | grep VGA 00:02.0 Display controller: Intel Corporation Device 5902 (rev 04) ...
이 경우 내장 그래픽이 BusID는 "PCI:0:2:0"이 됩니다. (가장 상단에 뜨는 기기)
/etc/X11/xorg.conf 파일의 편집이 완료되면 일단 파일을 백업하고 (예를 들어 cp /etc/X11/xorg.conf ~/xorg.conf.save)
고친 xorg.conf 파일이 정확히 작동하는지 확인하기 위해서
$ nvidia-xconfig -t -c /etc/X11/xorg.conf 명령을 실행합니다.
(혹은 nvidia-xconfig -t -c xorg.conf.fixed 와 같이 바뀐 xorg.conf파일의 경로 지정)
오류가 있는 경우에는 오류라는 메시지가 나오며, 오류가 없는 경우에 xorg.conf의 해석된 스트럭쳐를 보여줍니다.
xorg.conf가 이상이 없는 경우에는 다음의 테스트를 진행합니다.
xorg.conf가 이상이 없으면 이제 이 파일을 보존해줍니다 (예를 들어 $ cp /etc/X11/xorg.conf xorg.conf.ok)
우선 콘솔에서 일반 사용자가 xinit을 사용할 수 있게 하기 위해서
/etc/X11/Xwrapper.config 를 편집하여 allowed_users=console 줄을 찾아 allowed_users=anybody로 바꿔준 후에,
$ xinit /usr/bin/nvidia-settings 명령을 실행시켜봅니다.
문제가 있다면 금방 종료되고 /var/log/Xorg.0.log 파일에 오류가 남을 것이고, 정상적으로 실행된다면 다음과 같은 화면이 뜨게 됩니다.
(위 스샷은 구버전 스크린 샷이며, 최신 nvidia-settings의 경우 "Enable Performance Level Editing 체크박스는 없습니다")
실행이 정상적이라면 Quit를 누르고 xinit을 종료하고 빠져나옵니다.
$ sudo service lightdm start를 실행하면 X윈도우가 실행되게 되며, 오버클럭 및 팬 컨트롤도 할 수 있는 상태가 됩니다.
(xinit를 실행시킬 수 있기만 하면 lightdm을 실행할 필요 없이 $ xinit nvidia-settings 명령을 통해 오버클럭 및 팬 컨트롤을 할 수 있습니다)
※P106-100 사용시 주의사항: P106-100을 쓰는 경우에는 리눅스 가상 콘솔을 제대로 사용할 수 없습니다. 리눅스 가상 콘솔을 사용하려고 Ctrl-Alt-F1(~F6)을 누르면 GPU가 P8상태(휴면 상태)로 바뀌면서 마이닝 프로그램의 성능이 제대로 나오지 않게 됩니다. (이는 최신 엔비디어 커널 드라이버의 버그로 추정됩니다.) Alt-F7을 눌러 다시 X윈도우 상태로 전환시키면 GPU는 P0상태로 원상복구되고 마이너 프로그램은 정상 작동하게 됩니다.
4단계 오버클럭/팬 컨트롤
nvidia-settings를 실행할 수 있으면 이제 이를 이용하여 오버클럭을 할 수 있습니다.
여기서는 GUI를 통한 오버클럭 대신에 명령줄을 이용한 오버클럭을 설명합니다.
이제 X를 실행할 수 있게 되었으므로, 두가지 방식으로 X윈도우로 진입할 수 있습니다.
그 첫번째는 기존 문서처럼 sudo service lightdm start 명령으로 X윈도우 디스플레이 매니져를 통해서 로그인 후에
터미널 응용프로그램을 실행하는 것이고,
다른 방법으로는 $ xinit 명령을 통해서 X윈도우로 진입하는 것입니다.
두 방법중에 하나의 방법으로 X윈도우로 진입한 후에는 오버클럭을 하는 것이 가능합니다.
1) nvidia-settings GUI를 통해서 오버클럭하기 : 이는 nvidia-settings GUI창을 통해서 오버클럭을 제어하는 방법입니다.
2) 간단한 스크립트를 만들어서 오버클럭 하기 : https://www.ddengle.com/2395534 문서에 나온 방법입니다.
예를 들어서 GTX1060의 경우 다음 명령을 통해서 GPU-0 그래픽 카드에 대한 오버클럭을 할 수 있습니다.
다음과 같은 내용이 들어있는 간단한 쉘 스크립트 파일을 만들어줍니다.
(예를 들어 파일 이름을 xoc.sh라는 이름으로 만들어 다음 내용을 넣어줍니다.)
#!/bin/sh
nvidia-settings -a [gpu:0]/GPUGraphicsClockOffset[3]=100 # 코어 클럭 오프셋을 100으로
nvidia-settings -a [gpu:0]/GPUMemoryTransferRateOffset[3]=800 # 메모리 transfer rate 오프셋을 400으로
(xoc.sh 파일을 저장한 후에 X윈도우 환경에서 $ sh xoc.sh 명령을 실행합니다)
그런데 이 명령은 GTX 1050 혹은 P106-100에서 제대로 작동을 하지 않으며, 다음처럼 내용을 조금 바꿔야 작동합니다.
#!/bin/sh
nvidia-settings -a [gpu:0]/GPUGraphicsClockOffset[2]=100 # 코어 클럭 오프셋을 100으로
nvidia-settings -a [gpu:0]/GPUMemoryTransferRateOffset[2]=800 # 메모리 transfer rate 오프셋을 400으로
이것은 P106-100의 Performance Level 최대값이 3이 아닌 2이기 때문입니다.
(아래 이미지는 하양이엔젤님의 스크린샷을 가져다가 가공한 것입니다. 출처: https://www.ddengle.com/2646238)
※부연설명: X가 실행중이지 않은 상태에서는 $ xinit /usr/bin/nvidia-settings [gpu:0]/GPUGraphicsClockOffset[2]=100
방식으로 실행시킬 수 있습니다. X가 이미 실행중인 상태에서 ssh로 원격 접속한 경우에는 $ xinit /usr/bin/nvidia-settings [gpu:0]/GPUGraphicsClockOffset[2]=100 -- :1 -once
처럼 사용할 수 있습니다. 여기서 [2]
부분은 위에서 설명한 것처럼 그래픽 카드에 따라서 [2]
가 될 수도 [3]
이 될 수도 있습니다.
Q. /etc/X11/xorg.conf 파일이 원상복구 되거나 제멋대로 다른 설정으로 바뀌는데 어떻게 해야 하나요?
A. 이것은 gpu-manager때문이라고 합니다.
gpu-manager를 비활성화시키고 /etc/init/gpu-manager.conf 파일을 주석처리 해주면 xorg.conf 파일이 리셋되는 현상을 막을 수 있습니다.
1. /etc/init/gpu-manager.conf의 모든 줄을 주석처리해주기 (즉, # 기호를 gpu-manager.conf 맨 앞에 모두 추가)
# 원래 /etc/init/gpu-manager.conf 파일
start on (starting lightdm
or starting gdm
or starting kdm
or starting xdm
or starting lxdm)
task
exec gpu-manager --log /var/log/gpu-manager.log
# 끝
고친 후 파일
#start on (starting lightdm
# or starting gdm
# or starting kdm
# or starting xdm
# or starting lxdm)
#task
#exec gpu-manager --log /var/log/gpu-manager.log
# 파일 끝
그리고 gpu-manager 서비스 종료시키기
$ sudo service gpu-manager stop
gpu-manager 가동 중단시키기
재부팅하고난 후에 더이상 gpu-manager를 실행시키지 않으려면 다음을 수정합니다.
https://askubuntu.com/questions/731990/gpu-manager-overwrites-xorg-conf 참고.
/etc/default/grub 파일을 편집해서
GRUB_CMDLINE_LINUX_DEFAULT 줄을 찾아서
"nogpumanager"를 추가합니다.
예)
GRUB_CMDLINE_LINUX_DEFAULT="nomodeset nogpumanager"
그런다음
$ sudo update-grub2
D-SUB 내장그래픽 출력보드들은 기본적으로 전기가 없이 출력이 가능해서 내장을 살려두어도 마이닝전용(P106)으로 셋팅해도
내장 + 마이닝(오버활성) 셋팅이 문제가 없이 사용이 가능하도록 했는데
DVI/HDMI (D-SUB X) 출력 메인보드의 경우 강제 활성이 안걸리는 이유로 연결이 안되어 있는경우 더미를 생성해도 이거저거 오류가 뿜뿜이 나오는데 혹시 이부분으로 확인이 가능 하실까요?