모두야
Window에서 초기 GPU 이용하기 (CUDA,Anaconda) 본문
from tensorflow.python.client import device_lib
device_lib.list_local_devices()
왼쪽이 CPU만 나타나는 경우, 오른쪽은 GPU를 잡았을 경우의 사진이다.
GPU가 잘 잡히는지 확인하기 위해 위의 코드를 실행해 보았을 때,
GPU가 뜨지 않고 CPU만 나타난다면 아래와 같이 진행하여야 한다.
PC 환경
Window10 64-bits
GeForce RTX 3060 Laptop GPU
Python 3.7
Anaconda 4.9.2
CUDA Toolkin 11.1
cuDNN v8.0.5 for CUDA 11.0
0. 설치할 환경에 맞는 버전 확인하기
버전 확인 링크
tensorflow-gpu 2.4.0 버전에 맞게 설치할 예정이다.
1. Anaconda 설치
우선 3.8 버전으로 설치 후, 가상환경에서 파이썬 3.7 버전으로 설치할 예정이다.
두 가지 선택사항을 변경해주었다.
1) [All Users]를 선택해주었다. 현재 사용자만 이용하게 할건지, 전체 사용자가 사용할 수 있게 할 건지 선택하는 것인데 나는 관리자 권한에서도 자유롭게 사용하기 위해 [All users]를 선택해주었다.
2) 첫번째 박스인 [Add Anaconda3 to the system PATH environment variable]을 추가로 클릭해주었다.
시스템 변수 PATH에 파이썬을 설치한 경로로 설정해서, 파이썬 실행을 용이하게 해주는 것이다.
2.NVIDIA DRIVER 설치
컴퓨터 환경에 맞는 NVIDIA 드라이버를 설치한다. 확인하는 링크
cmd 창에서 nvidia-smi 명령을 실행 후, 아래와 같이 출력되면 nvidia 드라이버는 잘 설치된 것이다.
nvidia-smi
3. Cuda Toolkit 설치하기
0에서 확인한 내가 설치 할 tensorflow 버전에 해당하는 알맞은 버전을 설치해주어야 한다.
tensorflow-gpu=2.4.0에 해당하는, cuDNN=8.0 CUDA=11.0을 설치할 예정이다.
4. Visual Studio 설치하기
가장 최신 버전인 Visual Studio 2019를 설치하였다.
Community 2019 로 설치를 하였으며, 다운로드 후 로그인하여 이용할 수 있다.
> 참고 사이트에서는 모두 다운로드 받으라고 하였으나, GPU 찾는 과정에서 나는 크게 사용하는 부분이 없었다.
5. cuDNN 설치하기
cuDNN=8.0 CUDA=11.0 에 알맞는 cuDNN v8.0.5 for CUDA 11.0을 다운로드 하였다.
로그인 후 다운로드를 진행할 수 있다. 회원가입 과정은 간단하다. 구글 계정과도 연동 가능하다.
다운로드 후 압축 파일을 풀어준다.
폴더 옮기기
압축 파일을 풀게 되면 cuda 파일에 왼쪽 사진과 같이 4개의 파일이 있다.
4개의 파일을 복사하여 CUDA Toolkit 폴더에 옮겨줄 것이다. 주소는 대부분 오른쪽 사진과 같을 것이다.
압축 풀어준 cuda 폴더 -> C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.0 폴더
+ 환경 변수 맞추기
제어판 → 시스템 및 보안 → 고급 시스템 설정 → 환경 변수 로 이동하면
[USER에 대한 사용자 변수]에 [Path] 가 있다.
[편집]에 오른쪽 그림과 같이 3가지를 [새로만들기]를 통해 추가한다. 각 버전에 맞게 11.0 부분만 변경해주면 된다.
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.0\bin
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.0\lib
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.0\include
cmd 창에 명령어 입력하여 확인해보자!!
nvcc --version
오류 없이 여기까지 진행되었다면 거의 끝났다고 볼 수 있다.
6. 가상환경 구성하기
(Anadonda Prompt에서 실행)
cmd 창이 아닌, Anadonda Prompt에서 수행한다.
윈도우 검색창에서 검색 후 실행하면 된다.
처음 프롬프트 창을 열게 되면 (base) 환경으로 되어있을 것이다.
각 프로젝트 마다 사용되는 python이나 tensorflow, keras 등 다양한 버전에 충돌을 일으키지 않기 위해 가상환경을 만들어준다.
파이썬 3.7버전으로 새로 만드는 가상환경에 설치 해주었다.
conda create -n 가상환경이름 python=3.7
가상환경이 만들어졌는지 확인하기
conda info --envs
목록에 내가 만든 가상환경이름이 있다면 가상환경을 활성화시켜준다.
conda activate 가상환경이름
(base)로 시작한 부분이 (가상환경이름)으로 바뀌었을 것이다.
필요한 모듈을 설치해주려고 한다.
처음부터 tensorflow-gpu=2.4.0 버전을 설치하기 위해 모든 버전을 맞춰주었다.
pip install tensorflow-gpu==2.4.0
keras 설치, jupyter notebook 설치, 주피터와 연결할 ipykernel을 설치하였다.
pip install keras
pip install jupyter notebook
pip install ipykernel
주피터노트북에서 설치한 가상환경이 보이도록 연결해주어야한다.
python -m ipykernel install --user --name 가상환경이름
이후, 주피터 노트북을 실행시켜준다.
jupyter notebook
주피터 노트북에서 실행 도중 가상환경 커널을 변경해주고 싶다면, 목록에서 아래의 사진과 같이 변경해주면 된다.
7. 마지막 확인
해당 커널로 변경 후, 가장 처음에 오류가 났던 코드를 실행하였을 때 GPU가 뜬다면 성공이다!!!!!!
from tensorflow.python.client import device_lib
device_lib.list_local_devices()
CPU 뿐만 아니라, GPU까지 성공적으로 나타나는 것을 살펴볼 수 있었다. 끝!!!!!
처음 GPU 노트북을 구매 후, 사용하던 중 확인해보니 gpu를 활용하지 못하고 느리게 작동 되었다.
별도로 gpu 사용을 위해 설치를 해주어야 함을 깨닫고
Window에서 Anaconda를 활용해 CUDA 설치 후 tensorflow-gpu 사용을 하게 되었다.
이제는 정상적으로 gpu로 코드가 작성됨을 살펴보았다.
참고자료
https://chancoding.tistory.com/89
'study' 카테고리의 다른 글
BrokenPipeError: [Errno 32] Broken pipe (0) | 2021.11.23 |
---|---|
Ubuntu 18.04에서 Chrome 설치하기(+dpkg 에러 해결) (0) | 2021.08.22 |
처음보는 Django 연습하기 [2단계] (0) | 2021.08.18 |
처음 보는 Django 연습하기 [1단계] (0) | 2021.08.18 |