# 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에서 토글 가능하도록 구현 - 프로그램 재시작 없이 전환 가능