宝塔服务器面板,一键全能部署及管理,送你10850元礼包,点我领取

本文详细记录了tensorflow2配置的详细过程,如有疑问可以通过私信与我交流。

关注公众号 打代码的苏比特,获取java面试百问百答面试高频算法题~

安装环境

  • ubuntu 16.04
  • GPU tesla V100

本文记录的安装程序版本为:

  • Driver Version 440.64.00

  • CUDA 10.2

文章目录

    • 安装环境
    • 一、安装NVIDIA驱动程序
    • 二、安装CUDA
    • 三、安装cudnn
    • 四、安装配置anaconda
    • 五、创建虚环境安装tensorflow-gpu
    • 六、配置jupyter notebook远程访问

一、安装NVIDIA驱动程序

  1. 下载合适的NVIDIA驱动程序

    进入NVIDIA官网NAVIDIA官网,下载与本机显卡以及操作系统相对应的驱动程序。我的环境配置为ubuntu 16.04,显卡为Tesla V100,CUDA版本选择10.2,按照我的配置,选择的信息如下:

ubuntu16.04安装tensorflow2(超详细)-编程部落

  1. 禁用nouveau

    鉴于禁用nouveau后,ubuntu有可能启动黑屏,并且按ctrl+alt+f1键无用,可以在禁用nouveau之前先安装openssh-server,这样子启动之后就可以通过远程的方式安装驱动。 关于openssh-server的安装可以参考:https://www.cnblogs.com/smallredness/p/11141719.html

    执行如下命令

    sudo vim /etc/modprobe.d/blacklist.conf 
    

    在打开的文本最后添加如下代码后保存退出

    blacklist nouveau
    options nouveau modeset=0
    

    保存完成后,执行

    sudo update-initramfs -u
    

    随后执行重启操作,如果重启后黑屏,这是正常的,按Ctrl-Alt+F1进入命令行界面。如若上述操作没有反应,可以用上文中提到的ssh远程连接的方式,来执行后续操作。

    重启后,执行如下命令,没有输出则证明nouveau禁用成功。

    lsmod | grep nouveau
    
  2. 用命令安装驱动

    在下载的驱动的保存目录执行如下命令,给驱动run文件赋予执行权限

    sudo chmod +x NVIDIA-*.run
    

    执行如下命令,使用run文件安装驱动

    sudo ./NVIDIA-*.run –no-opengl-files –no-x-check
    

    其中一些选项的选择如下

    The distribution-provided pre-install script failed! Are you sure you want to continue? 选择 yes 继续
    Would you like to register the kernel module souces with DKMS? This will allow DKMS to automatically build a new module, if you install a different kernel later? 选择 No 继续
    Nvidia’s 32-bit compatibility libraries? 选择 No 继续
    Would you like to run the nvidia-xconfigutility to automatically update your x configuration so that the NVIDIA x driver will be used when you restart x? Any pre-existing x confile will be backed up. 选择 Yes 继续
    

    安装完成后输入如下命令,出现如下界面显示出显卡信息,则安装成功

    nvidia-smi
    

ubuntu16.04安装tensorflow2(超详细)-编程部落
安装完成没有报错之后,执行如下命令,启动图形界面即可将ubuntu图形界面恢复显示

sudo service lightdm start

二、安装CUDA

  1. 选择对应的版本,下载CUDA安装文件,我这里下载10.2的版本,官方下载地址

