Ubuntu18.04 Tensorflow-gpu==1.14安装

版本信息

系统版本:ubuntu 18.04
系统架构:x86_64
nvidia driver 驱动版本:NVIDIA-Linux-x86_64-440.100 (GPU:2080TI)
CUDA版本:10.0
cuDNN:7.6.4
gcc:4.8.5
tensorflow-gpu:1.14.0

nvidia

禁用nouveau

sudo vim /etc/modprobe.d/blacklist.conf 在文本最后添加:

 blacklist nouveau
 options nouveau modeset=0

然后执行:sudo update-initramfs -u

重启机器后,执行以下命令,如果没有屏幕输出,说明禁用nouveau成功:lsmod | grep nouveau

驱动下载

官网下载地址:https://www.nvidia.cn/Download/index.aspx?lang=cn

卸载旧驱动

重启后,使用快捷键进入文本模式,然后输入用户名密码就可:Ctrl-Alt+F1 || 或使用SSH连接

执行以下命令禁用X-Window服务,否则无法安装显卡驱动:sudo service lightdm stop || 有可能没安装lightdm,则直接跳过

执行以下命令卸载原有显卡驱动:注意匹配自己下载的驱动版本

 sudo apt-get remove --purge nvidia*
 sudo apt-get autoremove
 sudo chmod +x NVIDIA-Linux-x86_64-4**.**.run    # 源显卡驱动  
 sudo ./NVIDIA-Linux-x86_64-4**.**.run --uninstall # 默认即可

重启

安装新驱动

执行驱动文件即可安装新驱动,一直默认即可:

sudo ./NVIDIA-Linux-x86_64-440.100.run -no-opengl-files

执行以下命令启动X-Window服务

sudo service lightdm start

最后执行重启命令,重启系统:

sudo reboot


gcc

查看gcc版本:gcc --version
若gcc版本太高就更改版本:sudo apt-get install gcc-4.8 g++-4.8
切换gcc版本:sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 100
激活生效:sudo update-alternatives --config gcc


CUDA

驱动下载

  • 下载地址:https://developer.nvidia.com/rdp/cudnn-archive

