반응형

Windows 에 CUDA 11.8과  cuDNN 8.7.0, Tensorflow를 설치하는 방법을 설명합니다.

 

Tensorflow 2.10까지만 윈도우에서 CUDA 사용이 가능합니다. CUDA를 사용해야 GPU 가속이 가능합니다. Tensorflow 2.10  상위 버전이 필요하다면 WSL2에서 Tensorflow를 사용해야 합니다.

 

WSL2에 CUDA 사용하는 Tensorflow 설치하는 방법

https://webnautes.tistory.com/1873



2023. 5. 7 최초작성

2024. 1. 3



별도로 NVIDIA CUDA 라이브러리를 설치하지 않고 conda를 사용하여 CUDA 라이브러리를 설치후 진행하려면 다음 포스트를 참고하세요.

Windows에 CUDA Toolkit 11.2 cuDNN 8.1.0 Tensorflow 2.10 설치하는 방법

https://webnautes.tistory.com/1875

 

 

0. 다음 링크에서 사용중인 NVIDIA 그래픽 카드에서 지원하는 버전을 확인합니다.

https://en.wikipedia.org/wiki/CUDA#Version_features_and_specifications

 

현재 사용중인 노트북에서 GTX 1660 Ti를 사용중이라서 compute capability 7.5입니다.

 




앞에서 언급한 링크에서 다시 확인해보면 compute capability 7.5 인경우 CUDA SDK 10.0 이후 버전을 사용할 수 있습니다. 

 



1. 다음 링크에서 CUDA 11.8를 다운로드할 수 있습니다.

  • Operating System 항목에서 Windows를 선택합니다. 
  • Version 항목에서 윈도우 10이면 10, 윈도우 11이면 11을 선택합니다.
  • Install Type에서 exe (local)을 선택합니다.

 

크롬에서 Download 버튼을 클릭해도 다운로드가 안되는 경우 Edge 웹브라우저에서 다시 시도해보면  다운로드가 됩니다. 

https://developer.nvidia.com/cuda-11-8-0-download-archive 



2. 다음 링크에서 CUDA 11.8을 위한 cuDNN 8.7.0을 다운로드합니다.  NVIDIA 웹사이트 계정이 있어야 다운로드 페이지로 이동할 수 있습니다. 

https://developer.nvidia.com/rdp/cudnn-download 

 



3. 다음 링크에서 NVIDIA 그래픽카드 드라이버를 다운로드합니다. 최신버전을 사용해야 CUDA 11 을 사용할 수 있습니다. 

https://www.nvidia.co.kr/Download/Find.aspx?lang=kr 

 

자신의 PC에 설치된 NVIDIA 그래픽 카드를 선택한 후, 검색을 클릭하면 다운로드 가능한 드라이버 목록이 보입니다.

NVIDIA Studio Driver와 Game Ready Driver 두가지 버전이 보이는데 다양한 프로그램에서 가속 기능을 사용할 수 있다고 해서 NVIDIA Studio Driver를 다운로드했습니다. 

 

 

 

4. 제어판 - 추가/삭제에서 NVIDIA를 검색하여 모두 삭제합니다. 그래픽 카드 드라이버도 최신 버전으로 다시 설치해야 하므로 삭제합니다. 

전부 삭제하지 않고 최신버전 그래픽 드라이버를 설치하면 패키지들이 업데이트가 됩니다. 이후 설치 날짜가 예전 설치 날짜로 남아있는 것만 검토하여 삭제해도 됩니다.

 

 



5. NVIDIA 그래픽 카드 드라이버를 먼저 설치합니다.



6. CUDA Toolkit를 설치합니다. 



7. cuDNN 8.7.0 을 설치합니다. cudnn-windows-x86_64-8.7.0.84_cuda11-archive.zip 압축을 풀어서 종류별로 CUDA Toolkit 디렉토리에 복사합니다. 

 

cuda\bin에 있는 *.dll 파일을 아래 경로로 복사

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\bin

 

cuda\include에 있는 *.h 파일을 아래 경로로 복사

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\include

 

cuda\lib\x64에 있는 *.lib 파일을 아래 경로로 복사

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\lib\x64



8. 시스템 환경변수에 다음이 자동으로 등록됩니다. 

 



9. 윈도우키 + R을 누르고 cmd를 명령 프롬프트를 실행한 후, 다음 명령을 실행합니다.

큰따옴표로 명령을 둘러싸야 실행이 됩니다.

"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\extras\demo_suite\deviceQuery.exe"

 

이상이 없다면 마지막에 다음처럼 PASS가 보입니다.

 



 nvcc로도 설치된 CUDA 버전을  확인합니다. 11.8이라고 보이면 정상입니다.

C:\Users\webnautes>nvcc --version

nvcc: NVIDIA (R) Cuda compiler driver

Copyright (c) 2005-2022 NVIDIA Corporation

Built on Wed_Sep_21_10:41:10_Pacific_Daylight_Time_2022

