旧版本Tensorflow深度学习代码在Ubuntu系统的配置(以SampleNet项目为例)

最近论文补实验,需要配置好SampleNet算法输出一些结果。调试也是经过一番周折,在这里把一些重要的信息记录下来。因为很多深度学习项目的配置,都和SampleNet有很大的相似性,把配置细节和一些问题列出来,方便以后查阅。

1. Linux双系统安装

参看:https://blog.csdn.net/fanxueya1322/article/details/90205143

需要注意的是,系统安装完成后,启动项可以通过EASYUEFI来进行调整。

https://www.easyuefi.com/index-us.html

2. 安装Anconda

参考:https://blog.csdn.net/qq_41719643/article/details/109777042

我第一开始没有安装Anconda,后来在配置驱动经历过无数蛋疼的尝试后,果断安装Anconda脱离苦海。使用Anconda创建的虚拟环境,对于调整python版本以及cuda版本效果显著。

3. Nvidia驱动更新

这个过程,直到现在我也不敢说按照既定步骤百分之百能搞定。

参考:https://blog.csdn.net/qq_32408773/article/details/84112166

对于Nvidia显卡驱动更新,网上很多教程都是先在黑名单禁用nouveau,然后退到文本模式安装驱动。这个过程强烈建议新手不要试!整不好,图形界面就搞不出来了,以至于退到recovery模式使用root命令做恢复也搞不定。

比较靠谱的办法是,在附加驱动(如果是Ubuntu18,这个选项在软件与更新里,如果是20的版本,在单独的附加驱动选项里)选项中,替换对应的Nvidia驱动就可以,如下图:

安装完成后,重启,使用如下命令检查驱动是否替换成功:

lshw -c video

如果在configuration选项里的driver=nvidia,那么驱动安装成功。

接下来是CUDA安装,按照网上最常见的方法,在官网上下载deb文件进行安装:

https://developer.nvidia.com/cuda-10.0-download-archive?target_os=Linux&target_arch=x86_64&target_distro=Ubuntu&target_version=1804&target_type=deblocal

个人比较推荐安装10.0版本。下载完成后按照命令操作:

  1. sudo dpkg -i cuda-repo-ubuntu1804-10-0-local-10.0.130-410.48_1.0-1_amd64.deb
  2. sudo apt-key add /var/cuda-repo-<version>/7fa2af80.pub
  3. sudo apt-get update
  4. sudo apt-get install cuda

如果报错,即:下列软件包有为满足的关系,cuda依赖:cuda-10-0 (>=10.0.130)...

该错误我猜测是系统版本兼容问题,解决的办法就是使用在线cuda安装方法:

  1. `sudo dpkg -i cuda-repo-ubuntu1804_10.0.130-1_amd64.deb`
  2. `sudo apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/7fa2af80.pub`
  3. `sudo apt-get update`
  4. `sudo apt-get install cuda`

由于我的ubuntu系统是20.04的,不知道为啥,使用在线安装以后,就直接默认升级到11.2了,但是好在是能用了。

cuda环境变量配置:

编辑 ~/.bashrc

vim ~/.bashrc

添加如下代码:

export PATH=/usr/local/cuda-10.2/bin\$\{PATH:+:${PATH}} 
export LD_LIBRARY_PATH=/usr/local/cuda-10.2/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}  

刷新

source ~/.bashrc

检查安装

nvcc -V

4. 在Anconda虚拟中配置Pycharm的tensorflow环境

这一步骤最重要的就是配置好cuda和cudnn

经过我的实验,觉得在conda里在安装相应的工具成功率是最高的,具体命令如下:

首先激活在pycharm创建的conda环境:

conda activate 你的conda环境 (例:conda activate SampleNet)

查看可使用版本:

conda search tensorflow

在该环境下安装cuda插件:

https://anaconda.org/anaconda/cudatoolkit

conda install -c anaconda cudatoolkit

安装cudnn:

https://anaconda.org/anaconda/cudnn

conda install -c anaconda cudnn

安装tflearn:

https://anaconda.org/contango/tflearn

conda install -c contango tflearn

检测是否安装成功:

import tensorflow as tf
print(tf.test.is_gpu_available())

打印true的话,就是安装成功。

5. CUDA版本切换(卸载)

如果你下载了多个版本的CUDA,对应相应的项目时需要切换。

参看该博客:https://blog.csdn.net/yinxingtianxia/article/details/80462892

如果希望卸载cuda:

sudo ./uninstall_cuda_10.0.pl

如果没有pl

sudo apt-get --purge remove cuda-repo-ubuntu1804-10-0-local-10.0.130-410.48

sudo apt-get --purge remove cuda-xx-x //注意安装的版本号

参考博客:https://blog.csdn.net/xu_fengyu/article/details/89364098

6. 一些问题

按照项目的提示要求,安装其他的包。经过调试后,一个比较难以解决的问题是下面这个:

最典型的就是这个问题:../tf_grouping_so.so not found

根据网上查阅的资料,很多人表示大概率是因为版本不一致产生的编译问题。但是经过我的实践发现,还是因为系统平台的问题。我在windows平台按照原作者的list选择的对应版本进行安装,结果还是搞不定。主要还是因为生成so的sh文件是按照linux环境下进行处理的,所以还是要在linux系统上配置项目比较方法。

具体的解决方法参看:https://blog.csdn.net/aliexken/article/details/115343375

主要就是修改.sh文件内的cuda版本以及链接文件,以适应你的环境。

因为我没有成功搞定cuda的对应版本,很多tensor1.x版本的代码需要根据2.x的环境进行适度的修改,如使用tensorflow.compat.v1 替换 tensorflow等。

7.Tensorflow,CUDA以及cuDNN对应版本查询

一些tensorflow与cuda版本的对应信息:

https://www.tensorflow.org/install/source

 

 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序猿老甘

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值