Ubuntu16或者Ubuntu14 配置NVIDIA、CUDA以及CUDNN

说明,本文不但适合Ubuntu14,同样适合Ubuntu16,在Ubuntu14之上测试好用之后,在Ubuntu16上面再次测试好用,配置方式一样

最近组里面的服务器本来好好的,不知道怎么抽风配置全部不好用了。只有我来自己安装一遍了,真是怕什么来什么

1.首先说系统安装--Ubuntu

起初安装的Ubuntu16,不知道怎么回事儿,中间始终安装不成功,始终报一个ERROR,还打不开图像界面,网上也查不到,最后就放弃16这个版本的,改装14.04版本。这回是一路顺畅,

  1. 可是在安装完之后,出现一个ERROR,大体意思是:update过期,这个简单,网上的解决方案是直接更新即可。
  2. 进入tty界面(纯文字界面)黑屏,进入文字界面的快捷键:Ctrl+Alt+(F1 或 F2 或 ...... F6),网上有说这是虚拟界面,一共有6个,文字界面的作用是关掉其他进程,图形界面Ctrl+Alt+F7,黑屏的解决方案是:vi /etc/default/grub 将GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" 值修改为"nomodeset"
2.安装NVIDIA驱动
  1. 保证你的驱动具有操作权限,在驱动路径下,键入: sudo chmod 755 NVIDIA-Linux-x86_64-375.25.run
  2. 再进入tty界面,保证所有进程都全部关闭,因为有进程用到显卡的话,就不能成功安装。
  3. Ctrl+Alt+F1计入tty模式
  4. 键入:sudo /etc/init.d/lightdm stop
  5. 键入:sudo /home/NVIDIA.run(你的NVIDIA驱动)
  6. 键入:sudo reboot(重启)
  7. 如果安装过程中选项错误 ERROR:The Nouveau kernel driver is currently in use by your system.This driver is incompatible with the NVIDIA driver .... 意思是Nouveau在你的系统中运行,Nouveau 与NVIDIA官方驱动不兼容,百度之后发现,Nouvean是NVIDIA显卡的一种开源驱动,而不是官方驱动,所以你需要关掉这个驱动。
    sudo vi /etc/modprobe.d/blacklist.conf
    在该文件最后添加如下:
    blacklist vga16fb
    blacklist nouveau
    blacklist rivafb
    blacklist rivatv
    blacklist nvidiafb
    sudo update-initramfs -u
  8. 或者出现错误,可以通过 sudo apt-get autoremove --purge nvidia-* 以及命令 sudo apt-get remove --purge nvidia-*卸载显卡驱动,然后重装
3.安装CUDA
  1. 进入tty模式
  2. 键入:sudo /etc/init.d/lightdm stop
  3. 键入:sudo /home/CUDA.run(你的CUDA驱动)
  4. 这个时候会有很多提示需要你确认,由于在第一步已经成功安装了显卡驱动,所以这里就不需要再次安装了,因此 ,Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 3XX.XX ?这里选择 no,其余都是yes或者accept
  5. 装完毕之后,会显示如下
  6.     
        
    Driver: Not Selected Toolkit: Installed in /usr/local/cuda-8.0 Samples: Installed in /home/admi,but missing recommended library 缺少依赖库
  7. 安装依赖库
    sudo apt-get install freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libgl1-mesa-glx libglu1-mesa libglu1-mesa-dev

  8. 配置环境变量
    sudo vi .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}}

  9. 验证是否成功 键入:nvidia-smi 以及nvcc -V
装完之后安装Theano,这部分网上有很多,不做赘述,安装之后,在Python之中
  1. import theano
  2. 出现问题:CNMEM is disable,CuDNN not available
  3. 解决办法:
    下载cnmen
    进入到cnmen文件
    mkdir build #创建文件
    cd build
    cmake ..
    make
    然后,将include/cnmem.h文件以及build/libcnmen.so文件分别对应放进CUDA的include,lib64路径中
    最后配置文件 ,在 .theanorc中添加
    [lib]
    cnmem=1
    

  4. 再次测试
  5. >>>import theano
  6. >>> Using gpu device 0: GeForce GTX TITAN X (CNMeM is enabled with initial size:95.0% of memory,cuDNN 5005)
  7. 成功!
这段时间,我们的机子又抽风,不约而同的出现同一个问题:当我们在python环境下import theano时候出现问题:WARNING (theano.sandbox.cuda): CUDA is installed,but device gpu is not available (unknown error) 。同时在终端中输入nvidia-smi提示说驱动为安装
尝试了各种解决办法,无解。最后 先卸载了原来的驱动(提示说未安装!?!),再按照上面的步骤重新安装驱动,但是在安装驱动的时候,提示已经安装成功了一个驱动,是否继续安装,我们的选择是继续重新安装

相关文章

文章浏览阅读2.3k次,点赞4次,收藏22次。最近安装了CARLA预...
文章浏览阅读6.3k次,点赞5次,收藏15次。在清华镜像中下载U...
文章浏览阅读5k次。linux环境, python3.7.问题描述: 安装...
文章浏览阅读4.2k次,点赞4次,收藏17次。要安装这个 standa...
文章浏览阅读894次,点赞51次,收藏31次。在安卓使用vscode主...