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

  1. 安装Tensorflow依赖项

    1. 安装brew

      /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

    2. 使用镜像加速homebrew
    3. 依赖项下载

      brew update

      brew upgrade

      brew install coreutils

      brew install swig

      brew install bazel

      bazel version

  2. 安装Anaconda Python
    1. 版本选择:我选择是的是 Anaconda2-4.2.0-MacOSX-x86_64.pkg 基于Python2.7
    2. 测试Anaconda 是否安装成功

      >python

      出现 >Python 2.7.12 |Anaconda 4.2.0 (x86_64)| (default, Jul 2 2016, 17:43:17) 表示成功

  3. 安装CUDA 7.5版本
    1. 我下载的是cuda_7.5.27_mac.dmg
    2. 默认安装的路径是/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

  4. 安装CUDA Driver
    1. 我下载的是CUDA 7.5.29 driver for MAC
  5. 下载安装cudnnV5(需要注册下载)
    1. 我下载的是 Download cuDNN v5 (May 12, 2016), for CUDA 7.5
    2. 下载完毕,将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

  6. CUDA 是否安装成功的测试:
    1. 需要JDK 环境 我的是JDK_8U66,
    2. Xcode环境官网下载 我安装的是7.2版本 + 7.3版本,官网说7.3不兼容,暂时没有发现,保险起见,还是7.2版本吧
    3. 测试是否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

  7. 安装pip来下载tensorflow

    sudo easy_install pip

    sudo easy_install --upgrade six

    1. python pip源配置加速下载

    2. 通过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

    3. 使用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

  8. 测试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

  9. 运行第一个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的过程比较慢,主要的原因是:

  1. brew, pip,官网下载,各种下载时间比较长,等的比较心焦
  2. 系统版本的问题,更新OSX 10.12 后,出现QtKit被更改,然后找不到的问题,系统环境进行了一些更新,重装了下系统降级到OSX 10.11

==========

