Trouble shooting for Ubuntu GPU machine

GPU driver가 사라졌을때

!!!요부분은 아직 경험하지 못한 부분 우분투 14.04를 쓸 땐 CUDA driver를 썼지만, 16에서는 따로 드라이버를 잡았으로, 그 드라이버를 새로 깔아서 해결해보자. 그전에 이 현상이 안 일어나야겠지…. 자동 업데하다 nvidia랑 충돌나서 생기는 문제인 거 같은데.

  • !!!결론적으로 자동 업데가 화근이었다.
  • 최근 받은 미루웨서 매뉴얼에 따르면 GUI autoupdate를 켜놓으면 dist-upgrade를 자동으로 하는데
  • 그러면 추천 앱+커널이 업데된다고 한다. 커널이 업데되면 임의로 깔은 nvidia driver를 인식 못 함…
  • 따라서 GUI autoupdate를 never로 해두고, 터미널에서 dist-upgrade가 아닌 update -> upgrade만 할것!!
  • 만약 dist-uprade를 해서 그래픽 드라이버를 인식못하면, nvidia driver만 다시 깔면됨
  • CUDA는 건드리지 말것.

일단 피씨 본체의 reset 버튼으로 강제 리부팅을 하면 날아 가는듯하다 (모니터 Input source 때문에 몇번 리부팅했을때 괜찮은 걸보면 GPU 컴퓨팅 중에 하면 날아가는듯)

CUDA가 날아갔을때

  1. 재부팅후 ctrl+alt+F1으로 가상터미널 접속
  2. sudo service lightdm stop
  3. su sh cuda_7.5.18_linux.run(nvidia driver yes, openGL no)
  4. sudo reboot 하면 드라이버는 가동
  5. CUDNN다시 카피(sudo nautilus로 관리자 탐색기 띄우고 Home/cuda에 있는 파일들을 usr/local/cuda로 각각 옮긴다.)

2단계에서 lightdm을 stop하면 가상타미널도 stop되면서 black screen이 되는 경우가 있다.

그럴땐 일단

sudo service lightdm start

를 깜깜이 상태에서 쳐서 화면을 살리고, 다음 단계를 진행한다.

이 현상의 원인은 가상터미널에서도 graphic mode가 작동되어서 그런듯 하다.

그걸 끄기 위해서 grub을 재설정 해줘야함.

sudo nautilus

관리자 탐색기에서 /etc/default/grub 을 backup한다.

# GRUB_TERMINAL=console# GRUB_GFXMODE=640x480

으로 터미널 그래픽 모드를 비활성화시킨다.

sudo update-grub

그럽을 업데해주고 sudo vim grub에서 다음과 같은 라인을 추가한다.

gfxpayload=nomodeset
~$ sudo reboot

그럼 이제 가상터미널에서 lightdm을 stop해도 화면이 보인다.

모니터 먹통 현상 해결

input source 바꾸기 등으로 우분투로 부터의 display가 안뜰때

ctrl + alt + F1 으로 가상터미널로 들어가 display가 뜨는걸 확인하고(optional display output을 refresh 필수인듯)

ctrl + alt + F7 으로 GUI환경으로 다시 돌아 온다.

우분투 무한 로긴

  • 최근 우분투 18.04로 업그레이드하면서 생겼던 문제.
  • 업그레이드하면서 당연히 kernel이 업데되면서 그래픽카드 드라이버는 재설정해줘야 했음. 이건 예상했던 문제.
  • 그래픽 카드를 재설치하고, 심지어 CUDA에 포함된 그래픽카드로 다시 잡아도 문제가 해결안되었음.
  • 다음과 같은 방법으로 (아마) 해결된 듯.
  • 그전에 기본으로 깔리는 gdm에서 lightdm으로 바꿔줘야함.
sudo dpkg-reconfigure lightdm
  • 물론 내 경우에는 이것으로 해결되진 않았음. 참고싸이트
