PyTorch CUDA 드라이버 버전 불일치 해결법
PyTorch CUDA 드라이버 버전 불일치 해결법
AWS EC2환경에서 PyTorch 버전
내가 프로젝트 시 쓰던 가상환경 Project에 PyTorch가 설치되어있었고 모델을 돌리는데
1
torch.cuda.is_available()
이 코드가 False로 떴었다.
AWS EC2 인스턴스를 확인해보니 g4dn.xlarge로 GPU를 사용할 수 있는 버전이였다.
일단, NVIDIA 드라이버와 CUDA가 정상적으로 설치되었는지 확인해봤다.
1
nvidia-smi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 510.47.03 Driver Version: 510.47.03 CUDA Version: 11.6 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|===============================+======================+======================|
| 0 Tesla T4 On | 00000000:00:1E.0 Off | 0 |
| N/A 28C P8 13W / 70W | 0MiB / 15360MiB | 0% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=============================================================================|
| No running processes found |
+-----------------------------------------------------------------------------+
1
nvcc --version
1
2
3
4
5
6
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2022 NVIDIA Corporation
Built on Thu_Feb_10_18:23:41_PST_2022
Cuda compilation tools, release 11.6, V11.6.112
Build cuda_11.6.r11.6/compiler.30978841_0
확인해보니 CUDA 버전은 11.6이고 PyTorch 버전은 2.4.1 이였다.
1
pip show torch
1
2
3
4
5
6
7
Name: torch
Version: 2.4.1
Summary: Tensors and Dynamic neural networks in Python with strong GPU acceleration
Home-page: https://pytorch.org/
Author: PyTorch Team
Author-email: packages@pytorch.org
License: BSD-3
PyTorch 공식 사이트에서 확인해보니 PyTorch와 CUDA가 버전이 호환되지 않아서 발생하는 문제였다.
그래서 다시 PyTorch를 uninstall하고 CUDA와 호환되는 버전으로 재설치하였다.
1
2
pip uninstall torch
pip install torch --index-url https://download.pytorch.org/whl/cu116
다시 설치하고 나서 확인해보니 성공적으로 GPU를 사용하여 모델을 돌릴 수 있게 되었다.
1
2
device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
device
1
device(type='cuda')
이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.