快速安裝tensforflow-gpu version1.14

項目需要,再次配置新環境,記錄一下,

創建環境

conda create --name tf114gpu python=3.7

python最新版是3.8.3,但我一直用3.6,3.7習慣了,這裏用3.7是因爲要支持後面的3.7版的tensorflow。

如果你已經安裝了3.6或其他版本,用
conda install python=3.7.7
命令可以把python更換成3.7版。

當然,後面你也可以選擇3.6的tensorflow包。

安裝cudatoolkit+cudnn

直接指定版本號,
conda install -c anaconda cudatoolkit=10.1

這裏要注意,如果要使用anaconda默認的tensorflow安裝,則必須 使用10.0版本,且要和你的驅動保持一致。
因爲我已經在本機上安裝了10.1的cuda驅動,所以我這裏直接使用10.1

後續安裝 cudnn(參考:https://anaconda.org/anaconda/cudnn),此時cudnn可以不用指定版本號,
conda install -c anaconda cudnn
版本會自動匹配,安裝時有版本提示,提示中可以看到相兼容的版本信息。

安裝tensorflow-gpu=1.14/1.15

(1) 默認安裝

這裏要注意,首先,你使用默認的安裝的話,tensorflow1.14只接受cuda10.0,不接受10.1。

conda install -c anaconda tensorflow-gpu=1.14

此時,在列出的安裝包中你會發現,tensorflow只支持cuda10.0,不支持cuda10.1等驅動,這是個糟糕的地方。

參考:
https://forums.developer.nvidia.com/t/cuda-10-1-tensorflow-1-13/70940/12

在tensorflow的官方網站上,也明確指出,CUDA 10.1需要 (TensorFlow >= 2.1.0)
https://www.tensorflow.org/install/gpu

Software requirements

The following NVIDIA® software must be installed on your system:

(2) 安裝tensorflow1.14+cuda10.1

我這裏沒有按anaconda 默認的方式安裝,而是在【github的這個地方

可以用這個,
https://github.com/fo40225/tensorflow-windows-wheel/blob/master/1.14.0/py37/GPU/cuda101cudnn76sse2/tensorflow_gpu-1.14.0-cp37-cp37m-win_amd64.whl
下載了支持cuda10.1的tensorflow版本,然後用命令安裝,
pip install D:\downloaded_package\tensorflow_gpu-1.14.0-cp37-cp37m-win_amd64.whl

我安裝的是這個,和CPU有關,
https://github.com/fo40225/tensorflow-windows-wheel/tree/master/1.14.0/py37/GPU/cuda101cudnn76avx2
下載下來後用7-zip解壓,然後安裝即可,乾脆把安裝log也貼出來吧,順便測試了一下

(tfgpu114) C:\Users\SpaceVision>pip install  D:\mTensorflow\tensorflow_gpu-1.14.0+nv-cp37-cp37m-win_amd64\tensorflow_gpu-1.14.0+nv-cp37-cp37m-win_amd64.whl
Processing d:\mtensorflow\tensorflow_gpu-1.14.0+nv-cp37-cp37m-win_amd64\tensorflow_gpu-1.14.0+nv-cp37-cp37m-win_amd64.whl
Requirement already satisfied: keras-applications>=1.0.6 in d:\anaconda3\envs\tfgpu114\lib\site-packages (from tensorflow-gpu==1.14.0+nv) (1.0.8)
Requirement already satisfied: wrapt>=1.11.1 in d:\anaconda3\envs\tfgpu114\lib\site-packages (from tensorflow-gpu==1.14.0+nv) (1.12.1)
Requirement already satisfied: tensorboard<1.15.0,>=1.14.0 in d:\anaconda3\envs\tfgpu114\lib\site-packages (from tensorflow-gpu==1.14.0+nv) (1.14.0)
Requirement already satisfied: astor>=0.6.0 in d:\anaconda3\envs\tfgpu114\lib\site-packages (from tensorflow-gpu==1.14.0+nv) (0.8.1)
Requirement already satisfied: tensorflow-estimator<1.15.0rc0,>=1.14.0rc0 in d:\anaconda3\envs\tfgpu114\lib\site-packages (from tensorflow-gpu==1.14.0+nv) (1.14.0)
Requirement already satisfied: numpy<2.0,>=1.14.5 in d:\anaconda3\envs\tfgpu114\lib\site-packages (from tensorflow-gpu==1.14.0+nv) (1.16.4)
Requirement already satisfied: grpcio>=1.8.6 in d:\anaconda3\envs\tfgpu114\lib\site-packages (from tensorflow-gpu==1.14.0+nv) (1.29.0)
Requirement already satisfied: termcolor>=1.1.0 in d:\anaconda3\envs\tfgpu114\lib\site-packages (from tensorflow-gpu==1.14.0+nv) (1.1.0)
Requirement already satisfied: absl-py>=0.7.0 in d:\anaconda3\envs\tfgpu114\lib\site-packages (from tensorflow-gpu==1.14.0+nv) (0.9.0)
Requirement already satisfied: google-pasta>=0.1.6 in d:\anaconda3\envs\tfgpu114\lib\site-packages (from tensorflow-gpu==1.14.0+nv) (0.2.0)
Requirement already satisfied: gast>=0.2.0 in d:\anaconda3\envs\tfgpu114\lib\site-packages (from tensorflow-gpu==1.14.0+nv) (0.3.3)
Requirement already satisfied: keras-preprocessing>=1.0.5 in d:\anaconda3\envs\tfgpu114\lib\site-packages (from tensorflow-gpu==1.14.0+nv) (1.1.2)
Requirement already satisfied: six>=1.10.0 in d:\anaconda3\envs\tfgpu114\lib\site-packages (from tensorflow-gpu==1.14.0+nv) (1.15.0)
Requirement already satisfied: protobuf>=3.6.1 in d:\anaconda3\envs\tfgpu114\lib\site-packages (from tensorflow-gpu==1.14.0+nv) (3.12.2)
Requirement already satisfied: wheel>=0.26 in d:\anaconda3\envs\tfgpu114\lib\site-packages (from tensorflow-gpu==1.14.0+nv) (0.34.2)
Requirement already satisfied: h5py in d:\anaconda3\envs\tfgpu114\lib\site-packages (from keras-applications>=1.0.6->tensorflow-gpu==1.14.0+nv) (2.10.0)
Requirement already satisfied: setuptools>=41.0.0 in d:\anaconda3\envs\tfgpu114\lib\site-packages (from tensorboard<1.15.0,>=1.14.0->tensorflow-gpu==1.14.0+nv) (47.3.0.post20200616)
Requirement already satisfied: markdown>=2.6.8 in d:\anaconda3\envs\tfgpu114\lib\site-packages (from tensorboard<1.15.0,>=1.14.0->tensorflow-gpu==1.14.0+nv) (3.2.2)
Requirement already satisfied: werkzeug>=0.11.15 in d:\anaconda3\envs\tfgpu114\lib\site-packages (from tensorboard<1.15.0,>=1.14.0->tensorflow-gpu==1.14.0+nv) (1.0.1)
Requirement already satisfied: importlib-metadata; python_version < "3.8" in d:\anaconda3\envs\tfgpu114\lib\site-packages (from markdown>=2.6.8->tensorboard<1.15.0,>=1.14.0->tensorflow-gpu==1.14.0+nv) (1.6.1)
Requirement already satisfied: zipp>=0.5 in d:\anaconda3\envs\tfgpu114\lib\site-packages (from importlib-metadata; python_version < "3.8"->markdown>=2.6.8->tensorboard<1.15.0,>=1.14.0->tensorflow-gpu==1.14.0+nv) (3.1.0)
Installing collected packages: tensorflow-gpu
Successfully installed tensorflow-gpu-1.14.0+nv

(tfgpu114) C:\Users\SpaceVision>python
Python 3.7.7 (default, May  6 2020, 11:45:54) [MSC v.1916 64 bit (AMD64)] :: Anaconda, Inc. on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import tensorflow as tf
>>> print(tf.__version__)
1.14.0
>>> sess = tf.compat.v1.Session()
2020-06-22 12:50:22.879257: I tensorflow/stream_executor/platform/default/dso_loader.cc:42] Successfully opened dynamic library nvcuda.dll
2020-06-22 12:50:23.127073: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1640] Found device 0 with properties:
name: GeForce GTX 1080 Ti major: 6 minor: 1 memoryClockRate(GHz): 1.683
pciBusID: 0000:01:00.0
2020-06-22 12:50:23.166288: I tensorflow/stream_executor/platform/default/dlopen_checker_stub.cc:25] GPU libraries are statically linked, skip dlopen check.
2020-06-22 12:50:23.209658: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1717] Ignoring visible gpu device (device: 0, name: GeForce GTX 1080 Ti, pci bus id: 0000:01:00.0, compute capability: 6.1) with Cuda compute capability 6.1. The minimum required Cuda capability is 7.0.
2020-06-22 12:50:23.290148: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1181] Device interconnect StreamExecutor with strength 1 edge matrix:
2020-06-22 12:50:23.350693: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1187]
>>>
>>> import os
>>> from tensorflow.python.client import device_lib
>>> os.environ["TF_CPP_MIN_LOG_LEVEL"] = "99"
>>> print(device_lib.list_local_devices())
2020-06-22 12:55:19.209342: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1640] Found device 0 with properties:
name: GeForce GTX 1080 Ti major: 6 minor: 1 memoryClockRate(GHz): 1.683
pciBusID: 0000:01:00.0
2020-06-22 12:55:19.225818: I tensorflow/stream_executor/platform/default/dlopen_checker_stub.cc:25] GPU libraries are statically linked, skip dlopen check.
2020-06-22 12:55:19.241562: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1717] Ignoring visible gpu device (device: 0, name: GeForce GTX 1080 Ti, pci bus id: 0000:01:00.0, compute capability: 6.1) with Cuda compute capability 6.1. The minimum required Cuda capability is 7.0.
2020-06-22 12:55:19.388335: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1181] Device interconnect StreamExecutor with strength 1 edge matrix:
2020-06-22 12:55:19.393806: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1187]      0
2020-06-22 12:55:19.399103: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1200] 0:   N
[name: "/device:CPU:0"
device_type: "CPU"
memory_limit: 268435456
locality {
}
incarnation: 3946158223506979494
]
>>>

 

安裝numpy

這裏特別拿出來說是因爲,tensorflow對numpy的版本要求比較高,不然會報一堆警告出來,參考,
https://stackoverflow.com/questions/58662410/which-numpy-versions-are-compatible-with-tensorflow-1-14-0

如果你有多個版本的numpy,你可以檢查 一下先,
pip show numpy

通常新安裝的環境numpy版本都比較高。如果你的版本不是1.16.4,那麼就要先卸載
pip uninstall numpy

然後再安裝numpy1.16.4
pip install numpy==1.16.4

更換版本也可以這樣
pip install -U numpy==1.16.4

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章