8>人生苦短,我也Python。
此時此刻我的mac正在編譯這Tensorflow的源碼,console的窗口中不斷的跳躍著warning,我一步一步按照東拼西湊的教程完成了源碼的編譯,希望編譯成功,同時也希望待我安裝完成之后能夠正常的運行TF。
0.硬件配置
首先你的電腦必須有一塊Nvidia的顯卡,其次你要在linux或mac系統下進行下面的操作。如果你使用的是window的系統或是A卡用戶,那么你可以洗洗睡了。或是直接使用官網的Python安裝包就可以了。以下操作只適合喜歡折騰并且能夠禁得住折騰的用戶。作為一個macbook重度依賴用戶,幾乎日常所有的編碼實驗都在MacBook上面折騰,我說下我的本子配置:
Model Name: MacBook Pro (Retina, Mid 2012)
Model Identifier: MacBookPro10,1
Processor Name: Intel Core i7
Processor Speed: 2.7 GHz
Number of Processors: 1
Total Number of Cores: 4
L2 Cache (per Core): 256 KB
L3 Cache: 8 MB
Memory: 8 GB
OS Version: macOS Sierra, 10.12.1
Graphics Cards:
Intel HD Graphics 4000
NVIDIA GeForce GT 650M
慶幸還有NVIDIA的顯卡,只不過是老掉牙的硬件了。就連計算能力也只有可憐的3.0,只符合TensorFlow的基本要求。不過沒有關系,咬咬牙還能跑。
**不幸的消息是剛剛CPU版本的編譯成功了,但是在編譯GPU的時候,苦苦等了快一個小時,然后爆出了錯誤。到Github上一搜,在issue里面,得出的結果是這是CUDA的一個錯誤,文章的最后我會貼出常見的錯誤和解決方法。
1.安裝CUDA開發環境
這里說的CUDA開發環境包括driver和cudnn兩個東西,其中driver可以從官網下載的Tookit安裝包安裝,而cudnn則需要自己下載后手動放到cuda的文件夾中。
1.1 CUDA
-> 安裝CUDA8.0
-> 安裝cuDNN5.1
-> 你的GPU的計算能力需要至少3.0[查看詳細]
- 在NVIDIA的官網上按照Toolkit的步驟來下載相應系統的版本,然后安裝。在Macbook上,安裝之后你的硬盤中會多出兩個文件夾來。分別是
/usr/local/cuda
和/Developer/NVIDIA/
兩個文件夾。其中一個
以上提出的是目前最優要求,如果是你的環境和硬件不滿足的話,那么你需要通過源碼自己編譯
1.2 cuDNN
終極大法
如果你按照官網給出的各種方式(無論是從wheel安裝,還是從source code安裝,都出現不同程度的錯誤,主要是GPU版本怎么弄也不行)還是出錯的話,那么你可以嘗試下面的方法:
Warning: 下面的方法將會關閉你的Macbook的安全選項,使得程序能夠以root的權限運行,如果不放心可以略過。
終結大法介紹:
- 關閉系統的SIP:
->重啟mac
->command+R組合鍵進入Recovery模式
->打開Terminal,鍵入csrutil disable
命令關閉系統的SIP
->重啟 - 在
.bash_profile
中添加下面的cuda的配置
export CUDA_HOME=/usr/local/cuda
export DYLD_LIBRARY_PATH=/usr/local/cuda/lib:/usr/local/cuda/extras/CUPTI/lib
export LD_LIBRARY_PATH=$DYLD_LIBRARY_PATH
export PATH=$DYLD_LIBRARY_PATH:$PATH