누구나 따라할 수 있는 PyTorch, TF GPU 설치 완벽가이드

MinGyu Park·2022년 3월 5일
1

딥러닝

목록 보기
1/1
post-thumbnail

local(데스크탑에 직접 설치하면서 정리함)

순서: 변경할 수 없는 조건들 먼저 확인하자

진행 환경

  • RTX 2060 Super
  • cpu : AMD Ryzen 7 2700X
  • 운영체제 : Window 10

1. 그래픽 카드 확인

1-A. 그래픽 카드(GPU) 이름 확인

  1. 그래픽 카드 이름은 윈도우 우클릭

  1. 작업관리자 -> 자세히
  1. 성능 탭 -> GPU 선택

2. 내 GPU의 CUDA 계산 능력 확인

Compute capability 확인

필요하다면 이 시점에서, 사용하려는 라이브러리의 설치 요구사항(requirement)을 확인하자

라이브러리 = git clone, pip install 등으로 설치한 것들

  • 확인 방법
    구글에 설치하려는 라이브러리의 이름 검색 -> 라이브러리를 배포하는 github link 클릭 -> requirement(설치 요구사항) 확인

2-A. Compute capability 확인하기

Compute capability : 7.5

ctrl+F 로 그래픽 카드 이름 검색 추천

2-B. Compute capability에 맞는 CUDA 버전 확인

Compute capability : 7.5가 해당되는 범위

  • 3.0 - 7.5 : CUDA SDK 10.0 – 10.2
  • 3.5 - 8.0 : CUDA SDK 11.0
  • 3.5 - 8.6 : CUDA SDK 11.1 - 11.6

3. 설치할 CUDA, PyTorch, Tensorflow의 버전 결정하기

3-A : tensorsflow 버전 확인

  • tensorflow 버전 확인 : 공식 문서의 GPU에서 cuDNN, CUDA 버전 확인

  • 확인 할 것

  1. tensorflow의 버전
  2. Python 버전
  3. cuDNN 버전
  4. CUDA 버전

4가지 버전 모두 맞아야 한다.

  • python 버전은 anaconda 가상환경 설치 할 때 필요

최신버전 tensorflow_gpu 2.7.0을 기준으로 진행한다.

3-B : PyTorch 버전 확인

  • torch 버전 확인 : 공식 문서에서 맨 아래로 스크롤 INSTALL PYTORCH까지

Run this Command는 local이 아닌 가상환경에 CUDA를 설치 할 때 사용

  • local과 anaconda 가상환경에 둘다 CUDA를 설치하는 경우, anaconda 가상환경의 CUDA가 적용됨

  • tensorflow_gpu 최신버전이 CUDA 11.2를 지원한다.

  • 하지만 PyTorch는 CUDA 11.3을 지원한다.

  • CUDA 11.2를 통해 설치 진행

  • 혹시 11.2로 torch의 GPU사용이 불가능한 경우는 2가지 가상환경에 tensorflow gpu, torch를 따로 설치하고 관리하기를 바란다.

아니면 구글링해서 본인의 하드웨어(GPU,CPU)에 맞는 방법을 찾거나

4. CUDA, cuDNN 다운받기

4-A. CUDA 다운로드

CUDA 버전 선택하기 위헤서

하드웨어와 CUDA 버전 체크

대부분 문제가 생기지 않는 부분

그래픽 드라이버와 CUDA 버전 체크

4-B.에서 nvidia가 권장하는 그래픽 드라이버 버전을 선택하면 된다.

다른 버전을 설치해야하면 아래 문서, 사진 참고

CUDA 버전별 저장소에서 설치

  • 버전 네이밍에 대한 이해는 이곳에서

버전이 많다...
11.2로 시작하는 버전을 확인해보자

  • 11.2.0 클릭 -> 자신의 운영체제 선택(window)

  • 클릭 할 수록 선택지가 계속 나온다.

version = 윈도우 10 선택!

  • window 11도 가능하다는 말이 있지만 직접 확인하지 않음. (댓글로 알려주세요.)

4-B. 그래픽 카드 드라이버 버전 선택

11.2.0과 그래픽 카드 드라이버 버전 460.89가 맞는다.

  • 현재 그래픽 카드 버전 확인
  • sol 1. 명령프롬포트에서 nvidia-smi 입력
    프로그래밍 관련해서 환경 설정 할 때는 기본적으로 관리자 권한으로 실행 추천

