【ubuntu20.04+tensorflow-gpu1.14配置】

目录

总结出两种方法

  • 个人目录 下载cuda和cudnn
  • anaconda虚拟环境 下载cudatoolkit和cudnn

(注:不必追求严格与测试版本一致)

0. 版本注意事项说明

  1. nvidia-smi/nvcc -V 查看当前支持的cuda最高版本(下图为11.6)
    最高CUDA版本
  2. tensorflow-gpu-1.14 与 cuda10.0、cudnn7.4 匹配
    tensorflow匹配环境

1. 个人目录下载后配置系统环境变量

  • gcc 降级
    https://blog.csdn.net/m0_55019159/article/details/132558016

    ubuntu20.04自带gcc-9,而 cuda10.0 需要 gcc-4.8/gcc-7.3.1 (见tensorflow-gpu-1.14+)

    先利用 sudo apt-get 安装所需要的gcc 版本,然后利用 sudo update-alternatives 方法降级,将gcc-7排在前面,给予更高的优先级。

  • 从官网下载 cuda10.0
    https://developer.nvidia.com/cuda-10.0-download-archive

  • 选择对应的参数
    这里选择 ubuntu18.04 版本,确定好下载类型为 runfile(local) 后,会展示出下载按钮,选择第一项进行下载,得到cuda_10.0.130_410.48_linux.run文件。cuda下载系统参数
    基础下载说明里提到运行命令,接着按照官方说明进行安装。下载选第一项

  • 安装指令
    在个人目录下,以“/home/xxx”为例,运行指令
    (sudo指令需要提前找root用户获取权限 )

sudo sh cuda_10.0.130_410.48_linux.run
  • 回答问题
    接着Enter直到进度 100%。之后会出现需要回答的问题:
    1. accept (EULA)
    2. y (new configuration)
    3. n (don’t need new driver)
    4. y (install)
    5. 默认路径为/usr/local/cuda-10.0,可以直接Enter进行下一项,或者改为个人目录下的路径。此处按照后者,提前新建一个目录名为cuda-10.0,将路径修改为/home/xxx/cuda-10.0
    6. n (don’t need a symbolic link)
    7. 测试样本可选可不选,如果选择y,之后会有新的选项确认默认安装测试样本的路径为/home/xxx
    8. 等待安装完成
  • 配置个人目录下系统环境变量
    在/home/xxx目录下,打开./bashrc 并编辑,然后退出,使环境变量生效
vim ~/.bashrc  # open ./bashrc file

export CUDA_HOME=/home/xxx/cuda-10.0  # add the following sequences and exit ./bashrc file
export PATH=$CUDA_HOME/bin:$PATH
export LD_LIBRARY_PATH=$CUDA_HOME/lib64:$LD_LIBRARY_PATH

source ~/.bashrc  # save and activate ./bashrc file
  • 验证cuda10.0
    通过nvcc -V命令,显示出当前使用的cuda版本10.0
  • 下载并安装cudnn
    需要登陆nvidia然后才可以下载,下载至个人目录下
    https://developer.nvidia.com/rdp/cudnn-archive
    文件名为 cudnn-10.0-linux-x64-v7.4.2.24.tgz
tar -zxvf cudnn-10.0-linux-x64-v7.4.2.24.tgz  # unzip
  • 解压后得到cuda文件夹,进行复制
sudo cp cuda/include/cudnn* cuda-10.0/include
sudo cp cuda/lib64/libcudnn* cuda-10.0/lib64
  • 赋予权限
sudo chmod a+r cuda-10.0/include/cudnn* 
sudo chmod a+r cuda-10.0/lib64/libcudnn*
  • 查看cudnn版本
cat cuda-10.0/include/cudnn.h | grep CUDNN_MAJOR -A 2

(参考
https://blog.csdn.net/JineD/article/details/131201121

https://blog.csdn.net/mofy_/article/details/122791758?spm=1001.2101.3001.6650.1&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-1-122791758-blog-132558016.235%5Ev43%5Econtrol&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-1-122791758-blog-132558016.235%5Ev43%5Econtrol&utm_relevant_index=2

https://blog.csdn.net/zjc910997316/article/details/102883644

2. anaconda配置所有环境(过程简便,但容易出现不兼容问题)

  • 首先下载anaconda,得到 anaconda_name.sh 文件
    https://www.anaconda.com/download#downloads
    运行 bash anaconda_name.sh 命令,按照提示完成初始化
  • 创建新的虚拟环境
    名称为 env_name ,附带的包有python3.6、numpy、pandas…
conda create -n env_name python=3.6 numpy pandas
  • 新虚拟环境下,安装tensorflow-gpu-1.14
pip install tensorflow-gpu==1.14.0
  • 新虚拟环境下,安装 cuda 和 cudnn
conda install cudatoolkit=10.0
conda install cudnn-7

(参考
https://spacevision.blog.csdn.net/article/details/106898050?spm=1001.2101.3001.6650.1&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-1-106898050-blog-113628392.235%5Ev43%5Econtrol&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-1-106898050-blog-113628392.235%5Ev43%5Econtrol&utm_relevant_index=2

3. 验证tensorflow-gpu

  • 在虚拟环境中,打开python
import tensorflow as tf
tf.test.is_gpu_available()   # The result is "True"

4. 一些细节

相关推荐

  1. Ubuntu2204配置samba

    2024-03-25 17:36:03       49 阅读
  2. tensorflow调用gpu时报错:找不到cupti64_112.dll

    2024-03-25 17:36:03       25 阅读
  3. xshell ubuntu 安装 tensorflow

    2024-03-25 17:36:03       20 阅读
  4. tensorflow_gpu】安装合集

    2024-03-25 17:36:03       18 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-03-25 17:36:03       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-25 17:36:03       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-25 17:36:03       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-25 17:36:03       20 阅读

热门阅读

  1. Day28:学习SpringCloud

    2024-03-25 17:36:03       17 阅读
  2. 为什么大家都在推美国MSB?

    2024-03-25 17:36:03       20 阅读
  3. 编程生活day3--Left Pad、出生年

    2024-03-25 17:36:03       17 阅读
  4. 服务器如何检查端口是否被占用并杀死进程

    2024-03-25 17:36:03       19 阅读
  5. AWTK-MODBUS 服务器

    2024-03-25 17:36:03       21 阅读
  6. Redis 基础命令详解【保姆级教材】

    2024-03-25 17:36:03       32 阅读
  7. ARM的三个按键实验

    2024-03-25 17:36:03       19 阅读