天天看點

Window10 Tensorflow 2.1 GPU 安裝和測試

Tensorflow 2.1 GPU 安裝和測試

    • 1. 硬體要求
    • 2. 軟體要求
      • 簡單的描述一下它們的功能
    • 3. 安裝步驟
      • 3.1. nvidia 驅動可以到這個位址下載下傳, 我的顯示卡是RTX 2070的,你可以根據你的顯示卡下載下傳驅動**
      • 3.2. 下載下傳Cuda
      • 3.3. 下載下傳Cudnn
      • 3.4. 運作這個指令安裝tensorflow 2.1 gpu 版本
      • 3.5. 用tensorflow 代碼測試是不是安裝成功
    • 4. 解決問題
        • 4.1 如果你運作Keras的RNN或者LSTM時,遇到下面問題

1. 硬體要求

支援以下帶有 GPU 的裝置:

CUDA® 計算能力為 3.5 或更高的 NVIDIA® GPU 卡。請參閱支援 CUDA 的 GPU 卡清單。

2. 軟體要求

必須在系統中安裝以下 NVIDIA® 軟體:

NVIDIA® GPU 驅動程式:CUDA 10.1 需要 418.x 或更高版本。

CUDA® 工具包:TensorFlow 支援 CUDA 10.1(TensorFlow 2.1.0 及更高版本)

CUDA 工具包附帶的 CUPTI。

cuDNN SDK(7.6 及更高版本)

(可選)TensorRT 6.0,可縮短在某些模型上進行推斷的延遲并提高吞吐量

參考位址: https://tensorflow.google.cn/install/gpu

簡單的描述一下它們的功能

nvidia:是顯示卡,主要是下載下傳它的驅動

Cuda:是NVIDIA推出的用于自家GPU的并行計算架構,也就是說CUDA隻能在NVIDIA的GPU上運作,而且隻有當要解決的計算問題是可以大量并行計算的時候才能發揮CUDA的作用。CUDA的本質是一個工具包(ToolKit)

cuDNN : cuDNN是一個SDK,是一個專門用于神經網絡的加速包,

版本資訊

N卡驅動版本Geforce- Rtx 2070 SUPER,

Cuda 10.1 ,

Cudnn: cudnn-10.1-windows10-x64-v7.6.5.32,

tensorflow 2.1

3. 安裝步驟

3.1. nvidia 驅動可以到這個位址下載下傳, 我的顯示卡是RTX 2070的,你可以根據你的顯示卡下載下傳驅動**

https://www.nvidia.com/download/index.aspx?在這裡插入圖檔描述" src="https://img-blog.csdnimg.cn/20200315170249624.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2tlZXBwcmFjdGljZQ==,size_16,color_FFFFFF,t_70" />

運作 這個指令看N 卡的驅動的版本号 ----nvidia-smi

Window10 Tensorflow 2.1 GPU 安裝和測試

3.2. 下載下傳Cuda

CUDA的下載下傳位址為:https://developer.nvidia.com/cuda-downloads

Window10 Tensorflow 2.1 GPU 安裝和測試

運作這個指令檢視Cuda 的資訊

. nvcc -V

Window10 Tensorflow 2.1 GPU 安裝和測試

3.3. 下載下傳Cudnn

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

下載下傳後,加它相應的路徑到環境變量裡。

注意:下載下傳這個比較麻煩,要新增賬號,還有翻牆才能搞,我當時用VPN 才能新增賬號。

Window10 Tensorflow 2.1 GPU 安裝和測試

SET PATH=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\bin;%PATH%

SET PATH=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\extras\CUPTI\libx64;%PATH%

SET PATH=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;%PATH%

SET PATH=C:\tools\cuda\bin;%PATH%

3.4. 運作這個指令安裝tensorflow 2.1 gpu 版本

conda install tensorflow-gpu==2.1.0

因為我已經安裝

Window10 Tensorflow 2.1 GPU 安裝和測試

3.5. 用tensorflow 代碼測試是不是安裝成功

import tensorflow as tf
import os
#os.environ['TF_CPP_MIN_LOG_LEVEL']='2'
a = tf.constant(1.)
b = tf.constant(2.)
print(a+b)
print(tf.__version__)
print('GPU:', tf.config.list_physical_devices('GPU'))
print(tf.test.is_gpu_available())

           

運作結果

tf.Tensor(3.0, shape=(), dtype=float32)
2.1.0
GPU: [PhysicalDevice(name='/physical_device:GPU:0', device_type='GPU')]
True
           

4. 解決問題

4.1 如果你運作Keras的RNN或者LSTM時,遇到下面問題

錯誤:Fail to find the dnn implementation. [Op:CudnnRNN]解決辦法

使用的版本為tensorflow2.x

原因:gpu記憶體的問題

解決辦法:

# 設定gpu記憶體自增長
gpus = tf.config.experimental.list_physical_devices('GPU')
print(gpus)
for gpu in gpus:
    tf.config.experimental.set_memory_growth(gpu, True)
           

繼續閱讀