각 용어에 대한 설명

  • sol 2. 바탕화면 -> 우클릭 -> NVIDIA 제어판

  • 도움말 -> 시스템 정보

  • 여기서 그래픽 카드 정보 + 드라이버 버전 모두 확인 가능

필요 드라이버 버전 확인

[주관적인 의견]
exe network 보다 exe local을 추천
exe network는 왠지 설치가 느린 것 같다.
실시간 다운로드가 더 느린가?

현재 드라이버 버전이 권장 버전(위 사진의 빨간 상자)과 다르다면, 제거 후 버전에 맞는 드라이버 설치

적절히 선택 후 검색!

우리가 필요로 하는 460.89 버전이 없다.
조건을 변경하고 다시 검색

찾았다!!

안나올 경우 구글링!!

다운로드!!

최신 버전보다 우리의 의도대로 동작하는 버전을 선택하는 것이 좋다.

그래서 win 11 업데이트도 안하고 있다.

4-C. cuDNN 다운로드

cuDNN Archive에서 ctrl + F로 CUDA 버전 검색(11.2)

11.2를 위한 버전은 2가지

11번대 모두 호환되는 11.X 버전은 2가지

11.2를 위한 2가지 버전 : cuDNN 8.1
11.X를 위한 2가지 버전 : cuDNN 8.2

  • 3-A에서 tensorflow 공식 문서에서 설치 목표(2.7.0)의 cuDNN 버전은 8.1이다.
    - 11.2를 위한 2가지 버전 중 1가지를 선택해야한다.

  • 11.X보단 11.2만을 위한 버전이 더 좋아보인다.
    너만을 위한 버전

11.x버전으로 하신분은 댓글로 알려주세요.

  • 아래 버전을 눌러서 window 선택

  • 회원가입 + 로그인 필요

다운 완료

  • 아래 버전(cuDNN v8.1.0 (January 26th, 2021), for CUDA 11.0,11.1 and 11.2)의 cuDNN 버전 : v8.1.0.77

  • 위에 버전(cuDNNv8.1.1 (Feburary 26th, 2021), for CUDA 11.0,11.1 and 11.2)의 cuDNN 버전 : v8.1.1.33

참고 : 설치된 cuDNN버전 확인

명령 프롬프트 창(게시글 초반 부분 참고)에 nvcc -V

다운로드 완료 사진

  • cudnn은 1가지만 선택하면 된다.

5. 그래픽 드라이버, CUDA, cuDNN 설치

그래픽 드라이버 -> CUDA -> cuDNN 순서로 설치해야한다.

그래픽 드라이버, CUDA, cuDNN가 끝날 때마다 컴퓨터 재시작 추천

그래픽 드라이버, CUDA, cuDNN (3개) 설치 = 3번 재시작

귀찮음이 동작하지 않는 것보다 낫다.

설치 여부 확인

설치 되어있는 모습

5-A-1. 그래픽 드라이버 클린 제거

CUDA 제거는 앱 및 기능에서 5.에서 확인
그래픽 카드 제거는 안전모드+DDU로
cuDNN은 설치 폴더로 찾아가서 직접 제거

  1. DDU 다운로드 공식 홈페이지 - 클린 제거 프로그램
    그래픽 드라이버는 메인보드, cpu, os 등 깊숙한 부분에 영향을 미친다. DDU 툴은 그런 영향을 완전히 없애고 잔존 파일(제거되지 않고 남은 파일들)까지 모두 제거한다.
    (클린 제거, 클린 설치라고 함.)

굳이 이렇게 까지? 싶으면 건너 뛰어도 된다. 하지만 만약의 에러 발생 확률을 줄이기 위해서는 정석대로 하는 것이 가장 안전하다.

  • 안전모드 -> DDU로 그래픽 드라이버 제거 -> 재부팅 -> 드라이버 설치

혹은 작성 시점의 최신버전, DDU20v18.0.4.9의 다운로드 링크

  1. 안전모드 에서 DDU 를 이용해 제거하기

5-A-2. 그래픽 드라이버 설치

설치는 예 / 다음 만 누르기

5-B. CUDA 설치

