즐겁게!! 자신있게!! 살아보세!!

재밌는 인생을 위하여! 영촤!

AI/Deep Learning

[DL] 게임용 PC를 딥러닝 서버로 전환하기: CUDA 10.0 & TensorFlow 설정 가이드

Godwony 2020. 4. 6. 14:32
반응형

게임용 PC를 딥러닝 서버로 전환하기: CUDA 10.0 & TensorFlow 설정 가이드

🔍 개요: 게임용 PC(GTX 1060 6GB)를 딥러닝 서버로 전환하는 과정을 상세히 안내합니다. Ubuntu 18.04에 CUDA 10.0과 cuDNN 7.6.2를 설치하여 TensorFlow 2.0을 위한 최적의 환경을 구축하는 방법을 알아보세요.

서버 스펙 소개

제가 딥러닝 서버로 전환한 PC의 스펙은 다음과 같습니다:

구성요소 사양
CPU AMD Ryzen 7 1700 OC 3.8GHz
RAM CORSAIR DDR4 32GB (8GB×4) Vengeance Pro RGB White XMP 3000MHz
메인보드 GIGABYTE GA-AX370-Gaming K5 AORUS
SSD WD Black SN750 M.2 2280 NVME SSD, 500GB
전원공급장치 700W
GPU NVIDIA GeForce GTX 1060 6GB

이 시스템은 2017년 말에 게임용으로 구축했던 AMD 기반 PC를 딥러닝 실습 및 연구를 위한 서버로 전환한 것입니다. 이 정도 사양이면 딥러닝 입문과 실습에 충분한 가성비 시스템이라고 생각합니다.

TensorFlow 설치 전 가장 중요한 2가지 체크포인트

1. 필요한 TensorFlow 버전 확인하기

많은 딥러닝 코드들이 특정 버전의 TensorFlow를 기준으로 작성되어 있습니다. 특히 TensorFlow 1.x와 2.x 사이에는 큰 차이가 있어 호환성 문제가 발생할 수 있습니다. 이번 가이드에서는 TensorFlow 2.0을 기준으로 설명하겠습니다.

2. TensorFlow 버전에 맞는 CUDA 및 cuDNN 버전 설치하기

TensorFlow-GPU는 특정 버전의 CUDA와 cuDNN이 필요합니다. 버전 불일치는 설치 및 실행 오류의 주요 원인이 됩니다.

tensorflow 버전에 따른 pyton 버전과 cuda버전 조견표
tensorflow 버전에 따른 pyton 버전과 cuda버전 조견표



딥러닝 서버 구축 과정

이번 포스팅에서는 다음 단계 중 **2번 과정(Nvidia 설정, CUDA 10.0, cuDNN 7.6 설치)**에 초점을 맞추겠습니다:

  1. Ubuntu 18.04 설치
  2. Nvidia 드라이버, CUDA 10.0, cuDNN 7.6.2 설치 (이번 포스팅 주제)
  3. SSH 설정
  4. Anaconda 4.8.3 설치
  5. Jupyter Notebook 설정

TensorFlow 2.0을 위한 CUDA 10.0과 cuDNN 7.6.2 설치하기

TensorFlow 공식 문서에 따르면, TensorFlow 2.0을 사용하기 위해서는 CUDA 10.0과 cuDNN 7.6이 필요합니다. 아래 과정을 통해 정확한 버전을 설치해 보겠습니다.

TensorFlow 2.0버전과 CUDA 10.0과 cuDNN 7.6 조견표

STEP 1: NVIDIA 패키지 저장소 추가

$ wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/cuda-repo-ubuntu1804_10.0.130-1_amd64.deb
$ sudo dpkg -i cuda-repo-ubuntu1804_10.0.130-1_amd64.deb
$ sudo apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/7fa2af80.pub
$ sudo apt-get update
$ wget http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1804/x86_64/nvidia-machine-learning-repo-ubuntu1804_1.0.0-1_amd64.deb
$ sudo apt install ./nvidia-machine-learning-repo-ubuntu1804_1.0.0-1_amd64.deb
$ sudo apt-get update

 

