Windows 10에서 tensorflow-gpu 설치

꼼꼼하게 하자.

Windows에서 GPU가 지원되는 tensorflow를 설치하는 것은 어렵지 않지만 꼼꼼하게 체크하지 않으면 코드를 실행할 때 반드시 오류를 만나게 될 것이다.

먼저, TensorFlow 공식 설치 가이드를 보면 Visual Studio C++ 컴파일러를 설치해야 한다고 적혀있다. 왜냐하면 텐서플로우는 인터페이스만 Python이지 실상 C++ 코드가 반이기 때문이다.

https://github.com/tensorflow/tensorflow

그렇다면 설치 가이드의 https://visualstudio.microsoft.com/vs/older-downloads/ 링크를 따라가보자. 사용하고 있는 언어에 따라 다르겠지만 아래와 같은 화면이 보일 것이다. 2015 탭의 +를 클릭하고 다운로드를 클릭한다.

???

다운로드를 클릭하면 뭔가 다운로드가 될 것 같았지만 항목을 찾을 수 없다고 그런다. 무슨 이유인지는 모르겠지만 하필 2015만 다운로드가 안 되는 것 같다. (MS 직원분께서 혹시 이 글을 보고 계시면 어서 본사에 전달해서 복구를 ..)

2015만 없네..?

물론 상위버전을 깔아도 잘 동작하므로 기왕 설치하는 김에 Visual C++ 2017 을 까는 것이 더 낫다. 여기서 다운로드 할 수 있다.

64, 32 비트를 잘 확인하고 설치하자.

다음은 파이썬이다.

공식 홈페이지에서 Files 문단에 있는 링크들 중 적절한 버전을 골라 설치하면 된다. Tensorflow는 3.6버전까지만 지원하기 때문에 3.7은 사용하지 않는 것이 좋다.

다음은 CUDA 설치이다. 필요한 것은 2가지로 CUDA Toolkit과 CuDNN SDK이다. 모두 Nvidia 에서 제공하고 있다. (혹시 AMD를 쓰고 계신다면, 😅 아래 링크가 도움이 될 수도 있다)

주의할 점은 Tensorflow 는 CUDA 9.0을 지원하므로 주의해야 한다. 위 설치 가이드 링크를 따라가봐야 10을 설치하는 링크로 데려다 주므로 본 글의 위 링크를 눌러서 설치하자.

설치 과정은 단순하므로 설명을 생략한다. 그래픽 드라이버 업데이트 때처럼 화면이 좀 깜빡거리긴 한다. 설치 후에는 아래의 설명처럼 \

환경변수가 올바로 설정되었는지 확인한다. 개인적으로 C:\tools\cuda\bin은 필요 없었고 2번째 줄 CUPTI\lib64 만 추가해주면 될 것 같다.

다음은 CuDNN이라는 온갖 헤더 파일과 DLL로 구성된 딥러닝 할 때 도움이 되는 SDK를 깔아야 한다.

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

CUDA 9.0에 해당하는 파일을 다운로드하면 되지만 회원가입을 하라고 그럴 수도 있으므로 당황하지 않아도 된다. 파일의 압축을 풀면 아래와 같은 구조인 것을 확인할 수 있다.

모두 복사한 후 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0 에 붙여넣으면 된다.

그러면 Tensorflow 설치를 위한 준비가 끝난다. 남은 것은 설치 가이드의 설명대로 가상환경을 만든 다음 pip로 설치하면 된다.

명령 프롬프트에서 아래 명령어를 따라서 치자.

C:\> virtualenv --system-site-packages -p python3 ./venv
C:\> .\venv\scripts\activate
C:\> pip install --upgrade tensorflow-gpu
c:\> python -c "import tensorflow as tf; print(tf.__version__)"

설치가 잘 되었다면 텐서플로우 버전을 확인할 수 있다.