• 记录下自己安装cuda以及cudnn


    之前已经装过一次了,不过没有做记录,现在又要翻一堆博客安装,长点记性,自己记录下。

    环境 ubuntu16.04  python2.7

    商家送过来时候已经装好了显卡驱动,所以省去了一大麻烦。

    剩下的就是安装cuda和cudnn。

    显卡驱动与cuda版本是有对应关系的,官网上贴出的匹配表

    我的显卡驱动是384.130,与cuda8对应,于是下载cuda8,官网进去后就是cuda10,旧版本的地址 https://developer.nvidia.com/cuda-toolkit-archive

    下载好后,一路回车,然后在是否安装显卡驱动时输入no,因为显卡驱动已经有了,选yes会被覆盖掉。

    安装的默认路径是/usr/local/cuda-8.0,我们需要手动添加该路径到环境中,如下

    $ sudo gedit ~/.bashrc


    然后在后面添加两行

    export PATH=/usr/local/cuda-8.0/bin${PATH:+:${PATH}}

    export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}

    另外在profile中也要添加上面两行

    $ sudo gedit /etc/profile

    重启一下,输入nvcc -V

    输出如下

    nvcc: NVIDIA (R) Cuda compiler driver

    Copyright (c) 2005-2016 NVIDIA Corporation

    Built on Tue_Jan_10_13:22:03_CST_2017

    Cuda compilation tools, release 8.0, V8.0.61

    此时,cuda已经装好了,接下来安装cudnn.

    cudnn的版本与cuda也是有对应关系的,如下

    看到网上的教程中cuda8与cudnn6搭配的比较多,于是我采用cudnn6.

    下载cudnn需要注册帐号,挺麻烦的,看到有一个博客中直接用wget下载,试了一下,速度飞快,还省去了注册帐号的麻烦。

    wget http://developer.download.nvidia.com/compute/redist/cudnn/v6.0/cudnn-8.0-linux-x64-v6.0.tgz

    然后需要解压,并将头文件和动态链接库复制到cuda路径中,

    $ tar -zxvf cudnn-8.0-linux-x64-v6.0.tgz

    $ sudo cp cuda/include/cudnn.h /usr/local/cuda/include/

    $ sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64/

    $ sudo chmod a+r /usr/local/cuda/include/cudnn.h

    $ sudo chmod a+r /usr/local/cuda/lib64/libcudnn*

    有好多教程最后要创建软链接,我没有创建,直接安装了tensorflow-gpu

    pip install tensorflow-gpu

    默认安装的是1.12,版本应该是高了,结果需要cuda9,于是卸载了,重新安装1.3

    pip install tensorflow-gpu==1.3

    用python测试了一下,输出如下

        Python 2.7.12 (default, Nov 12 2018, 14:36:49) 

    [GCC 5.4.0 20160609] on linux2
    Type "help", "copyright", "credits" or "license" for more information.
    >>> import tensorflow as tf
    >>> tf.Session()
    2018-11-20 00:34:37.313431: W tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE4.1 instructions, but these are available on your machine and could speed up CPU computations.
    2018-11-20 00:34:37.313493: W tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE4.2 instructions, but these are available on your machine and could speed up CPU computations.
    2018-11-20 00:34:37.313515: W tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use AVX instructions, but these are available on your machine and could speed up CPU computations.
    2018-11-20 00:34:37.313538: W tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use AVX2 instructions, but these are available on your machine and could speed up CPU computations.
    2018-11-20 00:34:37.313559: W tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use FMA instructions, but these are available on your machine and could speed up CPU computations.
    2018-11-20 00:34:37.467953: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:893] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
    2018-11-20 00:34:37.468324: I tensorflow/core/common_runtime/gpu/gpu_device.cc:955] Found device 0 with properties:
    name: GeForce GTX 1080 Ti
    major: 6 minor: 1 memoryClockRate (GHz) 1.582
    pciBusID 0000:01:00.0
    Total memory: 10.91GiB
    Free memory: 10.54GiB
    2018-11-20 00:34:37.468342: I tensorflow/core/common_runtime/gpu/gpu_device.cc:976] DMA: 0
    2018-11-20 00:34:37.468348: I tensorflow/core/common_runtime/gpu/gpu_device.cc:986] 0:   Y
    2018-11-20 00:34:37.468355: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1045] Creating TensorFlow device (/gpu:0) -> (device: 0, name: GeForce GTX 1080 Ti, pci bus id: 0000:01:00.0)
    <tensorflow.python.client.session.Session object at 0x7f93d7d96250>
    一切正常,安装成功。

    参考资料
    https://blog.csdn.net/weixin_41864878/article/details/79621210
    https://www.cnblogs.com/wmxfd/p/installation_of_nvidia_graphics_driver_and_cuda8_and_cudnn6.html
    https://blog.csdn.net/qq_34057614/article/details/81228746
    https://blog.csdn.net/xiangxianghehe/article/details/79177833
    https://blog.csdn.net/qq_38522539/article/details/80678412
    https://www.cnblogs.com/chay/p/8038251.html#_label3
    https://blog.csdn.net/zong596568821xp/article/details/80410416
    https://blog.csdn.net/twt520ly/article/details/79415787
     
     
    
    


  • 相关阅读:
    vue项目中 添加全局的随机数、随机数数组filter过滤器,并在vue的methods中使用filter过滤器
    配置如何在公网环境访问本地开发环境的微服务nat123一款很好用的公网映射工具
    使用vue开发简单的table表格插件,表头固定,内容区可滚动
    springboot study
    Clickhouse上用Order By保证绝对正确结果但代价是性能
    Java SE学习笔记
    集合与泛型
    Java常用类
    Maven
    protobuf学习详解
  • 原文地址:https://www.cnblogs.com/wzyuan/p/9986793.html
Copyright © 2020-2023  润新知