Program Club

어떤 TensorFlow 및 CUDA 버전 조합이 호환 되나요?

proclub 2020. 10. 16. 19:01
반응형

어떤 TensorFlow 및 CUDA 버전 조합이 호환 되나요?


일부 최신 TensorFlow 버전은 이전 CUDA 및 cuDNN 버전과 호환되지 않습니다. 호환되는 버전에 대한 개요 또는 공식적으로 테스트 된 조합 목록이 있습니까? TensorFlow 문서에서 찾을 수 없습니다.


일반적으로:

CUDA 버전 확인 :

cat /usr/local/cuda/version.txt

및 cuDNN 버전 :

grep CUDNN_MAJOR -A 2 /usr/local/cuda/include/cudnn.h

아래 이미지 또는 여기 에 제공된 조합을 설치 하십시오 .

다음 이미지와 링크는 Linux, macOS 및 Windows에서 공식적으로 지원 / 테스트 된 CUDA 및 TensorFlow 조합의 개요를 제공합니다.

사소한 구성 :

아래에 지정된 사양이 너무 광범위 할 수 있으므로 작동하는 특정 구성은 다음과 같습니다.

  • tensorflow-gpu==1.12.0
  • cuda==9.0
  • cuDNN==7.1.4

해당 cudnn은 여기에서 다운로드 할 수 있습니다 .

(2019 년 6 월 29 일 업데이트 된 수치)

Linux GPU

여기에 이미지 설명 입력

리눅스

여기에 이미지 설명 입력

macOS GPU

여기에 이미지 설명 입력

맥 OS

여기에 이미지 설명 입력

(2018 년 5 월 31 일 업데이트 된 그림)

윈도우

여기에 이미지 설명 입력


https://www.tensorflow.org/install/source#tested_build_configurations에 제공된 호환성 표 에는 cuda 및 cuDNN에 대한 특정 부 버전이 포함되어 있지 않습니다. 일반적으로 cuda = 9 및 cuDNN = 7로만 나열됩니다. 그러나 특정 버전이 충족되지 않으면 오류가 발생합니다.

의 경우 tensorflow-gpu==1.12.0cuda==9.0는 호환 cuDNN버전이 7.1.4에서 다운로드 할 수있는 여기에 등록 후.

다음을 사용하여 cuda 버전을 확인할 수 있습니다.
nvcc --version

cuDNN 버전 사용
cat /usr/include/cudnn.h | grep CUDNN_MAJOR -A 2

tensorflow-gpu 버전 사용
pip freeze | grep tensorflow-gpu


작동 : tensorflow 1.13.1, CUDA 10, CUDNN 7.4.2, python 3.6 (3.7에서 잘 작동하지 않습니다 .. 3.7에는 많은 버그가 있습니다) Windows 10의 경우


cuda 10.0 (10.1은 3/18부터 작동하지 않음)에 대해이 구성을 사용할 수 있습니다.

  • tensorflow> = 1.12.0
  • tensorflow_gpu> = 1.4

버전 tensorflow gpu를 설치합니다.

pip install tensorflow-gpu==1.4.0

실수로 CUDA 10.1과 CUDNN 7.6을 설치했습니다. 다음 구성을 사용할 수 있습니다 (이것은 저에게 효과적이었습니다-9/10 기준). :

  • Tensorflow-gpu == 1.14.0
  • CUDA 10.1
  • CUDNN 7.6
  • Ubuntu 18.04

그러나 tensorflow가 원래 CUDA 10에서 작동하는 것처럼 작동하도록 심볼릭 링크를 만들어야했습니다.

sudo ln -s /opt/cuda/targets/x86_64-linux/lib/libcublas.so /opt/cuda/targets/x86_64-linux/lib/libcublas.so.10.0
sudo cp /usr/lib/x86_64-linux-gnu/libcublas.so.10 /usr/local/cuda-10.1/lib64/
sudo ln -s /usr/local/cuda-10.1/lib64/libcublas.so.10 /usr/local/cuda-10.1/lib64/libcublas.so.10.0
sudo ln -s /usr/local/cuda/targets/x86_64-linux/lib/libcusolver.so.10 /usr/local/cuda/lib64/libcusolver.so.10.0
sudo ln -s /usr/local/cuda/targets/x86_64-linux/lib/libcurand.so.10 /usr/local/cuda/lib64/libcurand.so.10.0
sudo ln -s /usr/local/cuda/targets/x86_64-linux/lib/libcufft.so.10 /usr/local/cuda/lib64/libcufft.so.10.0
sudo ln -s /usr/local/cuda/targets/x86_64-linux/lib/libcudart.so /usr/local/cuda/lib64/libcudart.so.10.0
sudo ln -s /usr/local/cuda/targets/x86_64-linux/lib/libcusparse.so.10 /usr/local/cuda/lib64/libcusparse.so.10.0

그리고 내 ~ / .bashrc에 다음을 추가하십시오-

export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
export PATH=/usr/local/cuda-10.1/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-10.1/lib64:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/cuda/targets/x86_64-linux/lib/

참고 URL : https://stackoverflow.com/questions/50622525/which-tensorflow-and-cuda-version-combinations-are-compatible

반응형