如何为OS X High Sierra 10.13.2上的Tensorflow安装适用于CUDA 9.1的NVIDIA CuDNN v7?

时间:2017-12-20 04:34:58

标签: macos tensorflow cuda macos-high-sierra cudnn

我正在尝试在Mac OSX 10.13.2上从源代码安装Tensorflow-GPU for Python3.6。

安装过程是......

  1. 我为我的Geforce GT-750M安装了Nvidia-Web-Driver并进行了更新。

  2. 已安装并更新至CUDA驱动程序v387.99(GPU驱动程序版本:378.10.10.10.25.102)。

  3. 我尝试为CUDA 9.1安装CuDNN v7。

  4. 但我无法从NVIDIA网站找到适合我的Mac的版本。 https://developer.nvidia.com/rdp/cudnn-download

    我努力安装Tensorflow,尝试了所有我预期的方法,但都失败了,我在下面得到了同样的错误。

      

    nvcc致命:不支持主编译器('Apple clang')的版本('90000')

    当我运行编译CUDA 9.1示例代码的命令时,我甚至遇到了同样的错误。

    $make -C 0_Simple/vectorAdd
    

    错误是......

      

    /Developer/NVIDIA/CUDA-9.1/bin/nvcc-ccbin clang ++ -I ../../ common / inc -m64 -Xcompiler -arch -Xcompiler x86_64 -gencode arch = compute_30,code = sm_30 -gencode arch = compute_35,code = sm_35 -gencode arch = compute_37,code = sm_37 -gencode arch = compute_50,code = sm_50 -gencode arch = compute_52,code = sm_52 -gencode arch = compute_60,code = sm_60 -gencode arch = compute_61,code = sm_61 -gencode arch = compute_70,code = sm_70 -gencode arch = compute_70,code = compute_70 -o vectorAdd.o -c vectorAdd.cu   nvcc致命:不支持主机编译器('Apple clang')的版本('90000')   make:*** [vectorAdd.o]错误1

    我该如何解决这个问题?我需要你们的帮助。

    这些是我的开发环境信息。

    $uname -a
    
      

    Darwin Kenneth-MBP.local 17.3.0 Darwin Kernel Version 17.3.0:Thu Nov 9 18:09:22 PST 2017; root:xnu-4570.31.3~1 / RELEASE_X86_64 x86_64

    $cmake --version
    
      

    cmake版本3.10.1

    $clang --version
    
      

    Apple LLVM 9.0.0版(clang-900.0.39.2)   目标:x86_64-apple-darwin17.3.0   线程模型:posix   InstalledDir:/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin

    $nvcc --version
    
      

    nvcc:NVIDIA(R)Cuda编译器驱动程序   版权所有(c)2005-2017 NVIDIA Corporation   建立于Fri_Nov__3_21:08:57_CDT_2017   Cuda编译工具,版本9.1,V9.1.85

    $git describe --tags # Tensorflow 
    
      

    V1.3.0-rc1-6207-ge210cb140a

    GPU驱动程序 - NVIDIA GT 750M

      

    GPU驱动程序版本:378.10.10.10.25.102,

    CUDA驱动程序

      

    CUDA驱动程序版本:387.99

    提前谢谢。

1 个答案:

答案 0 :(得分:1)

您可能想要更新此帖子的标题。这里有很多内容,似乎主要是关于在不支持的配置中安装Tensorflow。

首先,cuDNN仅适用于CUDA 9.0,所以我要远离CUDA 9.1。在macOS 10.13上构建CUDA应用程序的技巧是使用Xcode 8.2并在构建期间切换命令行工具。 Xcode 9中较新的编译器无法使用nvcc。

为了构建Tensorflow,可以制作一些补丁,引用here。黄金在评论中(特别是OpenMP部分)。别忘了禁用SIP(系统完整性保护)。

我在分支v1-4-1-high-sierra-cuda中有一个Tensorflow分支,其中已经应用了修改和一个超级基本的build_high_sierra.sh脚本,如果你想尝试一下。在12核野兽上编译需要15分钟以上,因此请注意(并确保将COMPILE_CORES从24减少。)

构建屁股会带来痛苦。您可以尝试我在发布部分中发布的预编译二进制文件之一。只要您安装了先决条件(CUDA 9.0和适当的cuDNN),无论如何您都需要进行构建,它可能会有效。

https://github.com/pestilence669/tensorflow/releases/tag/1.4.1_high_sierra_cuda_xmas