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)"
- 使用鏡像加速homebrew
- 依賴項下載下傳
brew update
brew upgrade
brew install coreutils
brew install swig
brew install bazel
bazel version
- 安裝brew
- 安裝Anaconda Python
- 版本選擇:我選擇是的是 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版本
- 我下載下傳的是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 Driver
- 我下載下傳的是
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/samples
sudo 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
- python pip源配置加速下載下傳
- 通過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
- 測試tensorflow 是否已經成功安裝
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
- 運作第一個model test
檢視安裝位置
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)
參考引用:
- tensorflow官方文檔
- https://gist.github.com/Mistobaan/dd32287eeb6859c6668d
- https://gist.github.com/ageitgey/819a51afa4613649bd18
- Installing tensorflow on Mac OS 10.11
安裝caffe的教程如下,有些元件的安裝可以參考:
- http://www.jianshu.com/p/8795b882ea67
- http://hoondy.com/2015/04/03/how-to-install-caffe-on-mac-os-x-10-10-for-dummies-like-me/
遇到的問題:
- 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
轉載于:https://www.cnblogs.com/peaceWang/p/5970495.html