반응형

1. Pre 

  • NSight는 NVidia에서 제공하는 Profiling Tool로 성능 최적화 등의 업무에 프로파일링 툴로 사용되기 유용하다.
  • 원격으로 SSH를 제공하기 때문에 Mac에 설치해서 서버에서 Profiling을 동작시키려고 하였으나, 정상적으로 동작되지 않아서 서버에 직접 설치하였다.
  • Site : https://developer.nvidia.com/nsight-systems

2. Download 
    다양한 포멧을 제공하는데, run파일을 이용하여 설치함
    https://developer.nvidia.com/nsight-systems/get-started

3. Execution
    $ chmod +x ./NsightSystems-linux-public-2023.2.1.122-3259852.run
    $ ./NsightSystems-linux-public-2023.2.1.122-3259852.run
    << ACCEPT 및 설치 경로 지정하면 해당 경로에 압축을 해제함 >>

4. Enviornment Setting
  임시적인 것으로 .bashrc 등에 추가하여 부팅시마다 적용되게 할 수 있으며, 실행을 했을 때에 CUDA 버전 관련해여 NSight의 오류 메시지 중에 event_paranoid를 1로 설정하라고 해서 이후에 1ㄹ로 변경하였음(참고)   
   $ echo kernel.perf_event_paranoid=2
   $ echo 2 > /proc/sys/kernel/perf_event_paranoid

