반응형

Windows 10에 CUDA Toolkit와 cuDNN, Tensorflow를 설치하는 방법을 다룹니다.




2020. 6. 21 최초 작성. 

2020. 8. 8  CUDA Toolkit 버전 확인 방법 수정

 



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

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

 

저는 GTX 1660 Ti를 사용중이라서 compute capability 7.5네요.





2. 앞에서 언급한 링크에서 다시 확인해보니 compute capability 7.5라면 CUDA SDK 10.0~10.2나 CUDA SDK 11.0을 사용할 수 있습니다.





3. CUDA Toolkit 11.0은 아직 정식 버전이 아니라서 CUDA Toolkit 10.1 update2를 다운로드 받았습니다.  

https://developer.nvidia.com/cuda-toolkit-archive



글 작성시점에서 10.2는 텐서플로우에서 인식이 안되어 다음과 같은 에러가 발생했습니다. 

>>> import tensorflow as tf

2020-06-21 20:42:02.785582: W tensorflow/stream_executor/platform/default/dso_loader.cc:55] Could not load dynamic library 'cudart64_101.dll'; dlerror: cudart64_101.dll not found

2020-06-21 20:42:02.785700: I tensorflow/stream_executor/cuda/cudart_stub.cc:29] Ignore above cudart dlerror if you do not have a GPU set up on your machine.





4. 다음 링크에서 cuDNN을 다운로드 받을 수 있습니다. 로그인을 해야 다운로드가 가능하군요. 

https://developer.nvidia.com/cudnn




CUDA 10.1 항목에 있는 cuDNN 7.6.5를 다운로드하면 됩니다. 




5. CUDA Toolkit를 먼저 설치합니다. 다음 위치에 설치됩니다.


C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1



cuDNN의 압축을 풀어서 CUDA Tookit가 설치된 경로에 복사해주면 설치가 완료됩니다.








6. 다음 두 명령으로 설치된 CUDA Toolkit의 버전 정보, 그래픽 카드 드라이버 버전 정보, 그래픽 카드 메모리 크기를 확인할 수 있습니다. 


nvcc --version

nvidia-smi


nvidia-smi에서 확인되는 CUDA 버전은 그래픽카드에서 지원하는 최대 CUDA 버전이며

실제 설치된 CUDA 버전은 nvcc --version으로 확인되는 버전입니다. 






7. 다음 주소에서 Python을 다운로드하여 설치합니다.  

Tensorflow에서 지원하는 버전인 3.6 ~ 3.7 사이의 버전을 다운로드 해야 합니다.

 

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

 


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






8. 명령 프롬프트에서 다음 명령으로 최신 버전의 Tensorflow GPU버전을 설치합니다. 

글 작성 시점에는 최신버전이 Tensorflow 2.2.0입니다.


pip install tensorflow-gpu






9. 텐서플로우 모듈을 로드하여 문제 없는지 확인합니다. 



import tensorflow as tf 를 실행하여 문제 없이 텐서플로우 모듈을 로드했다면 다음 메시지가 보입니다.


Successfully opened dynamic library cudart64_101.dll



tf.__version__을 실행하여 설치한 텐서플로우 버전이 출력되는 지도 확인합니다.





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


>>> 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





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


>>> import tensorflow as tf


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

2020-06-21 21:10:56.424727: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1561] Found device 0 with properties:

pciBusID: 0000:01:00.0 name: GeForce GTX 1660 Ti computeCapability: 7.5

coreClock: 1.59GHz coreCount: 24 deviceMemorySize: 6.00GiB deviceMemoryBandwidth: 268.26GiB/s

2020-06-21 21:10:56.425117: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cudart64_101.dll

2020-06-21 21:10:56.425639: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cublas64_10.dll

2020-06-21 21:10:56.426130: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cufft64_10.dll

2020-06-21 21:10:56.426738: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library curand64_10.dll

2020-06-21 21:10:56.427284: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cusolver64_10.dll

2020-06-21 21:10:56.427833: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cusparse64_10.dll

2020-06-21 21:10:56.428379: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cudnn64_7.dll

2020-06-21 21:10:56.429734: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1703] Adding visible gpu devices: 0

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




11. 파이썬 코드 작성시 사용할 편집기로는 Visual Studio Code나 Sublime Text 3를 사용하는 것을 추천합니다.


Visual Studio Code를 사용하여 Python 프로그래밍 환경 만들기

https://webnautes.tistory.com/1369



Sublime Text 3와 함께 Python 프로그래밍

https://webnautes.tistory.com/454



반응형

포스트 작성시에는 문제 없었지만 이후 문제가 생길 수 있습니다.
댓글로 알려주시면 빠른 시일내에 답변을 드리겠습니다.

여러분의 응원으로 좋은 컨텐츠가 만들어집니다.
지금 본 내용이 도움이 되었다면 유튜브 구독 부탁드립니다. 감사합니다 : )

유튜브 구독하기


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

  1. Favicon of https://tariat.tistory.com BlogIcon 테리엇 2020.06.24 07:22 신고

    잘 봤습니다. 즐거운 하루되세요~ㅎ

  2. ff 2020.08.07 13:10

    CUDA VERISON: 10.1 이 아니라 CUDA VERSION:10.2 로 되어있는데 이거 해결방법 있나요?

    • Favicon of https://webnautes.tistory.com BlogIcon webnautes 2020.08.07 18:20 신고

      제거하고 진행해야 합니다

    • Favicon of https://webnautes.tistory.com BlogIcon webnautes 2020.08.07 18:25 신고

      어디에서 10.2가 보인건가요?

    • Favicon of https://webnautes.tistory.com BlogIcon webnautes 2020.08.08 17:18 신고

      nvidia-smi에서 확인되는 CUDA 버전은 그래픽카드에서 지원하는 최대 CUDA 버전이며

      실제 설치된 CUDA 버전은 nvcc --version으로 확인되는 버전입니다.

  3. jun 2020.08.23 12:41

    Found device 0 with properties이라고 결과에 나왔는데
    이거는 사용할 수 있는 GPU가 0개라고 뜬 거 아닌가요??

    • Favicon of https://webnautes.tistory.com BlogIcon webnautes 2020.08.23 12:44 신고

      그 아래에 그래픽 카드 정보가 보이는지 확인해야 합니다. 포스트 결과와 비교해보세요

+ Recent posts