AutoPercenty3/CUDNN_버전_문제_빠른_해결.md

147 lines
3.2 KiB
Markdown

# CUDNN 버전 불일치 문제 - 빠른 해결 방법
## 문제 상황
- 설치된 CUDNN: **9.12** (`cudnn64_9.dll`)
- PaddlePaddle 요구: **8.x** (`cudnn64_8.dll`)
- 오류: `cudnn64_8.dll을 찾을 수 없습니다`
---
## ⚡ 당장 사용하기 (CPU 모드)
### 방법 1: 설정 파일에 추가 (권장)
프로그램의 설정 파일(또는 toggle_states를 관리하는 곳)에 다음 추가:
```python
toggle_states = {
# ... 기존 설정들 ...
'force_cpu_ocr': True, # ← 이 한 줄 추가!
# ... 나머지 설정들 ...
}
```
### 방법 2: 환경 변수로 GPU 비활성화
프로그램 실행 전에 명령어 실행:
**Windows (CMD):**
```cmd
set CUDA_VISIBLE_DEVICES=
python main.py
```
**Windows (PowerShell):**
```powershell
$env:CUDA_VISIBLE_DEVICES=""
python main.py
```
**Linux/Mac:**
```bash
export CUDA_VISIBLE_DEVICES=
python main.py
```
### 방법 3: 코드에서 직접 강제 (임시)
`src/modules/ocr_module.py` 파일 14번째 줄 수정:
```python
# 변경 전:
def __init__(self, logger=None, base_dir=None, gpu_manager=None, force_cpu=False):
# 변경 후:
def __init__(self, logger=None, base_dir=None, gpu_manager=None, force_cpu=True):
```
---
## 🚀 GPU 사용하기 (CUDNN 8 설치)
### 1. CUDNN 8.9.7 다운로드
- 링크: https://developer.nvidia.com/cudnn
- CUDA 11.x용 CUDNN 8.9.7 선택
- NVIDIA 계정 로그인 필요
### 2. 설치 (Windows)
```
1. 다운로드한 zip 파일 압축 해제
2. 아래 파일들을 복사:
📁 CUDNN 압축 해제 폴더
├── bin/cudnn64_8.dll
├── include/*.h
└── lib/x64/*.lib
↓ 복사 →
📁 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.x\
├── bin/cudnn64_8.dll
├── include/*.h
└── lib/x64/*.lib
```
### 3. 환경 변수 확인
- PATH에 포함되어야 함:
```
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.x\bin
```
### 4. 프로그램 재시작
- `force_cpu_ocr: False` 설정 또는 제거
- GPU 가속 사용 가능!
---
## 📊 성능 비교
| 모드 | 처리 속도 | 설정 난이도 |
|------|----------|------------|
| **CPU** | ⭐⭐ (느림) | ⭐⭐⭐ (쉬움) |
| **GPU (CUDNN 8)** | ⭐⭐⭐⭐⭐ (빠름) | ⭐⭐ (보통) |
---
## ✅ 정상 작동 확인
프로그램 로그에서 다음 메시지 확인:
**CPU 모드:**
```
⚠️ OCR 모듈 CPU 강제 모드 (CUDNN 버전 불일치 회피)
✅ PaddleOCR CPU 모드 초기화 성공
```
**GPU 모드:**
```
OCR 모듈 CUDA 모드 활성화
✅ PaddleOCR GPU 모드 초기화 성공
```
---
## 💡 추천
- **개발/테스트**: CPU 모드 (설정 간단)
- **대량 처리**: GPU 모드 (CUDNN 8 설치 필요)
- **혼용**: CUDNN 8과 9 동시 설치 (다른 CUDA 버전 폴더에)
---
## 🔍 문제 해결
### "여전히 같은 오류가 발생해요"
1. 프로그램 완전 종료 후 재시작
2. Python 캐시 삭제: `__pycache__` 폴더 삭제
3. 환경 변수가 제대로 설정되었는지 확인
### "CPU 모드가 너무 느려요"
- CUDNN 8.x 설치 권장 (위 가이드 참고)
- 또는 배치 처리로 효율성 향상
### "GPU와 CPU를 상황에 따라 전환하고 싶어요"
- `force_cpu_ocr` 설정을 UI에서 토글 가능하도록 구현
- 프로그램 재시작 없이 전환 가능