Cuda compilation tools, release 11.8, V11.8.89

Build cuda_11.8.r11.8/compiler.31833905_0



10.  개발환경으로 두가지 방법을 소개합니다. 



첫번째 방법은 다음 주소에서 Python을 다운로드하여 설치하고 이후 Visual Studio Code와 같이 사용하는 것입니다.

https://www.python.org/downloads/windows/  

 

다음 영상을 참고하여 개발환경을 구성하세요. 

https://youtu.be/e4n2VnhiI28



설치시 주의사항은 다음과 같습니다.

Tensorflow에서 CUDA를 사용하려면 Python 3.7 ~ 3.10 사이의 버전을 다운로드 해야 합니다.

Windows에서 CUDA를 사용할 수 있는 마지막 버전이 Tensorflow 2.10인데 Python 3.10 이하에서만 설치가능하기 때문입니다. 

 

 

Add Python ...  to PATH를 체크하고 설치를 진행하세요. 

 




두번쨰 방법은 Miniconda를 설치 후, Visual Studio Code와 같이 사용하는 것입니다. 

 

Visual Studio Code와 Miniconda를 사용한 Python 개발 환경 만들기( Windows, Ubuntu)

https://webnautes.tistory.com/1842




11. 명령 프롬프트에서 다음 명령으로 Tensorflow 2.10을 설치합니다.  글 작성 시점에 최신버전이 Tensorflow 2.12이지만 windows에서 GPU를 지원하는 마지막 Tensorflow 버전이 2.10이기 때문입니다. 

 

기존 설치된 텐서플로우와 충돌나지않고 버전을 지정하여 설치합니다.

pip install tensorflow==2.10 --force-reinstall




현재 설치가능한 tensorflow 버전을 모두 확인하려면 다음 명령을 사용하세요.

 

 C:\Users\webnautes>pip install tensorflow==

ERROR: Could not find a version that satisfies the requirement tensorflow== (from versions: 2.5.0, 2.5.1, 2.5.2, 2.5.3, 2.6.0rc0, 2.6.0rc1, 2.6.0rc2, 2.6.0, 2.6.1, 2.6.2, 2.6.3, 2.6.4, 2.6.5, 2.7.0rc0, 2.7.0rc1, 2.7.0, 2.7.1, 2.7.2, 2.7.3, 2.7.4, 2.8.0rc0, 2.8.0rc1, 2.8.0, 2.8.1, 2.8.2, 2.8.3, 2.8.4, 2.9.0rc0, 2.9.0rc1, 2.9.0rc2, 2.9.0, 2.9.1, 2.9.2, 2.9.3, 2.10.0rc0, 2.10.0rc1, 2.10.0rc2, 2.10.0rc3, 2.10.0, 2.10.1, 2.11.0rc0, 2.11.0rc1, 2.11.0rc2, 2.11.0, 2.11.1, 2.12.0rc0, 2.12.0rc1, 2.12.0, 2.12.1, 2.13.0rc0, 2.13.0rc1, 2.13.0rc2, 2.13.0, 2.13.1, 2.14.0rc0, 2.14.0rc1, 2.14.0, 2.14.1, 2.15.0rc0, 2.15.0rc1, 2.15.0)

ERROR: No matching distribution found for tensorflow==





Tensorflow 2.10 보다 높은 버전을 설치시에는 WSL2를 사용해야 한다고 합니다.  https://www.tensorflow.org/install/pip?hl=ko#windows-native )

 



WSL2에서의 Tensorflow 설치는 다음 포스트를 참고하세요.

 

WSL2에 CUDA 사용하는 Tensorflow 설치하는 방법

https://webnautes.tistory.com/1873





12. 파이썬 인터프리터에서 텐서플로우가 GPU를 사용할 수 있는지 체크합니다.

 

C:\Users\webnautes>python

Python 3.10.5 (tags/v3.10.5:f377153, Jun  6 2022, 16:14:13) [MSC v.1929 64 bit (AMD64)] on win32

Type "help", "copyright", "credits" or "license" for more information.

>>> import tensorflow as tf

>>> tf.config.list_physical_devices('GPU')

[PhysicalDevice(name='/physical_device:GPU:0', device_type='GPU')]

 

[] 처럼 보이면 CUDA를 로드하지 못한것입니다. 




혹, 다음과 같은 에러가 발생한다면..

 

>>> import tensorflow as tf

......

ImportError: DLL load failed: 지정된 모듈을 찾을 수 없습니다.



다음 주소에서 vc_redist.x64.exe를 다운로드 받아 설치하면 해결됩니다. 

 

https://support.microsoft.com/en-us/help/2977003/the-latest-supported-visual-c-downloads 

 

 

반응형

문제 발생시 지나치지 마시고 댓글 남겨주시면 가능한 빨리 답장드립니다.

도움이 되셨다면 토스아이디로 후원해주세요.
https://toss.me/momo2024


제가 쓴 책도 한번 검토해보세요 ^^

+ Recent posts