그냥 사는 이야기

Windows10에서 tensorflow-gpu 2.1.0 설치. (Feat. NVidia 1060) 본문

Development/System

Windows10에서 tensorflow-gpu 2.1.0 설치. (Feat. NVidia 1060)

없다캐라 2020. 11. 17. 11:12
반응형

tensorflow-gpu 설치

Tensorflow를 간만에 해보려고 하는데 이번엔 nvidia 그래픽카드가 있으므로 gpu버전으로 설치해보았습니다. 그리고 꽤 힘들었습니다.

tensorflow cpu버전 설치

GPU를 사용하지 않는 시스템이라면 아래처럼 CPU 버전으로 설치하면 됩니다.

pip install tensorflow

hello world를 실행해보면

import tensorflow.compat.v1 as tf

with tf.Session() as sess:
    hello = tf.constant("Hello World!")
    print(sess.run(hello))

warning이 꽤 있지만 hello world를 잘 출력합니다. warning은 다음에 보기로 하고

tensorflow-gpu 버전

현재 환경은 아래와 같습니다.

  • OS : Windows 10 x64
  • Graphic : NVidia Geforce 1060
  • CPU : i7-8750H 2.20GHz

GPU 그래픽 카드가 있어서 이것을 활용해보기 위해 tensorflow-gpu를 설치했습니다.

pip install tensorflow-gpu

현재, 2.1까지 나온 상태이지만 1.14.0까지는 테스트 해보았습니다. 과거 버전으로 하려면 아래처럼 버전을 명시하여 설치하면 됩니다.

pip install --upgrade --ignore-installed tensorflow-gpu==1.14
python.exe D:/work/ml-tf/hello.py
...
OSError: [WinError 126] 지정된 모듈을 찾을 수 없습니다

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
...
ImportError: Could not find 'cudart64_100.dll'. TensorFlow requires that this DLL be installed in a directory that is named in your %PATH% environment variable. Download and install CUDA 10.0 from this URL: https://developer.nvidia.com/cuda-90-download-archive

Process finished with exit code 1

WinError 126 에러가 뜨면서 cudart64_100.dll 파일 로드를 실패했습니다.

Win32 Error Code 126: The specified module could not be found.

그러면서 CUDA 10.0을 설치하라고 하면서 CUDA 9.0 Toolkit 9.0 Downloads 링크를 제안해주네요. 뭘 설치해야 되지?
이거 설치하고 path 지정하라는 것 같습니다. 제대로 된 문서를 보고 삽질할 준비를 해야겠습니다.

GPU 지원

TensorFlow의 공식 문서중 GPU 지원 편을 살펴보면 아래의 요구사항이 있습니다.

소프트웨어 요구사항

  • NVIDIA® GPU 드라이버 - CUDA 10.1에는 418.x 이상이 필요합니다.
  • CUDA® Toolkit - TensorFlow는 CUDA 10.1을 지원합니다(TensorFlow 2.1.0 이상).
  • CUPTI는 CUDA Toolkit과 함께 제공됩니다.
  • cuDNN SDK(7.6 이상)
  • (선택사항) TensorRT 6.0 - 일부 모델에서 추론 처리량과 지연 시간을 향상합니다.

CUDA, cuDNN 설치

cuda 설치를 위해 Windows의 소스에서 빌드문서를 조금 더 살펴봤습니다.
아래 부분에 tensorflow 버전별 cuda와 cuDNN의 테스트된 버전을 알려주고 있습니다. 현재 1.14 가 설치되어 있는 나에겐 cuDNN 7.4, CUDA 10 이면 될 것 같습니다.

위의 9.0 링크는 무시하고 CUDA 10.0 링크로 가서 다운을 받았습니다.

CUDA 버전별 release 링크

cuDNN 설치 링크는 로그인을 해야 다운이 가능해서 가입 후에 들어갔습니다. 나에게 딱 맞는 것이 없어서 CUDA 10용 7.4.1로 설치하였습니다.

CUDA나 cuDNN 관련 설치는 인터넷 다운 속도가 상당히 느린데 페이지는 한글이 지원되지만 패키지에 대한 미러 사이트는 없나 봅니다.

내가 선택한 cuDNN

cuDNN은 압축파일을 풀기만 하면 되는데 나는 Program Files 디렉토리의 CUDA 위치에 같이 풀어놓았습니다.

CUDA 10.0cuDNN 7.4.1 설치를 마쳤다면 환경변수에서 PATH에 추가시켜 줘야 합니다.

윈도우즈 환경 변수 중 PATH에 위의 2개가 포함되어야 한다.

기타 설치

Microsoft Visual C++ 재배포 가능 패키지

예방차원에서 해본 것이지만 혹시 내가 겪지 못한 문제가 발생한다면 MSVC 재배포 패키지를 2017 이상으로 설치해보는 것도 도움이 될 수 있습니다.
저는 최신버전으로 설치 했고 Tensorflow-gpu 2.0 이상은 MSVC 2017이 요구됩니다.

2017 이상을 권장합니다.

Hello World

결국 나는 Hello World라고 인사하는 텐서플로우를 보았습니다. 이제 공부만 하면 되는데 왜이리 뻘건게 많냐 이거~

실행이 된거랍니다. 워닝이 많네요

 

'Development > System' 카테고리의 다른 글

Ubuntu 18.04에서 MYSQL 8 설치하기  (0) 2020.12.02
Docker로 tendermint 실행  (0) 2020.11.30
리눅스 퍼미션(Permission)  (0) 2020.10.26
Windows 10에서 WSL1 사용하기  (2) 2020.05.06
Linux의 init process 그리고 systemd  (0) 2020.04.28
Comments