설치는 예 / 다음 만 누르기

5-C. cuDNN 설치

  1. 다운 받은 파일 압축 해제
  2. cuDNN 압축 해제 폴더 속에 있는 cuda 폴더로 이동
    압축 해제한 cuDNN의 속에 있는
  • bin, include, lib (txt는 없어도, 있어도 됨)복사
  1. CUDA 설치 경로 찾아가기

    C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA

3-1. 설치한 CUDA 버전 폴더로

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2

  1. cuDNN의 bin, include, lib을 CUDA에 복사, 붙여넣기

5-C-1. 환경 변수 등록

  • 시스템 환경 변수 편집 열기
  • 환경 변수 선택

  • 사용자 변수의 Path 더블 클릭

없으면 새로 만들기!

  • 환경 변수 추가 후 확인

v11.2 대신 현재 CUDA 버전 사용

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\bin
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\include
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\lib

6. PyTorch & Tensorflow 설치 w. anaconda

6-A. Anaconda 가상환경 만들기

아나콘다 가상환경에 설치하는 이유
특정한 python 버전 (본 글에서는 3.9)를 설치하기 위해서

가상환경이 아닌 local(데스크탑, 서버)에 설치해도 된다.

  • anaconda 프롬프트 -> 관리자 권한으로 실행!!!

conda create --name torch python=3.9

  • torch 대신 원하는 가상환경 이름 넣기
  • 기본 환경(base) -> 방금 만든 가상환경(torch)로 이동

6-B. PyTorch 설치

cudatoolkit 부분만 제거(이미 local에 설치 했으므로)

conda install pytorch torchvision torchaudio -c pytorch

주의
현재 활성화된 가상환경 (torch)에 설치됨

6-B-1. 설치 확인

명령 프롬프트에서 python이라고 입력하면, python ide가 실행된다.

python

import torch
torch.cuda.is_available()

6-C Tensorflow_gpu 설치

6-C-1. Microsoft Visual C++

  • tensorflow는 Microsoft Visual C++를 설치해줘야한다.

  • tensorflow 공식 문서에서 차례대로 진행하자.

6-C-2. Tensorflow_gpu 설치

3-A.에서 말했던 것처럼 작성 시점의 최신버전 2.7.0 설치

pip install tensorflow-gpu==2.7.0

  • conda와 pip의 차이
    link1 , link2
  • anaconda에서 conda 명령어로 설치한 라이브러리, 패키지간의 종속성을 관리해준다.
  • pip은 관리 없이, 독립적으로 설치

6-C-3. 설치 확인

명령 프롬프트에서 python이라고 입력하면, python ide가 실행된다.

python

from tensorflow.python.client import device_lib

print(device_lib.list_local_devices())

마치며

  • torch, tensorflow 모두 gpu 설치 완료한 모습

글을 다시 읽어보니 이런 생각이 들었다.

누구나 따라할 수 있을까?

tensorflow 혹은 torch 같은 딥러닝 프레임워크에서 local에 gpu를 설치하는 것은 인터넷에 수많은 자료가 있지만, 왠지 모르게 실패하는 경우가 많았다. 입문할 때 겪은 경험은 의지를 꺾어서 아주 치명적이다.

그래서 누구나 성공하는 방법을 쓰고 싶어서,

  • 될 수 있는 한 자세히 조사하고
  • 최대한 주석을 추가한 스크린샷을 많이 넣고
  • 최대한 안정적인 방법(안전모드에서 클린 제거, 설치)을 서술했다.

하지만 글이 지나치게 방대하고, 절차가 많아서 이 글로 인해서

tensorflow, torch를 local에 설치하는 것은 어렵구나

라고 생각할 까봐 걱정이된다.

훨씬 간편한 방법 들이 있다.

  1. conda 명령어로 cudatoolkit을 가상환경에 까는 방법
  2. colab 이용
  3. kaggle 이용

특히 colab, kaggle의 경우 무료 버전으로 충분히 연습, 실습을 할 수 있다. 클라우드 기반이라 어느 장소, 어느 기기라도 코드가 저장되니 편하다. 처음하는 사람은 이 글에서 설명한 방법보다 colab, kaggle을 이용하는 것을 강력 추천한다.

profile
Auto Encoder, Computer Vision

0개의 댓글