[딥러닝] 윈도우 CUDA, cuDNN 설치하여 GPU 활용하기 | dasfef

2023.06.13

개인 기록용 입니다 :) 오타, 수정 등 피드백 환영


[ 내 컴퓨터 사양 ] CPU : AMD Ryzen 9 5900X RAM : 32GB Windows x64 GPU : NVIDIA GeForce 3060 Ti 본인 사양에 맞는 CUDA 확인하기 WIKIPEDIA에서 CUDA 버전 확인하기 필자는 기존에 진행해봤던 사양이 있어 해당 사양으로 진행 예정입니다 NVIDIA 그래픽카드 드라이버 설치 CUDA 11.2.2 버전 cuDNN 8.1.1 버전 파일 옮기기 CUDA 는 기본 설정으로 모두 설치 cuDNN 은 알집을 풀고 안에 있는 cuda 폴더를 CUDA가 설치된 폴더로 복사 붙여넣기 진행 default 설정으로 CUDA를 설치했다면 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2​ 위의 경로로 설치가 진행됐을텐데 cuDNN 알집을 풀고 보이는 폴더들이 해당 폴더의 폴더들과 이름이 같은 것을 알 수 있다 cuDNN 의 파일들을 복사하여 CUDA 폴더에 맞게 붙여넣어주면 된다 cuda\bin 의 *.dll 파일을 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\bin 로 cuda\include 의 *.h 파일을 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\include 로 ​ cuda\lib\x64 의 *.lib 파일을 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\lib\x64 로 환경변수 확인 검색 → "시스템 환경 변수 편집" → "환경 변수" cmd 창에서 다음 코드 입력 후 실행 결과 확인 "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\extras\demo_suite\deviceQuery.exe" 최하단 Result = PASS 라고 나오면 성공 CUDA Driver Version = 12.1 Runtime Version = 11.2 라고 다르게 나오는데 Driver Version 은 말그대로 NVIDIA Driver 로 설치된 버전 Runtime은 CUDA tool kit 에 의해 설치된 버전 필자는 NVIDIA Driver 가 기존에 있어 설치를 안했는데 다시 설치를 해보았다 conda 가상환경에서 테스트

conda 가상환경 내 위 라이브러리 설치 후 테스트 진행 vscode 에 연동하여 진행 from tensorflow.python.client import device_lib print(device_lib.list_local_devices()) ​ 해당 코드 작성 후 실행시 위와 같은 오류 발생 ​ # 오류발생시 pip install protobuf==3.20.* 이와 같이 protobuf 버전을 지정해서 설치해주자 이제 tensorflow 동작에 gpu가 잡히는지 테스트해보자 이렇게 GPU가 잡힌다면 성공!

만일 cmd 내에서 nvcc –version / nvidia-smi 두 명령어를 실행했을 때 CUDA, cuDNN 모두 잡히고 버전에도 이상이 없는데도 불구하고 GPU 인식이 안된다면 tensorflow 버전이 맞지 않을 가능성이 있다

이때 conda 환경에서 conda install tensorflow 를 했다면 conda list tensorflow, pip install tensorflow 를 했다면 pip list tensorflow 를 하여 나오는 tensorflow 버전을 확인한 후 맞지 않는 버전을 지우고 호환되는 버전으로 재설치 하면 다시 나타날 수 있으니 참고하자