用别人的代码训练模型时,由于tensorflow-gpu版本太高,报了很多错,一个个改太麻烦,所以直接降级。tensorflow降级为1.14,与此同时也要换成对应版本的CUDA和cuDNN。

1.tensorflow-gpu降级

pip uninstall tensorflow-gpu
pip install tensorflow-gpu==1.14

2.gcc降级

我的服务器本身好像是gcc10.几,现在降到5.5

cd /usr/bin
sudo rm gcc
sudo ln -s gcc-5 gcc
sudo rm g++
sudo ln -s g++-5 g++

查看gcc和g++版本号,均显示gcc version 5.5则成功

gcc -v
g++ -v

3.降级到CUDA9.2

本身是CUDA10,降到CUDA9.2,我没有卸载本来的CUDA,直接在官网下载下面两个文件,cuda_9.2.148.1_linux.run是补丁。

在这里插入图片描述

sudo sh cuda_9.2.148_396.37_linux.run
sudo sh cuda_9.2.148.1_linux.run

直接按q退出,accept,除了安装NVIDIA驱动选项输入n以外(因为之前已经装过显卡驱动了),其余全部选y,默认location都直接回车。
安装完成后,配置环境变量。在.bashrc末尾export一些东西:

sudo gedit ~/.bashrc
export PATH=/usr/local/cuda-9.2/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-9.2/lib64:$LD_LIBRARY_PATH
export CUDA_HOME="/usr/local/cuda-9.2:$CUDA_HOME"

然后执行source ~/.bashrc

4.安装cuDNN

在官网下载cuDNN7.4.1,选择library for Linux
在这里插入图片描述
解压:

tar -zxvf cudnn-9.2-linux-x64-v7.4.1.5.tgz

将相关文件复制到刚才安装的cuda中:

sudo cp cuda/include/cudnn.h /usr/local/cuda-9.2/include/
sudo cp cuda/lib64/libcudnn* /usr/local/cuda-9.2/lib64/
sudo chmod a+r /usr/local/cuda-9.2/include/cudnn.h
sudo chmod a+r /usr/local/cuda-9.2/lib64/libcudnn*

5.切换到CUDA9.2

cd usr/local
sudo rm -rf cuda #删除之前创建的软链接
sudo ln -s cuda-9.2 cuda #重建软链接

查看当前的cuda和cuDNN版本:

nvcc -V
cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2

在这里插入图片描述

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