从源码编译TensorFlow并安装

作者: 北静王 | 来源:发表于2017-07-06 02:16 被阅读396次

    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开发环境

    NVidia和CUAD

    这里说的CUDA开发环境包括driver和cudnn两个东西,其中driver可以从官网下载的Tookit安装包安装,而cudnn则需要自己下载后手动放到cuda的文件夹中。

    1.1 CUDA
    Tensorflow官网中指明了如果安装支持GPU版本的要求
    -> 安装CUDA8.0
    -> 安装cuDNN5.1
    -> 你的GPU的计算能力需要至少3.0[查看详细]
    1. 在NVIDIA的官网上按照Toolkit的步骤来下载相应系统的版本,然后安装。在Macbook上,安装之后你的硬盘中会多出两个文件夹来。分别是/usr/local/cuda/Developer/NVIDIA/两个文件夹。其中一个

    以上提出的是目前最优要求,如果是你的环境和硬件不满足的话,那么你需要通过源码自己编译

    1.2 cuDNN

    终极大法

    如果你按照官网给出的各种方式(无论是从wheel安装,还是从source code安装,都出现不同程度的错误,主要是GPU版本怎么弄也不行)还是出错的话,那么你可以尝试下面的方法:

    Warning: 下面的方法将会关闭你的Macbook的安全选项,使得程序能够以root的权限运行,如果不放心可以略过。

    终结大法介绍:

    1. 关闭系统的SIP:
      ->重启mac
      ->command+R组合键进入Recovery模式
      ->打开Terminal,键入 csrutil disable 命令关闭系统的SIP
      ->重启
    2. .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
    

    参考

    1. Tensorflow官网安装指南

    相关文章

      网友评论

        本文标题:从源码编译TensorFlow并安装

        本文链接:https://www.haomeiwen.com/subject/nzvxattx.html