일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 비교연산자
- cuDNN
- tensorflow
- 패스트캠퍼스혁펜하임
- precision
- pytorch
- 1로만들기
- C++
- c++ 기초
- AI강의
- 9095
- C++ 백준
- 혁펜하임AI
- 백준1026
- 혁펜하임
- CUDA
- 백준C++
- 백준
- C++ 함수
- 1463
- AIDEEPDIVE
- 백준1463
- for문
- 조건문
- 혁펜하임강의
- 혁펜하임강의후기
- C++ 공백 입력
- 백준9095
- 반복문
- 패스트캠퍼스
- Today
- Total
코딩하는 덕구 🐶
104. 윈도우 Tensorflow, Pytorch 와 호환되는 CUDA, cuDNN 설치하는 법 (같은 CUDA버전을 통해 tensorflow, pytorch를 사용하기) 본문
104. 윈도우 Tensorflow, Pytorch 와 호환되는 CUDA, cuDNN 설치하는 법 (같은 CUDA버전을 통해 tensorflow, pytorch를 사용하기)
코딩하는 덕구 🐶 2022. 12. 27. 00:57안녕하세요. 기계학습을 열심히 공부중인 덕구입니다.
링크만 필요하신 분들을 위해 먼저 링크부터 드리겠습니다.
tensorflow-gpu 버전에 호환되는 cuda, cuDNN 버전 확인하기
https://www.tensorflow.org/install/source#tested_build_configurations
Pytorch 버전에 호환되는 cuda, cuDNN 버전 확인하기
https://pytorch.org/ (최신 Pytorch 버전)
https://pytorch.org/get-started/previous-versions/ (이전 Pytorch버전)
CUDA 설치하기
https://developer.nvidia.com/cuda-downloads?target_os=Windows&target_arch=x86_64&target_version=11 (최신버전)
https://developer.nvidia.com/cuda-toolkit-archive (이전버전)
cuDNN 설치하기 (회원가입이 필요합니다.) https://developer.nvidia.com/rdp/cudnn-download#a-collapse714-92
https://developer.nvidia.com/rdp/cudnn-archive (이전버전)
윈도우에서 그래픽카드는 있지만 Tensorflow, Pytorch에서 GPU(그래픽카드)로 연산하지 못하고
CPU를 쓰는 일이 반복되서 확실하게 정리하고 갑니다.
그래픽카드 RTX3060 기준으로
CUDA==11.2, cuDNN==8.1, tensorflow-gpu==2.10.0, torch==1.7.1+cu110, torchvision==0.8.2+cu110 으로 버전을 맞추면
tensorflow, pytorch 에서 GPU를 정상적으로 사용할 수 있습니다.
즉 터미널에서(CUDA, cuDNN 설치 후)
pip install tensorflow-gpu==2.10.0
pip install torch==1.7.1+cu110 torchvision==0.8.2+cu110 -f https://download.pytorch.org/whl/torch_stable.html
를 입력하시면 됩니다.
만약 위와 같은 방법으로 해결이 안되시거나 다른 사양의 그래픽카드라면
아래의 3가지 정리를 읽고 환경을 구성하시면 시행착오를 줄일 수 있습니다.
1. Tensorflow, Pytorch 각각에 맞는 버전인 CUDA(Toolkit)과 cuDNN (딥러닝 가속화 프레임워크)이
온전히 설치되어 있어야 합니다. 버전이 맞지않으면 그래픽카드를 사용할 수 없습니다.
2. Tensorflow, Pytorch 각각은 CUDA, cuDNN 호환 버전이 다를 수 있습니다.
(사실 tensorflow가 최신버전의 CUDA를 지원하지 않습니다.)
예를들어 한 CUDA, cuDNN 버전에서는 tensorflow만 호환 될 수도 있고,
반대로 Pytorch만 호환 될 수도 있습니다.
기계학습에서 Tensorflow, Pytorch 둘 중 하나만 쓰는 경우는 거의 없으므로
그냥 한번에 두 라이브러리에 공통적으로 호환되는 CUDA, cuDNN 버전을 찾아 설치하는게 가장 효율적입니다.
즉
Tensorflow의 버전에 에 호환되는 CUDA, cuDNN 버전을 체크하고,
해당 CUDA, cuDNN의 버전에 호환되는 Pytorch 버전이 있는지 확인 후
어떤 버전의 Python, Tensorflow, Pytorch, CUDA, cuDNN을 설치할지 정리해놓고 하나씩 설치하는게 제일 좋습니다.
3. 기존에 설치되어있던 Tensorflow, Pytorch, CUDA, cuDNN를 꼭 지우고 설치를 시작하는 것을 추천합니다.
다음은 tensorflow, Pytorch에서 GPU 사용하기 위한 환경설정 방법입니다.
진행 순서대로 정리 해놓았습니다.
기존에 설치되어 있던 Tensorflow, Pytorch, CUDA, cuDNN 삭제하기
먼저 본인이 사용하는 terminal에서 (보통 anaconda) tensorflow, tensorflow-gpu, pytorch를 삭제합니다.
터미널에서 순서대로 하나씩 입력하시면 됩니다.
1. tensorflow, tensorflow-gpu, pytorch 삭제하기
pip uninstall pytorch
pip uninstall tensorflow
pip uninstall tensorflow-gpu
conda uninstall pytorch
conda uninstall tensorflow
conda uninstall tensorflow-gpu
아나콘다 캐시파일 삭제하기
conda clean -a