安装tensorfow 官方有很多的方法,但是成功的比较少. 我的安装过程是:

  1. 先安装Anaconda Python,
  2. 然后@高山 使用Pip安装成功了CPU only的tensorflow,然后我也选择了Pip 安装,但是pip 安装到了最后一步的时候出现了失败问题,问题4
  3. [install-tensorflow-on-mac-os-10.11] (http://vinhdq.blogspot.com/2015/12/installing-tensorflow-on-mac-os-1011.html)

参考引用:

  1. tensorflow官方文档
  2. https://gist.github.com/Mistobaan/dd32287eeb6859c6668d
  3. https://gist.github.com/ageitgey/819a51afa4613649bd18
  4. Installing tensorflow on Mac OS 10.11

安装caffe的教程如下,有些组件的安装可以参考:

  1. http://www.jianshu.com/p/8795b882ea67
  2. http://hoondy.com/2015/04/03/how-to-install-caffe-on-mac-os-x-10-10-for-dummies-like-me/

遇到的问题:

  1. brew下载好慢,使用brew 镜像加速
  2. pip 下载好慢,使用镜像加速
  3. xcode-select: error: tool 'xcodebuild' requires Xcode, but active developer directory '/Library/Developer/CommandLineTools' is a command line tools instance #569
  4. Cannot remove entries from nonexistent
  5. Unable to execute example: models/image/mnist/convolutional.py on MacOS

Setup Tensorflow with GPU on Mac OSX 10.11的更多相关文章

  1. Mac OSX 10.11安装Jekyll

    一说常见的博客管理工具大家想到的就是WordPress.不过现在部分个人博客用户开始从WordPress转移到Jekyll上了.Jekyll是一种本地生成静态页面进而线上发布的博客工具,而且现在已经有 ...

  2. 转: VMware 安装mac osx 10.11 安装步骤(一)(from伟东)

    http://blog.csdn.net/soachenshui/article/details/49251513

  3. 深度学习框架-caffe安装-环境[Mac OSX 10.12]

    深度学习框架-caffe安装 [Mac OSX 10.12] [参考资源] 1.英文原文:(使用GPU) [http://hoondy.com/2015/04/03/how-to-install-ca ...

  4. 深度学习框架-caffe安装-Mac OSX 10.12

    p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px ".PingFang SC"; color: #454545 } p.p2 ...

  5. XE6移动开发环境搭建之IOS篇(8):在Mac OSX 10.8中安装XE6的PAServer(有图有真相)

    网上能找到的关于Delphi XE系列的移动开发环境的相关文章甚少,本文尽量以详细的图文内容.傻瓜式的表达来告诉你想要的答案. 原创作品,请尊重作者劳动成果,转载请注明出处!!! 安装PAServer ...

  6. XE6移动开发环境搭建之IOS篇(7):在Mac OSX 10.8中安装Xcode4.6.3(有图有真相)

    网上能找到的关于Delphi XE系列的移动开发环境的相关文章甚少,本文尽量以详细的图文内容.傻瓜式的表达来告诉你想要的答案. 原创作品,请尊重作者劳动成果,转载请注明出处!!! 在安装Xcode前, ...

  7. XE6移动开发环境搭建之IOS篇(4):VMware9里安装Mac OSX 10.8(有图有真相)

    网上能找到的关于Delphi XE系列的移动开发环境的相关文章甚少,本文尽量以详细的图文内容.傻瓜式的表达来告诉你想要的答案. 原创作品,请尊重作者劳动成果,转载请注明出处!!! 以下内容比较长,我们 ...

  8. 虚拟机VMware 9安装苹果MAC OSX 10.8图文教程

    前些天虚拟机VMware Workstation 9出来,相信大家都已经熟悉VM9了,至于MAC OSX 10.8系统,那也是出来一段时间了,本篇文章就是来讲解VMware Workstation 9 ...

  9. XE6移动开发环境搭建之IOS篇(7):在Mac OSX 10.8中安装XE6的PAServer(有图有真相)

    XE6移动开发环境搭建之IOS篇(7):在Mac OSX 10.8中安装XE6的PAServer(有图有真相) 2014-08-22 21:06 网上能找到的关于Delphi XE系列的移动开发环境的 ...

随机推荐

  1. 一周一话题之四(JavaScript、Dom、jQuery全面复习总结<js篇>)

    -->目录导航 一. JavaScript 1. js介绍 2. js语法 3. js进阶 4. js高级 5. 事例代码下载 一. JavaScript 做BS系统,JavaScript的使用 ...

  2. File上传

    http://wenku.baidu.com/link?url=bsufrjDQztceWCUw2gqFeYkL1_95t9yIyV1LfHVYL9URAlpWSK_ALO1bAWSlBdnPXYXE ...

  3. GIT在LINUX下的基本操作

    没办法,看来,VIM技能也要同步练起来了. 离开了WIN的日常应用安乐窝,外面的世界有多精彩? GIT的错了我再改..呵呵 git clone http://username@1.2.3.4/repo ...

  4. 李洪强iOS开发之-cocopods安装

  5. SPRING IN ACTION 第4版笔记-第三章Advancing wiring-001-DataSource在应用和开发环境之间切换 profile

    一. DataSource在应用和开发环境的产生方式不同,可以用srping 的profile管理 Spring’s solution for environment-specific beans i ...

  6. Xamarin 开发常见问题

    原文:Xamarin 开发常见问题 Verify the project is selected to be deployed in the Solution Configuration Manage ...

  7. Python3整理文件

    晚上打算把播放器下载下来的音乐拷贝到mp3里边,但是它是如下形式存放的,相当头痛…… 作为程序员,想到使用python来遍历这个目录,并将有大于限制的音乐文件拷贝到指定目录,相关实现代码如下: # a ...

  8. WPF WebBroswer可以用到的接口

    http://pinvoke.net/default.aspx/Interfaces.DWebBrowserEvents2 [ComImport, SuppressUnmanagedCodeSecur ...

  9. [主机/oracle/msyql] 监控脚本

    为了方便自己测试和监控,写了三个监控的脚本. 分别监控: 主机[cpu,mem,disk,fs,net] oracle mysql 脚本如下: hmon.py: monitor Linux os sy ...

  10. ManagerDay-2

    新工作开始了两个星期 基本没有什么产出,主要还是适应新岗位和学东西.作为一个由高级开发转初级PM的人,要学要接触的还有太多. 公司给我安排了一个刚刚起步的项目,可能也是我从业三年接触到的最大的一个项目 ...