1. 程式人生 > >TF-搭建tensorflow-gpu GPU環境

TF-搭建tensorflow-gpu GPU環境

mnist 安裝 python 6.5 space 開發 with include 導致

看完官方的例子,自己憑著記憶敲出來mnist卷積的例子。跑起來才發現,憑著CPU跑不是一般的慢啊!

train過程要叠代20000次,跑了1個小時沒跑完。也是怪我機子太差了。

於是下決心把機子上的顯卡用起來。

之前了解過TF借力GPU需要安裝cuda和cudnn,一直沒實踐過,這次終於開動了。過程如下:

1、確認自己顯卡是否支持

到https://developer.nvidia.com/cuda-gpus,點擊CUDA-Enabled GeForce Products查看是否自己的顯卡支持cuda。後面那列是顯卡的運算能力,如我自己的是GT730運算能力是3.5,畢竟是老卡了,比較差勁。

技術分享

2、下載CUDA。

確定自己的卡可以支持後,接下來根據自己的系統版本下載cuda版本,如果你是windows,必須是64位系統哦,如果不是最好就重裝吧。網址是這個

https://developer.nvidia.com/cuda-downloads

技術分享

選擇下exe(local)這個,network那個要邊裝邊下,很容易失敗。

3、下載Cudnn。

Cudnn就是個NVIDIA公司在cuda基礎上為了方便深度學習調用而加的接口。(The NVIDIA CUDA? Deep Neural Network library (cuDNN) is a GPU-accelerated library of primitives for deep neural networks),兩種方法下載,1) 去N卡官網下載http://developer.nvidia.com/cudnn。2) 看國內有些好人下完了傳到百度網盤或者CSDN,你直接下來用。推薦第二種,因為去官網下載需要註冊填表等一系列麻煩事才能下。我由於是win7所以在http://download.csdn.net/detail/zhangjianbinn/9821263下載了(需要註冊CSDN)。

4、安裝CUDA,CUDNN

現在你已經下載了cuda_8.0.61_windows.exe和cudnn-8.0-windows7-x64-v5.1.zip,版本號可能不同,可以開始安裝了。關掉360等安裝軟件防止一會點擊到手軟。

1) 首先安裝cuda,一路默認,等待他裝完(大概幾十分鐘)。

2) 再裝Cudnn。解壓後進入cudnn-8.0-windows7-x64-v5.1\cuda目錄,裏面有bin include lib 3個目錄,拷貝,然後進入C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0,後面的v8.0根據版本號會有不同。粘貼,彈出提示已存在,選擇合並目錄。

5、安裝tensorflow-gpu。

以下安裝是建立在之前已經正常運行tensorflow CPU版本的基礎上的。

首先關閉你的python開發環境,停止所有運行的python程序,這點很關鍵,可能會導致安裝失敗。之後打開cmd,運行pip install --upgrade --ignore-installed setuptools。

技術分享

再執行pip install --upgrade tensorflow-gpu

技術分享

看到成功安裝即可。

6、驗證。

重新打開tf的環境,跑起來,就可以看到調用GPU的日誌了,比如下面是我的。

2017-05-13 23:04:56.361497: W c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\core\platform\cpu_feature_guard.cc:45] The TensorFlow library wasnt compiled to use SSE instructions, but these are available on your machine and could speed up CPU computations.
2017-05-13 23:04:56.361497: W c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\core\platform\cpu_feature_guard.cc:45] The TensorFlow library wasnt compiled to use SSE2 instructions, but these are available on your machine and could speed up CPU computations.
2017-05-13 23:04:56.361497: W c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\core\platform\cpu_feature_guard.cc:45] The TensorFlow library wasnt compiled to use SSE3 instructions, but these are available on your machine and could speed up CPU computations.
2017-05-13 23:04:56.362497: W c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\core\platform\cpu_feature_guard.cc:45] The TensorFlow library wasnt compiled to use SSE4.1 instructions, but these are available on your machine and could speed up CPU computations.
2017-05-13 23:04:56.577509: I c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\core\common_runtime\gpu\gpu_device.cc:887] Found device 0 with properties: 
name: GeForce GT 730
major: 3 minor: 5 memoryClockRate (GHz) 0.9015
pciBusID 0000:01:00.0
Total memory: 1.00GiB
Free memory: 825.37MiB
2017-05-13 23:04:56.577509: I c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\core\common_runtime\gpu\gpu_device.cc:908] DMA: 0 
2017-05-13 23:04:56.577509: I c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\core\common_runtime\gpu\gpu_device.cc:918] 0:   Y 
2017-05-13 23:04:56.578509: I c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\core\common_runtime\gpu\gpu_device.cc:977] Creating TensorFlow device (/gpu:0) -> (device: 0, name: GeForce GT 730, pci bus id: 0000:01:00.0)
step=0,train_accuracy=0.09999999403953552
step=100,train_accuracy=0.8200000524520874

爽呆了,比CPU快1倍不止!

TF-搭建tensorflow-gpu GPU環境