Setup Tensorflow with GPU on OSX 10.11
環境描述
電腦:MacBook Pro 15.6
CPU: 2.7GHz 顯卡: GT 650m
系統:OSX 10.11
Python版本:2.7
Using Anaconda and pip to install tensorflow
-
安裝Tensorflow依賴項
-
安裝brew
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
-
依賴項下載
brew update
brew upgrade
brew install coreutils
brew install swig
brew install bazel
bazel version
-
-
-
版本選擇:我選擇是的是 Anaconda2-4.2.0-MacOSX-x86_64.pkg 基於Python2.7
-
測試Anaconda 是否安裝成功
>python
出現 >Python 2.7.12 |Anaconda 4.2.0 (x86_64)| (default, Jul 2 2016, 17:43:17) 表示成功
-
-
-
我下載的是cuda_7.5.27_mac.dmg
-
默認安裝的路徑是/Developer/NVIDIA/CUDA-7.5/,但是我們需要放在/usrl/local/cuda/目錄下
cp -R /Developer/NVIDIA/CUDA-7.5/ /usrl/local/cuda
設置環境參數:
vim .bash_profile
export CUDA_HOME=/usr/local/cuda
export DYLD_LIBRARY_PATH="$DYLD_LIBRARY_PATH:$CUDA_HOME/lib"
export PATH="$CUDA_HOME/bin:$PATH"
source .bash_profile
-
-
- 我下載的是
CUDA 7.5.29 driver for MAC
- 我下載的是
-
下載安裝cudnnV5(需要注冊下載)
-
我下載的是
Download cuDNN v5 (May 12, 2016), for CUDA 7.5
-
下載完畢,將cudnn拷貝到cuda目錄下面
tar -xzvf cudnn-7.5-osx-x64-v5.0-ga.tar
cd cuda
sudo cp lib* /usr/local/cuda/lib
sudo cp cudnn.h /usr/local/cuda/include/
sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib/libcudnn*
sudo ln -s /usr/local/cuda/lib /usr/local/cuda/lib64
-
-
CUDA 是否安裝成功的測試:
-
需要JDK 環境 我的是JDK_8U66,
-
Xcode環境官網下載 我安裝的是7.2版本 + 7.3版本,官網說7.3不兼容,暫時沒有發現,保險起見,還是7.2版本吧
-
測試是否CUDA 安裝成功
cp -r /usr/local/cuda/samples ~/cuda-samples
pushd ~/cuda-samples
make
popd
~/cuda-samples/bin/x86_64/darwin/release/deviceQuery
如果成功,你將會看到關於GPU相關的信息
這樣會將所有的samples都進行編譯,可以選擇只編譯deviceQuery這個module,命令如下:
cd /usr/local/cuda/samplessudo make -C 1_Utilities/deviceQuery
/usr/local/cuda/samples/bin/x86_64/darwin/release/deviceQuery
-
-
安裝pip來下載tensorflow
sudo easy_install pip
sudo easy_install --upgrade six
-
通過pip來在線下載tensorflow (如果失敗,使用離線進行下載)
export TF_BINARY_URL=https://storage.googleapis.com/tensorflow/mac/gpu/tensorflow-0.11.0rc0-py2-none-any.whl
sudo pip install --upgrade $TF_BINARY_URL
-
使用Pip命令離線安裝tensorflow 命令如下:
# create a new environment with sklearn installed, up to you
# if you want a pure Python, replace scikit-learn by python
conda create -n tensorflow scikit-learn# activate the new environment
source activate tensorflow# download the wheel file
curl https://storage.googleapis.com/tensorflow/mac/gpu/tensorflow-0.11.0rc0-py2-none-any.whl --output tensorflow-0.11.0rc0-py2-none-any.whl# then install
pip install tensorflow-0.11.0rc0-py2-none-any.whl
-
source activate tensorflow
python
import tensorflow as tf
附官網上面會有常見問題解決方法
這里會遇到一個segment fault,原因是有個文件缺省名字變了,ln -sf /usr/local/cuda/lib/libcuda.dylib /usr/local/cuda/lib/libcuda.1.dylib
-
查看安裝位置
source activate tensorflow
# 這句需要在每次使用tensorflow之前使用python -c 'import os; import inspect; import tensorflow; print(os.path.dirname(inspect.getfile(tensorflow)))'
#上面的這個路徑后面可能會用到
python -m tensorflow.models.image.mnist.convolutional
#這句會出錯,解決辦法見問題5,就是修改convolutional.py 文件的這一行WORK_DIRECTORY="~/data"
=======
安裝tensorflow的過程比較慢,主要的原因是:
- brew, pip,官網下載,各種下載時間比較長,等的比較心焦
- 系統版本的問題,更新OSX 10.12 后,出現QtKit被更改,然后找不到的問題,系統環境進行了一些更新,重裝了下系統降級到OSX 10.11
==========
安裝tensorfow 官方有很多的方法,但是成功的比較少. 我的安裝過程是:
- 先安裝Anaconda Python,
- 然后@高山 使用Pip安裝成功了CPU only的tensorflow,然后我也選擇了Pip 安裝,但是pip 安裝到了最后一步的時候出現了失敗問題,問題4
- [install-tensorflow-on-mac-os-10.11] (http://vinhdq.blogspot.com/2015/12/installing-tensorflow-on-mac-os-1011.html)
參考引用:
安裝caffe的教程如下,有些組件的安裝可以參考:
遇到的問題:
- brew下載好慢,使用brew 鏡像加速
- pip 下載好慢,使用鏡像加速
- xcode-select: error: tool 'xcodebuild' requires Xcode, but active developer directory '/Library/Developer/CommandLineTools' is a command line tools instance #569
- Cannot remove entries from nonexistent
- Unable to execute example: models/image/mnist/convolutional.py on MacOS