驱动安装

  • sudo chmod a+x ....run

  • sudo ./...run

      Do you accept the previously read EULA?   # ctrl+c 可加快速度
      accept/decline/quit: accept
      
      Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 410.48?
      (y)es/(n)o/(q)uit: n
      
      Install the CUDA 10.0 Toolkit?
      (y)es/(n)o/(q)uit: y
      
      Enter Toolkit Location
       [ default is /usr/local/cuda-10.0 ]: 
      
      Do you want to install a symbolic link at /usr/local/cuda?
      (y)es/(n)o/(q)uit: y
      
      Install the CUDA 10.0 Samples?
      (y)es/(n)o/(q)uit: y
      
      Enter CUDA Samples Location
       [ default is /home/user ]: 
    
    # 安装结果
    - Driver:   Not Selected
    Toolkit:  Installed in /usr/local/cuda-10.0
    Samples:  Installed in /home/***, but missing recommended libraries
      Please make sure that
      - PATH includes /usr/local/cuda-10.0/bin
      - LD_LIBRARY_PATH includes /usr/local/cuda-10.0/lib64, or, add /usr/local/cuda-10.0/lib64 to /etc/ld.so.conf and run ldconfig as root
      To uninstall the CUDA Toolkit, run the uninstall script in /usr/local/cuda-10.0/bin
    
  • 添加环境变量

    • vim ~/.bashrc

        # >>> coda initialize >>>
        export PATH="/usr/local/cuda-10.0/bin:$PATH"
        export LD_LIBRARY_PATH="/usr/local/cuda-10.0/lib64/:$LD_LIBRARY_PATH"
        # <<< coda initialize <<<
      
    • 激活生效:source ~/.bashrc

    • nvcc --version查看版本信息是否一致

  • 测试

    • cd ~/NVIDIA_CUDA-10.0_Samples/1_Utilities/deviceQuery
    • sudo make
    • ./deviceQuery
    • 显示PASS即通过

CUDNN

驱动下载

下载地址:https://developer.nvidia.com/rdp/cudnn-archive

驱动安装

方案一:下载.tgz 文件,复制:
  1. 解压 sudo tar -xvf cudnn-10.0-linux-x64-v7.6.5.32.tgz

  2. 复制文件

    sudo cp cuda/include/cudnn.h /usr/local/cuda-10.0/include/
    sudo cp cuda/lib64/libcudnn* /usr/local/cuda-10.0/lib64/
    sudo chmod a+r /usr/local/cuda-10.0/include/cudnn.h
    sudo chmod a+r /usr/local/cuda-10.0/lib64/libcudnn*
    
  3. 测试

     cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2  #查看cudnn的版本
    
方案二:下载DEB文件,并安装(建议ubuntu用户使用该方案):
  1. 下载cudnn DEB文件 安装

     sudo dpkg -i libcudnn7_7.6.4.38-1+cuda10.0_amd64.deb      #安装cudnn-runtime库
     sudo dpkg -i libcudnn7-dev_7.6.4.38-1+cuda10.0_amd64.deb  #安装cudnn-developer库
     sudo dpkg -i libcudnn7-doc_7.6.4.38-1+cuda10.0_amd64.deb  #安装cudnn代码样本和使用者指引
    
  2. 测试

     # 测试cudnn
     cp -r /usr/src/cudnn_samples_v7/ $HOME                 #拷贝测试样例到主文件夹
     cd  $HOME/cudnn_samples_v7/mnistCUDNN                  #进入样例下的mnistCUDNN目录
     make clean && make                                     #编译mnistCUDNN样例
     ./mnistCUDNN                                           #运行编译好的mnistCUDNN样例
     # Test passed 即为通过
    

    make过程中如遇到WARNING - FreeImage is not set up correctly. Please ensure FreeImage is set up correctly.-->,可能没创建cuda文件夹的软连接,如检查缺失没有, sudo ln -s cuda-10.0/ cuda 创建软连接重试即可


Anaconda

  1. 安装步骤

    sudo sh A...sh
    Do you accept the license terms? [yes|no] yes
    path choose default
    by running conda init? [yes|no] yes
    source ~/.bashrc 
    
  2. 源设置

    1. 首先将对应镜像源的地址通过 conda config --add 命令加入 conda 的 channel 列表中,可以选择添加整个镜像源的地址或只添加与 pytorch 相关的镜像源的地址。(或者更傻瓜的方式,将 ~/.condarc 文件备份后,将清华 Anaconda 镜像源页面中的配置文件内容复制至 ~/.condarc 文件中)

      conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/       #添加整个镜像源的地址
      conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/     #添加镜像源中 pytorch 对应的地址
      
    2. 通过 conda config 命令设置使用 conda 进行软件包下载时显示软件包的 url 地址,这样就可以看到下载软件包的时候是否是从国内镜像源下载。具体命令为 conda config --set show_channel_urls yes。(Windows 环境中用户主目录下会生成对应的 .condarc 文件,里面保存一些与源相关的信息)

      conda config --set show_channel_urls yes #下载时显示软件包的来源

    3. 通过 conda config --show-sources 命令查看添加的软件源,确定是否添加有效。

      conda config --show-sources #查看已有的软件源


Tensorflow

  1. 安装

    pip install tensorflow==1.14.0
    pip install tensorflow-gpu==1.14.0
    
  2. 测试

    # python环境
    import tensorflow as tf
    tf.test.is_gpu_available()
    # 最后显示True即可调用gpu
    

奇奇怪怪的问题

  1. 设置固定IP后,修改DNS

  2. sudo make 报错 g++: No such file or directory
    缺少配置g++

  3. anaconda无权限

    开放anaconda安装文件夹权限: sudo chown -R user /home/ubuntu/anaconda3

  4. WARNING - FreeImage is not set up correctly. Please ensure FreeImage is set up correctly.

    • 缺少cuda软链接
    • sudo ln -s cuda-10.0/ cuda
  5. pip No such file or directory: ‘c++’

    尝试升级pip版本

  6. numpy与tensorflow版本问题

    • 警告信息: FutureWarning: Passing (type, 1) or ‘1type’ as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / ‘(1,)type’.

    • pip install -U -i https://pypi.tuna.tsinghua.edu.cn/simple numpy==1.16.0

    • tensorflow numpy cuda cudnn
      1.14 1.16.0 10.0 7.6.4
  7. WARNING:root:Limited tf.compat.v2.summary API due to missing TensorBoard installation.

    重新安装tensorboard


总结

  • 注意版本对齐:nvidia、cuda、cudn、gcc、tensorflow、numpy TF官方版本
  • 期间很多奇奇怪怪问题,多查查资料就行啦

参考

Tensorflow

NVIDIA CUDNN DOCUMENTATION

ubuntu18.04安装tensorflow-gpu==1.14.0(CUDA10.0+cuDNN7.4.1)

Ubuntu18.04安装tensorflow-gpu(2019.7新版cuDNN-7.6.2)

Ubuntu下安装INVIDIA显卡驱动(避免循环登录问题)

Ubuntu18.04安装CUDA10、CUDNN

另附

安装docker-ce和nvidia-docker2

你可能感兴趣的:(基础环境构建,ubuntu,cuda,tensorflow,cudnn,linux)