STEP 2: NVIDIA 드라이버 설치

먼저 시스템에 맞는 드라이버를 확인합니다:

$ ubuntu-drivers devices
== /sys/devices/pci0000:00/0000:00:03.1/0000:08:00.0 ==
modalias : pci:v000010DEd00001C03sv000019DAsd00001438bc03sc00i00
vendor   : NVIDIA Corporation
model    : GP106 [GeForce GTX 1060 6GB]
driver   : nvidia-driver-410 - third-party free
driver   : nvidia-driver-440 - third-party free recommended
driver   : nvidia-driver-430 - distro non-free
driver   : nvidia-driver-390 - distro non-free
driver   : nvidia-driver-435 - distro non-free
driver   : xserver-xorg-video-nouveau - distro free builtin

 

권장되는 드라이버를 설치합니다(여기서는 440):

$ sudo apt-get install --no-install-recommends nvidia-driver-440

 

STEP 3: 시스템 재부팅

드라이버 설치 후 재부팅이 필요합니다:

$ sudo reboot now

 

STEP 4: CUDA 10.0 및 cuDNN 7.6.2 설치

$ sudo apt-get install --no-install-recommends cuda-10-0 libcudnn7=7.6.2.24-1+cuda10.0 libcudnn7-dev=7.6.2.24-1+cuda10.0

 

STEP 5: TensorRT 설치

$ sudo apt-get install -y --no-install-recommends libnvinfer5=5.1.5-1+cuda10.0 libnvinfer-dev=5.1.5-1+cuda10.0
$ sudo reboot now

 

STEP 6: 설치 확인

시스템 재부팅 후, NVIDIA 드라이버와 CUDA 설치를 확인합니다:

$ nvidia-smi

 

nvidia-smi 명령어가 CUDA 10.2를 표시하더라도 걱정하지 마세요. 실제 CUDA 컴파일러의 버전을 확인해봅시다:

$ nvcc --version

nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2018 NVIDIA Corporation
Built on Sat_Aug_25_21:08:01_CDT_2018
Cuda compilation tools, release 10.0, V10.0.130

 

CUDA 10.0이 정상적으로 설치된 것을 확인할 수 있습니다.

환경 변수 설정하기

CUDA 관련 경로를 시스템에 등록해야 합니다:

$ sudo vi ~/.bashrc

 

파일 끝에 다음 내용을 추가합니다:

## CUDA-10.0 PATH

export PATH=/usr/local/cuda-10.0/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-10.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-10.0/extras/CUPTI/lib64:$LD_LIBRARY_PATH

 

변경사항을 적용합니다:

$ sudo source ~/.bashrc

 

문제 해결: CUDA 버전 충돌

가끔 CUDA 10.2가 자동으로 설치되어 의도하지 않은 버전 충돌이 발생할 수 있습니다. 이런 경우 CUDA 다운그레이드 가이드를 참고하시기 바랍니다.

마무리

이제 TensorFlow 2.0을 위한 기본 환경이 준비되었습니다! 다음 포스팅에서는 SSH 설정, Anaconda 설치, Jupyter Notebook 구성에 대해 알아보겠습니다.

게임용 PC를 딥러닝 서버로 전환하는 과정에서 가장 중요한 것은 버전 호환성입니다. TensorFlow, CUDA, cuDNN 간의 정확한 버전 매칭이 성공적인 설치와 실행의 핵심이라는 점을 명심하세요.

참고 자료


이 글이 도움이 되셨나요?

댓글로 질문이나 의견을 남겨주시면 빠르게 답변해 드리겠습니다. 더 많은 딥러닝 관련 튜토리얼과 팁은 구독과 공유를 통해 계속 받아보실 수 있습니다!

 

 

 

반응형