Ubuntu16.04下配置tensorflow-gpu深度学习环境经验记录

    本人作为从今年1月份才刚开始在虚拟机上接触ubuntu系统的菜鸟,终于也成功总结出了ubuntu下怎么配置深度学习tensorflow环境的一套方法。看了不下几十篇前人的博客,希望这一份经验能有所帮助。其中nvidia驱动部分可以说是最烦的,本人在三台电脑(一台13年买的已经被淘汰的GT650M的神舟笔记本(旧电脑),一台联想R720 GTX1050,一台GTX1080主机)上试过,不过记录的不太全。

1       安装NVIDIA驱动:

第一种方法:系统自带 软件和更新 安装

(在联想R720 1050版和13年旧电脑上都试过,可行)

1、系统设置—>软件和更新—>附加驱动—>选择最新的nvidia驱动进行安装,安装完重启(系统会提示) 

Ubuntu16.04下配置tensorflow-gpu深度学习环境经验记录_第1张图片       

图1

2、重启后终端输入nvidia-smi ,输出nvidia显卡信息(图2)

输入 nvidia-settings,显示驱动界面(图3)。

则表示驱动安装成功                                   

Ubuntu16.04下配置tensorflow-gpu深度学习环境经验记录_第2张图片

图2

Ubuntu16.04下配置tensorflow-gpu深度学习环境经验记录_第3张图片
图3

注:这种方法安装完后,把系统自动更新关闭,不然系统自动更新后会使nvidia驱动失效

 

第二种方法:添加官方ppa源

联想R720 1050 成功,1080未试

参考:https://blog.csdn.net/jasonzhangoo/article/details/54866049

1、终端输入 sudo add-apt-repositoryppa:graphics-drivers/ppa

需要输入密码并按enter键确认

2、终端输入 sudo apt-get update

3、终端输入 sudo apt-get install nvidia-384nvidia-settings nvidia-prime 进行安装

4、安装完成后终端输入 nvidia-smi ,会输出如图2所示的界面

                 终端输入nvidia-settings ,查看驱动界面,我这里显示不全

5、重启电脑,再次输入 nvidia-settings 查看驱动界面,显示完全(如图3),表示安装驱动成功

第三种方法:nvidia官网下载最新驱动,自己安装

(GTX1080上成功,

     GTX1050的联想R720 failed : login all the time without -no-opengl-files   and      nvidia-settings error occurs with -no-opengl-files   when bash NVIDIA***.run  )

 

      先卸载之前安装的驱动  sudo apt-get remove –purgenvidia*     未安装过忽视

         1,NVIDIA官网根据显卡型号下载对应驱动

               https://www.geforce.cn/drivers

         2,禁用nouveau,可看⑤2

         3,apt  install linux-source

             apt install linux-headers-x.x.x-x-generic

Ubuntu16.04下配置tensorflow-gpu深度学习环境经验记录_第4张图片

      4,ctrl+alt+F1进入命令行模式

      5,sudo service lightdm stop

      6,   cd 到驱动文件目录,sudo sh./NVIDIA-Linux-x86_64-xxx.xx.run (注意:此时gcc版本需要5.0)

~~~~~~~~~~~~~~~~~~~以下转载自下一行的网页~~~~~~~~~~~~~~~~~~~~~~

         https://blog.csdn.net/stories_untold/article/details/78521925

安装过程中一些选项(有一些问题记不清楚了,只给出需要选择的选项:):
The distribution-provided pre-install script failed! Are you sure you want tocontinue? 选择 yes 继续。
Would you like to register the kernel module souces with DKMS? This will allowDKMS to automatically build a new module, if you install a different kernellater?  选择 No 继续。
问题没记住,选项是:install without signing
问题大概是:Nvidia's 32-bit compatibility libraries? 选择 No 继续。
Would you like to run the nvidia-xconfigutility to automatically update your xconfiguration so that the NVIDIA x driver will be used when you restart x? Anypre-existing x confile will be backed up.  选择 Yes 继续

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

     7,sudo service lightdm start 回到图形界面

②gcc降级(从系统自带的5降到4,因为cuda8.0不支持5以上的gcc版本):

参考 https://www.cnblogs.com/in4ight/p/6626708.html  

1、终端输入 sudo apt-get install gcc-4.8

2、终端输入 gcc --version 查看当前默认版本(还是5)

3、终端输入 sudo update-alternatives --install /usr/bin/gcc gcc/usr/bin/gcc-4.8 100

       或者  cd 到/usr/bin/ ,终端输入 sudo rm gcc (删除当前链接到gcc-5的软链接)

                               再输入   sudo  ln -s   gcc-4.8  gcc (创建链接到gcc-4.8的软链接)