5. 실행 후 설정
   실행후에 localhost의 경우 Project에서 별도의 설정없이 localhost connection으로 바로 사용가능
   Remote의 경우 SSH의 설정등을 위한 Network Information을 작성후에 연결 필요

   Target application 부분에 실행 기준 경로와 Command를 작성하면 바로 Start를 눌러 테스트가 가능한데,
   그 하단에 Enviornment vriables의 설정이 필요함. XAUTHORITY, LD_PRELOAD, DISPLAY 등의 설정이 비워져 있으며,
   영상 출력등의 기능이 포함될 경우 오류로 실행이 되지 않는 것을 확인함.
    이럴 경우 Terminal에서 변수를 그대로 입력해주면 정상적으로 동작이 실행되는 것을 확인할 수 있음
    예)
         $ echo $XAUTHORITY
         $ echo $LD_PRELOAD(나오는게 없어서 기본값 그대로 사용함(--> {LD_PRELOAD}:{}
         $ echo $DISPLAY

반응형

'개발, 웹, 블로그 > DeepLearning 상식' 카테고리의 다른 글

CUDA Version 확인 방법  (0) 2023.08.25
nvidia driver downgrade/재설치  (0) 2023.08.07
Cuda driver downgrade  (0) 2023.08.07
반응형

업데이트 이후 갑자기 개인 서버로 사용하는 데스크탑이 꺼지는 현상이 보인다(절전으로 보임)

유의미한 로그를 한번에 찾기 어려워서, 아예 kernel, syslog, dmesg를 로그를 걸어놓고 모니터링했더니 NetworkManager의 Request로 Sleep에 들어가는 어이 없는 상황이 발생하는 것을 확인했다

$ tail -f ./dmesg ./kern.log syslog
manager: sleep: sleep requested (sleeping: no  enabled: yes)

아래의 명령어로 현재 자동 대기 모드로 loading되어 있는지 확인이 가능하다. "loaded" 메시지가 있으면 loading된 상태로 봐야 한다고 한다. 다만 로그를 보면 최근 Sleep Request가 얼마전에 되었는지 나오는데 그것을 보고 확인을 하면 될거 같다.

$ systemctl status sleep.target suspend.target hibernate.target hybrid-sleep.target
● sleep.target - Sleep
     Loaded: loaded (/lib/systemd/system/sleep.target; static; vendor preset: enabled)
     Active: inactive (dead) since Mon 2023-08-07 12:38:08 KST; 38s ago
       Docs: man:systemd.special(7)

아래 명령어로 절전 기능을 끌 수 있다고 해서 설정하였다. 

$ systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target

이후에 status로 보면 "Loaded" 상태가 loaded에서 masked로 바뀐 것을 확인할 수 있다.

● sleep.target
     Loaded: masked (Reason: Unit sleep.target is masked.)
     Active: inactive (dead) since Mon 2023-08-07 12:38:08 KST; 2min 47s ago

다시 켜려면 unmask  옵션으로 다시 켤 수 있다고 하는데 할 생각이 없다. 서버가 절전기능이 되면 안되지...

반응형
반응형

1. nvidia driver matching 버전 확인
 cuda-compatibility 버전 확인(https://docs.nvidia.com/deploy/cuda-compatibility/)

2. nvidia driver 삭제

$ sudo apt-get remove --purge nvidia-*
$ sudo apt-get autoremove
$ sudo apt-get update
$ reboot

3. driver 확인

$ ubuntu-drivers devices

4. Repository 추가 및 driver 설치

$ sudo add-apt-repository ppa:graphics-drivers/ppa
$ sudo apt update
$ sudo apt-get install nvidia-driver-[Version Number]
$ reboot

 

반응형
반응형

cuda 12.2를 사용중인데 nvidia nsight를 사용하려고 하니 미지원 버전이라고 뜬다.

nvidia developer zone에서 nsight(https://docs.nvidia.com/nsight-systems/Archives/index.html)의 Latest(2023.2)에서 확인할 경우 Cuda Support version이 11 버전대로 나와서, 마지막 버전인 11.8을 설치해보려고 한다.
Old version으로 CUDA driver를 downgrade해야할 것 같다.

 

CUDA toolkit download 페이지로 가서 우측 하단에 "Archive of Privious CUDA Release"페이지로 들어간다.

https://developer.nvidia.com/cuda-downloads

 

CUDA Toolkit 11.7 Downloads

Get the latest feature updates to NVIDIA's proprietary compute stack.

developer.nvidia.com

https://developer.nvidia.com/cuda-toolkit-archive

 

CUDA Toolkit Archive

Previous releases of the CUDA Toolkit, GPU Computing SDK, documentation and developer drivers can be found using the links below. Please select the release you want from the list below, and be sure to check www.nvidia.com/drivers for more recent production

developer.nvidia.com

 

1. 기존 버전 삭제 및 Reboot

$ sudo apt-get purge cuda* && sudo apt-get autoremove && sudo apt-get autoclean && sudo rm -rf /usr/local/cuda*
$ reboot

2. 설치 방법(Web download 및 shell 명령어로 설치)
 NVidia의 설치 방법에 보면은 마지막 명령어가 "sudo apt-get -y install cuda"로 되어있는데, 그대로 명령어를 사용할 경우 최신 버전이 설치가 된다. 설치 하고자 하는 버전을 명시해줘야 해당 버전이 설치가 된다.

$ wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-keyring_1.0-1_all.deb
$ sudo dpkg -i cuda-keyring_1.0-1_all.deb
$ sudo apt-get update
$ sudo apt-get -y install cuda-11-8

3. Reboot

$ reboot

4. CUDA 환경 변수 확인 및 수정
~/.bashrc 에서 아래의 export 추가

$ vi ~/.bashrc

cuda에 softlink로 버전을 사용하게끔되어 있기 때문에, 해당 softlink로 경로를 잡아준다
(버전 명시 경로로 환경 변수를 잡아줄 경우 버전 변경시 마다 bashrc 파일의 수정이 필요로 함)

export PATH="/usr/local/cuda/bin:$PATH"
export LD_LIBRARY_PATH="/usr/local/cuda/lib64:$LD_LIBRARY_PATH"

재적용

$ source ~/.bashrc

5. 버전 확인

$ nvcc --version

 

@ 주의 : nvidia-driver와 compatible version 으로 설치해야됨

반응형
반응형

1. gstreamer 설치

$ sudo apt-get install libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libgstreamer-plugins-bad1.0-dev gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly gstreamer1.0-libav gstreamer1.0-doc gstreamer1.0-tools gstreamer1.0-x gstreamer1.0-alsa gstreamer1.0-gl gstreamer1.0-gtk3 gstreamer1.0-qt5 gstreamer1.0-pulseaudio

2. Tutorial Code

$ git clone https://gitlab.freedesktop.org/gstreamer/gst-docs 
 

GStreamer / gst-docs · GitLab

GStreamer documentation Please submit new issues and merge requests against the GStreamer mono repo!

gitlab.freedesktop.org

3. Tutorial Test

$ gcc basic-tutorial-1.c -o basic-tutorial-1 `pkg-config --cflags --libs gstreamer-1.0`
반응형
반응형

nvidia driver 삭제

$ sudo apt-get purge nvidia* ( or sudo apt-get remove --purge nvidia*
$ sudo apt-get autoremove
$ sudo apt-get autoclean
$ sudo rm -rf /usr/local/cuda*

 

nvidia driver 설치

$ ubuntu-drivers devices // Driver 목록 확인
$ sudo add-apt-repository ppa:graphics-drivers/ppa // ppa repository 추가
$ sudo apt update
$ sudo apt-get install nvidia-driver-<VER>
반응형
반응형

필요 빌드 패키지 설치

$ sudo apt-get install -y build-essential

OpenGL 및 Util 설치

$ sudo apt-get install freeglut3-dev libglu1-mesa-dev mesa-common-dev mesa-utils

설치 및 버전 확인

$ glxinfo | grep OpenGL

X11 환경 및 테스트

X11 환경에서 GLX 확장을 이용하여 OpenGL 3D Graphic을 확인할 수 있음

$ glxgears

아래와 같은 로그가 출력됨

22493 frames in 5.2 seconds = 4340.787 FPS
15376 frames in 5.0 seconds = 3067.526 FPS
14238 frames in 5.2 seconds = 2729.739 FPS
반응형
반응형

Mac에서 XQuartz로 X11에서 아래와 같은 오류가 발생했다.
구글링에서 확인해서 아래와 같이 세단계로 수정하여 정상 동작하는 것을 확인했다.

오류 내용

libGL error: No matching fbConfigs or visuals found
libGL error: failed to load driver: swrast
X Error of failed request:  GLXBadContext
  Major opcode of failed request:  149 (GLX)
  Minor opcode of failed request:  6 (X_GLXIsDirect)
  Serial number of failed request:  34
  Current serial number in output stream:  33

 

 

1. "libGL error: No matching fbConfigs or visuals found" 오류

$ echo "export XDG_RUNTIME_DIR=/tmp/runtime-$USER" >> ~/.bashrc

2. "libGL error: failed to load driver: swrast" 오류

$ echo  "export LIBGL_ALWAYS_INDIRECT=1" >> ~/.bashrc

3. "X Error of failed request: GLXBadContext ... " 오류

3.1 defaults read org.xquartz.X11 확인(0으로 되어 있음)

"enable_iglx" = 0;

아래 명령어로 1로 변경해줌

defaults write org.xquartz.X11 enable_iglx -bool true

 

4. Reload 및 재시작

4.1 Bash Resource File Reload

$ source ~/.bashrc

4.2 XQuartz 종료 및 재시작

 

 

반응형
반응형

Ubuntu GUI 로그인에서 Password가 틀리지 않았음에도 계속 로그인 창으로 반복해서 로그인 되는 현상이 여러번 발견함
구글링해서 아래와 같은 방법으로 해결했으나 다행히 CLI 모드로 진입한 것이 아닌 SSH연결의 CLI가 있어서 해당 Session으로 3번 이후의 단계로 해결함

1. [Ctrl + Alt + F3] 으로 CLI 모드 진입 or SSH/Telnet 등 Terminal 이용

2. ID, PW 입력 후 로그인

3. sudo apt-get purge lightdm

4. sudo apt-get install lightdm

5. sudo dpkg-reconfigure lightdm

6. lightdm 선택

7. sudo reboot

반응형
반응형

1. vundle download

$ git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim

 

2. vim resource 파일 수정

filetype off                   " required!
set shell=/bin/bash
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
" let Vundle manage Vundle
" required! 
Plugin 'VundleVim/Vundle.vim'

" vim 하단에 파일 정보 띄우기
Plugin 'vim-airline/vim-airline' 
Plugin 'vim-airline/vim-airline-themes'
" ...

call vundle#end()

filetype plugin indent on     " required!
"
" Brief help
" :BundleList          - list configured bundles
" :BundleInstall(!)    - install(update) bundles
" :BundleSearch(!) foo - search(or refresh cache first) for foo
" :BundleClean(!)      - confirm(or auto-approve) removal of unused bundles
"
" see :h vundle for more details or wiki for FAQ
" NOTE: comments after Bundle command are not allowed..

 

3. Plugin 설치

$ vim
: PluginInstall

 

반응형

+ Recent posts