ls -lA
-rw-------  1 root root   53 Nov 29 10:19 .Xauthority
# 위와 같이 뜬다면
chown username:username .Xauthority 
# 내 로긴네임
# 여기에 추가로
ls -ld /tmp
drwxrwxrwt 15 root root 4096 Nov 30 04:17 /tmp
# 앞의  drwx~~~~~ 가 제대로 되어 있는지 확인
sudo chmod a+wt /tmp
  • 아마도 위의 두가지 해결법(.Xauthority와 tmp) 중에 하나가 먹힌 듯하다.
  • 4GPU machine을 업글하지 말고 환경만 유지 할것.

ubuntu 16.04 matlab issue

우분투 업글 이후 matlab이 crush 남.

locate libstdc++.so.6

를 쳐서, matlab 위치를 찾는다. 나같은 경우

/usr/local/MATLAB/R2016a/sys/os/glnxa64/libstdc++.so.6/usr/local/MATLAB/R2016a/sys/os/glnxa64/libstdc++.so.6.0.17

이었음.

/usr/local/MATLAB/R2016a/sys/os/glnxa64

로 가서 파일이름을 바꿔줌.

sudo mv libstdc++.so.6 libstdc++.so.6.oldsudo mv libstdc++.so.6.0.17 libstdc++.so.6.0.17.old

이렇게 하면 matlab의 rendering이 제대로 잡힘.

high resolution display vs Application issue

matlab의 경우, matlab command에서 다음과 같이 입력하면 해결.

>> s = settings;s.matlab.desktop.DisplayScaleFactor
>> s.matlab.desktop.DisplayScaleFactor.PersonalValue = 2

참고 문서

Ubuntu 18.04 scaling

  • high resolution display를 쓰고 있는데, 18.04에는 100%, 200%단위로만 display scaling 설정이 가능하다.
  • 하지만 text scaling만 조정하는 방법이 있다.
gsettings set org.gnome.desktop.interface text-scaling-factor 1.5

tensorflow hanging during computation

cifar10_multi_gpu tutorial test중에 연산하다가 자꾸 멈추는 현상이 지속됨 비슷한 보고, 또 다른 보고 등이 있음. 종합해본 결과 ASUS motherboard의 PCIe와 nvidia card 가 서로 궁합이 안맞는 것으로 추정.

해결

  1. ASUS bios update 내껀 ASUS X99E WS임. 업데이트는 USB에 cap 파일을 담아서 재부팅때 BIOS에 들어가서 해줌. 업데이트 하면서 BIOS setting CPU를 performance mode로 바꿈.
  2. nvidia driver update
  3. grub setting 바꾸기
$ sudo vi /etc/default/grubLINUX_.....="biosdevname=0 pcie_aspm=off" # in editor deleted "quiet splash"
  • net.ifnames=0 도 추가했더니, network setting이 이상해짐. 빼고 pcie error는 안 뜸.

apt-get update error message

GPG key problem

  • update를 할 때, R과 관련된 것이 error를 낼 때가 있다.
GPG error: <https://cloud.r-project.org/bin/linux/ubuntu> focal-cran40/ InRelease: The following signatures were invalid: EXPKEYSIG 51716619E084DAB9 Michael Rutter <marutter@gmail.com>
  • 이럴땐 다음과 같이 해결한다.
$ sudo apt-key list
# expire된 key를 확인, grep를 써도 됨.
/etc/apt/trusted.gpg
--------------------
pub   rsa2048 2010-10-19 [SCA] [expired: 2020-10-16]
      E298 A3A8 25C0 D65D FD57 CBB6 5171 6619 E084 DAB9
uid           [ expired] Michael Rutter <marutter@gmail.com>

$ sudo apt-key del "E298 A3A8 25C0 D65D FD57 CBB6 5171 6619 E084 DAB9"
# expire된 key를 삭제
$ sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E298A3A825C0D65DFD57CBB651716619E084DAB9
# key를 다시 추가
$ sudo apt-key list
# key추가된 것 확인.
pub   rsa2048 2010-10-19 [SCA] [expires: 2027-09-30]
      E298 A3A8 25C0 D65D FD57  CBB6 5171 6619 E084 DAB9
uid           [ unknown] Michael Rutter <marutter@gmail.com>
sub   rsa2048 2010-10-19 [E] [expires: 2027-09-30]

Leave a comment

이 사이트는 스팸을 줄이는 아키스밋을 사용합니다. 댓글이 어떻게 처리되는지 알아보십시오.