4、终端输入 gcc --version 查看当前默认版本(已变成4.8)

③g++降级(原理同gcc完全一致,将③中的全部gcc换成g++即可)

 

④为当前核安装kernel headers和developmentpackages: 

(若显卡驱动选择第三种方式安装,则可跳过这一步)

1、 终端输入 sudo apt-get install linux-headers-$(uname -r) 

(可能无效果,结果显示升级0个软件包,新安装0个软件包,要卸载0个软件包,有0个软件包未被升级)   

                                                      

 

⑤安装cuda(runfile installation)(网上有的说要装run,有的要说deb,但是用我们用run成功了,就装run吧):

参考 https://blog.csdn.net/ZWX2445205419/article/details/69429518

1、 进入https://developer.nvidia.com/cuda-toolkit-archive  ,选择cuda8.0 GA1或GA2(不清楚GA1和GA2的关系),根据系统信息下载(GA1和GA2都可以,亲测)

2、 输入 lsmod | grep nouveau 查看 nouveau驱动是否被加载,如果有信息输入,则安装参考网址进行禁用nouveau

sudo touch /etc/modprobe.d/blacklist-nouveau.conf

sudo gedit /etc/modprobe.d/blacklist-nouveau.conf

写入blacklist nouveau

          optionsnouveau modeset=0

 保存退出

   sudo update-initramfs -u

3、 将cuda安装文件放在没有中文的目录中,

4、 按住ctrl+alt+F1 进入命令行模式(屏幕上只有黑底白字的模式)

5、 输入用户名+密码后,输入sudo service lightdm stop 以停止X服务(貌似很重要)

6、cd 到cuda安装文件的目录,输入sudo sh cuda_8.0.61_375.26_linux.run(GA2)

7、除了graphics driver (驱动已经安装好了)和cuda8.0 sample 选择n之外,其他都选y图

8、输入sudo service lightdm start 返回图形界面(即平常的桌面)

9、在系统环境里设置CUDA路径:输入 gedit ~/.bashrc  在文本的最后加入这三行:

export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64:/usr/local/cuda-8.0/extras/CUPTI/lib64:$LD_LIBRARY_PATH
export CUDA_HOME=/usr/local/cuda-8.0
export PATH=/usr/local/cuda-8.0/bin:$PATH
10、 终端输入 source ~/.bashrc

⑥安装cudnn

1、解压cudnn5.1(对应cuda8.0的版本)压缩包,
2、cd 到解压的cuda/include中,终端输入sudo cp cudnn.h  /usr/local/cuda/include/
3、cd 到解压的cuda/lib64中,终端输入sudo cp libcudnn*   /usr/local/cuda/lib64/
4、终端输入 sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn* 
安装 anaconda3
1、cd到 anaconda3的目录 ,输入 bash Anaconda3-5.1.0-Linux-x86_64.sh
(安装过程中允许installer在系统环境内写入PATH )
2、       安装完成后,gedit ~/.bashrc  看一下最后有没有anaconda的路径,没有的话  自己加入  export PATH=/home/<此处为用户名>/anaconda3/bin:$PATH
3、      终端输入 source ~/.bashrc
⑧ 建立Anaconda虚拟环境
(faster rcnn tensorflow 是在python2.7下写的,这里建立python2.7的环境)
1、新打开个终端, 输入conda create -n py27(这是虚拟环境的名字) python=2.7
2、输入source activate py27 以激活虚拟环境
⑨安装tensorflow-gpu
1、 先下载好tensorflow-gpu-1.2版本(从清华镜像下载)
2、 激活虚拟环境后,输入 pip install tensorflow_gpu-1.2.0-cp27-none-linux_x86_64.whl
3、 进入python,import tensorflow,未报错即安装成功 

参考:  https://blog.csdn.net/stories_untold/article/details/78521925

         https://blog.csdn.net/cosmoshua/article/details/76644029

        https://blog.csdn.net/tina_ttl/article/details/51762471#6%E5%88%A9%E7%94%A8docker%E5%AE%89%E8%A3%85tensorflow

         https://blog.csdn.net/ZWX2445205419/article/details/69429518

         https://blog.csdn.net/jasonzhangoo/article/details/54866049

        https://www.tensorflow.org/get_started/(科学上网)

 


你可能感兴趣的:(Ubuntu16.04下配置tensorflow-gpu深度学习环境经验记录)