위와 같이 yes or no 가 나오게 되는데 y를 입력하시고 진행하시면 됩니다.
2. CUDA, cuDNN 삭제하기

제어판 -> 프로그램 추가/제거 에서 nvidia 로 시작되는것들 다 삭제하시면 됩니다.
삭제하는 과정에서 재부팅이 필요합니다.
(추후에 새로운 CUDA 버전으로 재설치)
3. cuDNN 삭제하기 (CUDA 잔여파일 삭제)
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA 의 경로에 들어가셔서

아래와 같은 폴더들을 모두 삭제하시면 됩니다.
축하합니다. 기존에 있던 Tensorflow, Pytorch, CUDA, cuDNN 삭제가 완료 되었습니다.
다음은 Tensorflow, Pytorch, CUDA, cuDNN를 버전 확인법, 설치 방법을 소개 해드리겠습니다.
지금부터 윈도우 기준 Tensorflow, Pytorch 와 호환되는 CUDA, cuDNN 버전 확인하는 방법을 소개드리겠습니다.
호환되는 버전을 메모하신 후 하나씩 설치하시면 됩니다.
tensorflow-gpu cuda, cuDNN 버전 확인하기 https://www.tensorflow.org/install/source#tested_build_configurations
위 링크에 들어가시면 아래와 같은 표가 있는데요. tensorflow 버전에 맞는 cuDNN, 쿠다 버전을 확인하실 수 있습니다.
소스에서 빌드 | TensorFlow
Check out sessions from the WiML Symposium covering diffusion models with KerasCV, on-device ML, and more. Watch on demand 이 페이지는 Cloud Translation API를 통해 번역되었습니다. Switch to English 소스에서 빌드 컬렉션을 사용해
www.tensorflow.org

Pytorch cuda, cuDNN 버전 확인하기
https://pytorch.org/ (최신 Pytorch 버전)
https://pytorch.org/get-started/previous-versions/ (이전 Pytorch버전)
먼저 이 사이트에 들어가면 최신 버전의 Pytorch 와 호환되는 CUDA 버전을 소개하고 있습니다.
보시다시피, tensorflow 는 CUDA 11.2까지 지원하는 반면 Pytorch는 CUDA 11.7 까지 지원하고 있죠.
이렇게 tensorflow, pytorch를 최신버전으로만 설치하면 같은 버전의 CUDA로는 동시에 사용할 수 없습니다.
즉 같은 CUDA버전을 통해 tensorflow, pytorch를 사용하려면
이전버전의 Pytorch가 필요합니다.
사이트에 들어가신 후 install previous versions of PyTorch를 클릭하시거나
https://pytorch.org/get-started/previous-versions/
위 링크를 통해 옛날 CUDA 버전과 호환되는 Pytorch 버전을 확인하실 수 있습니다.

CUDA 설치하기 (GPU 성능에 알맞는 CUDA버전 설치 방법은 추후에 포스팅 하겠습니다.)
https://developer.nvidia.com/cuda-downloads?target_os=Windows&target_arch=x86_64&target_version=11
이전 버전의 CUDA 설치하기
https://developer.nvidia.com/cuda-toolkit-archive
터미널에서 tensorflow, torch 설치 명령어 (마지막 숫자는 알맞은 버전으로 바꾸셔야 됩니다.)
pip install tensorflow-gpu==2.10.0
pip install torch==1.7.1
혹은
conda install tensorflow-gpu==2.10.0
conda install torch==1.7.1
를 입력하시면 됩니다.
cuDNN 설치하기 (회원가입이 필요합니다.) https://developer.nvidia.com/rdp/cudnn-download#a-collapse714-92
https://developer.nvidia.com/rdp/cudnn-archive (이전버전)
1. 링크에 접속해 회원가입 후 버전을 선택하여 Zip 파일을 다운받습니다.
2. 압축을 풉니다.

위와 같은 파일들이 존재합니다.
3. 압출을 풀어서 나온 폴더 안의 파일들을
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA 경로의 bin, lib, include 폴더 안에 각각 붙여넣기 해줍니다.

여기까지가
윈도우 Tensorflow, Pytorch 와 호환되는 CUDA, cuDNN 설치하는 법 입니다.
이제 tensorflow, pytorch에서 GPU가 정상적으로 사용 가능한지 jupyter notebook을 통해 확인해보겠습니다.
tensorflow에서 GPU가 사용중인지 확인하기
from tensorflow.python.client import device_lib
print(device_lib.list_local_devices())

아래와 같이 GPU 기기가 잡힌다면 성공입니다.
다음은 파이토치에서 GPU가 사용중인지 확인해보겠습니다.
Pytorch에서 GPU가 사용중인지 확인하기
import torch
print(torch.cuda.is_available())

아래와 같이 True라고 출력이 되면 성공입니다.
복잡한 설정 마치시느라 고생 많으셨습니다.
제 글이 다른분들의 시행착오를 줄일 수 있다면 좋겠습니다.
'알고리즘 문제 풀이' 카테고리의 다른 글
54. C++ 백준 1463번 자세한 설명 (0) | 2022.12.28 |
---|---|
53. Python 백준 1463 번 자세한 설명 (0) | 2022.12.28 |
103. selection sort 선택 정렬 (0) | 2022.02.15 |
102. 삽입 정렬 (0) | 2022.02.15 |
52. C++ 백준 2292 번 벌집 (1) | 2022.01.28 |