🚀 CUDA를 설치하여 GPU 사용하기
현재 오류는 실행하려는 모델이 GPU를 필요로 하지만, 현재 시스템에서 GPU를 사용할 수 없어서 발생한 에러.
PyTorch가 GPU를 인식하지 못해서 발생한 문제입니다.
이를 해결하려면 CUDA를 설치하고, PyTorch가 GPU를 올바르게 인식하도록 설정해야 합니다.
✅ 0. CUDA가 정상적으로 설치되었는지 확인
(venv2) PS C:\Users\007\Documents\TEAM3_GITHUB\AI> nvidia-smi
Mon Feb 17 15:05:06 2025
+---------------------------------------------------------------------------------------+
| NVIDIA-SMI 538.92 Driver Version: 538.92 CUDA Version: 12.2 |
|-----------------------------------------+----------------------+----------------------+
| GPU Name TCC/WDDM | Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap | Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|=========================================+======================+======================|
| 0 NVIDIA GeForce RTX 4090 ... WDDM | 00000000:01:00.0 On | N/A |
| N/A 48C P8 8W / 89W | 289MiB / 16376MiB | 10% Default |
| | | N/A |
+-----------------------------------------+----------------------+----------------------+
+---------------------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=======================================================================================|
+---------------------------------------------------------------------------------------+
(venv2) PS C:\Users\007\Documents\TEAM3_GITHUB\AI> nvidia-smi
Mon Feb 17 15:05:19 2025
+---------------------------------------------------------------------------------------+
| NVIDIA-SMI 538.92 Driver Version: 538.92 CUDA Version: 12.2 |
|-----------------------------------------+----------------------+----------------------+
| GPU Name TCC/WDDM | Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap | Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|=========================================+======================+======================|
| 0 NVIDIA GeForce RTX 4090 ... WDDM | 00000000:01:00.0 On | N/A |
| N/A 49C P8 8W / 86W | 289MiB / 16376MiB | 8% Default |
| | | N/A |
+-----------------------------------------+----------------------+----------------------+
+---------------------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=======================================================================================|
+---------------------------------------------------------------------------------------+
현재 nvidia-smi 명령어를 실행한 결과 **GPU(GeForce RTX 4090)**와 **CUDA 버전(12.2)**이 표시되고 있습니다.
🚀 결론: CUDA가 정상적으로 설치되어 있습니다! 🎉
그러나 PyTorch가 이 CUDA를 제대로 인식하는지 확인해야 합니다.
👉만약, CUDA가 설치되어 있지 않다면, CUDA 설치하기.
🔍 1. PyTorch가 CUDA를 인식하는지 확인
아래 명령어를 실행하여 PyTorch가 GPU를 인식하는지 확인하세요.
python -c "import torch; print(torch.cuda.is_available())"
👉 출력 결과:
- True → PyTorch가 CUDA를 정상적으로 인식 ✅
- False → PyTorch가 CUDA를 인식하지 못함 ❌ (아래 해결 방법 참고)
🔥 2. PyTorch가 CUDA를 인식하지 못할 경우 해결 방법
만약 **torch.cuda.is_available()이 False**를 반환하면, PyTorch가 CPU 버전으로 설치되어 있기 때문입니다.
1️⃣ 현재 설치된 PyTorch 버전 확인
python -c "import torch; print(torch.__version__)"
👉 버전이 +cpu가 포함되어 있다면 → CUDA 버전이 아닌 CPU 버전임!
2.6.0+cpu ❌ (잘못된 버전)
해결 방법: PyTorch를 CUDA 지원 버전으로 다시 설치해야 합니다.
2️⃣ PyTorch GPU 버전 재설치
👉 현재 CUDA 버전이 12.2이므로, 아래 명령어를 실행하세요.
pip uninstall torch -y pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121
- cu121 → CUDA 12.1을 지원하는 PyTorch 버전입니다.
- CUDA 11.8을 사용한다면:
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
👉 설치 완료 후 다시 확인:
python -c "import torch; print(torch.cuda.is_available())"
- True가 나오면 정상적으로 GPU를 사용할 수 있습니다. ✅
- False가 나오면 추가 설정이 필요합니다. ❌
✅ (선택사항) 3. accelerate 설정을 GPU 모드로 변경
PyTorch가 GPU를 인식하면, accelerate도 GPU를 사용할 수 있도록 설정해야 합니다.
accelerate config
👉 설정 마법사에서 아래 옵션을 선택하세요.
- "Which compute resource should be used?" → CUDA
- "Do you want to offload to CPU?" → No
- "What is the maximum GPU memory available in GB?" → 16GB (4090이면 24GB일 수도 있음)
설정 완료 후 다시 실행:
python app/models/model_main.py
'개발 Error' 카테고리의 다른 글
[GitHub] 작성한 코드를 다른 브랜치로 이동하기, Can't automatically merge (0) | 2025.02.17 |
---|---|
[GitHub] Git에서 최신 내용을 가져오면서, 로컬에서 수정하던 코드와 병합 (0) | 2025.02.17 |
pip 설치 했는데도, ModuleNotFoundError (0) | 2025.02.17 |
[ChromeDriver] 설치 (0) | 2025.02.14 |
[GitHub] 새 브랜치 checkout 에러 ; error: pathspec '새_브랜치' did not match any file(s) known to git (0) | 2025.02.13 |