一開始我只裝了tensorflow,沒有裝tensorflow-gpu,先pip install 安裝一下tensorflow-gpu
pip install tensorflow-gpu==1.15.0 -i https://pypi.doubanio.com/simple/
血與淚的教訓告訴我不要裝高版本的比如tensorflow2以及低版本的比如1.10
然後python命令行輸入
import tensorflow as tf
tf.__version__
如果顯示的是tensorflow-gpu的版本而不是tensorflow就行(tensorflow-gpu的版本需要高於tensorflow,python默認使用版本更高的tensorflow,所以可以用anaconda創建新環境更方便一點)
1.安裝CUDA
CUDA下載地址:https://developer.nvidia.com/cuda-downloads
CUDA歷史版本:https://developer.nvidia.com/cuda-toolkit-archive
安裝直接選擇精簡模式就行(全家桶模式),解壓路徑隨意,安裝路徑建議默認就好
然後下載cuDNN:https://developer.nvidia.com/cudnn,把下載的文件解壓後拷貝到CUDA安裝目錄對應文件夾即可
然後配置環境變量:
CUDA_PATH = C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2
CUDA_SDK_PATH = C:\ProgramData\NVIDIA Corporation\CUDA Samples\v10.2
path添加
%CUDA_PATH%
%CUDA_PATH%\lib\x64
%CUDA_PATH%\bin
%CUDA_SDK_PATH%
%CUDA_SDK_PATH%\bin\win64
%CUDA_SDK_PATH%\common\lib\x64
進入命令行窗口,進入路徑C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2\extras\demo_suite,或者先進入路徑,再在路徑欄輸入cmd進入命令行窗口,輸入bandwidthTest.exe和deviceQuery.exe檢查是否安裝成功(Result=PASS則安裝成功)
然後進入Python運行import tensorflow,然後報錯
Could not load dynamic library ‘cudart64_100.dll’; dlerror: cudart64_100.dll not found
下載了一個別人的cuart64_100到CUAD安裝目錄的bin文件夾下,再次運行未報錯
文件下載鏈接:https://pan.baidu.com/s/1t0rog1mT-wR_5PlvCEQswQ,提取碼:ch3z
然後繼續運行:
from tensorflow.python.client import device_lib
print(device_lib.list_local_devices())
然後報錯:
tensorflow.python.framework.errors_impl.InternalError: cudaGetDevice() failed. Status: cudaGetErrorString symbol not found.
網上查找原因,是cuda10.0需要的Driver Version版本不對應導致的
大概就是先看下NVDIA控制面板,版本441.22就是本機Driver的版本
參考博客:https://www.cnblogs.com/cupwwj/p/11715076.html
最後python輸入
from tensorflow.python.client import device_lib
print(device_lib.list_local_devices())
輸出:
[name: "/device:CPU:0"
device_type: "CPU"
memory_limit: 268435456
locality {
}
incarnation: 7625146426687586135
, name: "/device:GPU:0"
device_type: "GPU"
memory_limit: 3141979340
locality {
bus_id: 1
links {
}
}
incarnation: 16536461316338165439
physical_device_desc: "device: 0, name: GeForce GTX 1050 Ti, pci bus id: 0000:01:00.0, compute capability: 6.1"
最後在py文件指定GPU
import os
os.environ['CUDA_VISIBLE_DEVICES']='1'