ubuntu16.04安装tensorflow2(超详细)-编程部落

  1. 在文件下载的保存路径,执行如下命令,开始安装CUDA

    sudo chmod +x cuda_*.run
    sudo ./cuda_*.run --no-opengl-libs
    
  2. 安装过程中的配置选项如下

    1 accept #同意安装
    2 n #不安装Driver,因为已安装最新驱动
    3 y #安装CUDA Toolkit
    4 <Enter> #安装到默认目录
    5 y #创建安装目录的软链接
    6 n #不复制Samples,因为在安装目录下有/samples
    
  3. 安装完成后,执行如下三条命令,编译并测试设备deviceQuery

    cd /usr/local/cuda-8.0/samples/1_Utilities/deviceQuery
    sudo make 
    ./deviceQuery
    
  4. 执行如下三条命令,编译并测试带宽 bandwidthTest

    cd ../bandwidthTest
    sudo make
    ./bandwidthTest
    
  5. 如果这两个测试的最后都没有报错,顺利执行,说明CUDA安装成功

  6. 执行如下命令,配置CUDA环境变量

    sudo gedit ~/.bashrc
    

    将安装路径添加到文本末尾(此处需要按照自己的实际安装路径与安装版本,修改对应的文本)

    export PATH=/usr/local/cuda-10.2/bin:$PATH
    export LD_LIBRARY_PATH=/usr/local/cuda-10.2/lib64:$LD_LIBRARY_PATH
    

    执行如下命令,使路径生效

     . ~/.bashrc
    
  7. 终端输入如下命令,如果输出CUDA版本信息,这CUDA配置大功告成啦!

    nvcc -V
    

三、安装cudnn

  1. 在官网下载CUDA对应的cudnn版本官网下载链接

ubuntu16.04安装tensorflow2(超详细)-编程部落

  1. 下载完成以后将其解压到Cuda的目录当中,依次执行如下命令(命令中的文件名以及路径需要按照你的环境进行更改)

    tar -xzvf 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 /usr/local/cuda/lib64/libcudnn*
    

四、安装配置anaconda

  1. 在清华镜像站下载好anaconda的.sh安装包

  2. sh ./Anaconda*
    进行安装,安装过程中,可以选择yes自动配置环境变量,选择No不安装vscode
    
  3. 安装完成后不再需要配置环境变量,添加国内清华源

    conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
    conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
    conda config --set show_channel_urls yes
    

五、创建虚环境安装tensorflow-gpu

  1. 执行如下命令

    //查看存在的环境列表
    conda env list
    //创建虚环境,此时可以指定环境名称和python版本
    conda create --name YourEnvName python=3.6
    //激活虚环境
    source activate YourEnvName
    //安装依赖包
    conda install pandas
    conda install Scikit-learn
    pip install matplotlib
    
  2. 安装tensorflow-gpu,指定了源和安装版本

conda install --channel https://mirrors.ustc.edu.cn/anaconda/pkgs/main/ tensorflow-gpu==2.1.0

六、配置jupyter notebook远程访问

配置远程访问jupyter notebook,这样子就可以在自己的电脑上跑代码啦~~~

  1. 在终端输入python,进入ipython,输入如下代码,将输出的sha1值记录下来

    from notebook.auth import passwd
    passwd() 
    Enter password: 
    Verify password: 
    //会输出一个sha1值,记住这个值
    Out[2]: 'sha1:94226d8776a2:fda32aaaef068f2852806ecbbc7ba5439558d057'
    
  2. 修改配置文件

    gedit .jupyter/jupyter_notebook_config.py
    

    打开配置文件,按如下方式配置

    c.NotebookApp.ip='0.0.0.0' # 配置为所有ip都可访问
    c.NotebookApp.password = u'sha1:94226d8776a2:fda32aaaef068f2852806ecbbc7ba5439558d057' # ipython下生成的密文
    c.NotebookApp.open_browser = False  # 默认不打开浏览器
    c.NotebookApp.port =8888 # 任意端口,此设为常用端口
    c.NotebookApp.notebook_dir = '/home/ubuntu/jupyter' # jupyter notebook的工作目录
    
  3. 启动 jupyter notebook

    在终端输入,启动jupyter notebook

    jupyter notebook
    
  4. 远程访问服务器

    在浏览器中输入地址http://serverIP:8888/,按提示输入先前设置好的密码

ubuntu16.04安装tensorflow2(超详细)-编程部落

程序已经在服务器端工作

ubuntu16.04安装tensorflow2(超详细)-编程部落