安装Ubuntu16.04双系统出现的问题
系统选择
刚开始下的ubuntu18.04,但是装完网一直不行,所以就换成了16.04,发现还是不行。。已经重装了三四遍了,实在是不想换过来了,就直接装了ubuntu16.04(ubuntu去tuna镜像发现版本太少,阿里云那边倒是挺全的,可以去阿里云下载ios镜像,我下的是desktop-amd64版本的),具体安装移步连接 https://www.cnblogs.com/masbay/p/10745170.html,需要用到软碟通(UltraISO)以及DiskGenius这两个软件,提前安好。
华硕主板问题
bios系统 secure boot关不掉!!
简直让人抓狂,因为secure boot一直显示一个灰色的“设置”样式,搜了好多,都不知道咋关,就这样了。。
联网问题
这是一个大坑,查了之后才发现需要装Intel的网卡驱动(Intel 1219-V),具体移步链接https://zhuanlan.zhihu.com/p/346453570
显卡驱动安装
具体出现什么问题我已经忘了,基本上按照网上教程走都行,显卡驱动去Nvidia官网下载即可(根据自己的显卡型号)。 装好后发现分辨率不对,而且还调不了,这里感谢bo an童鞋,一句重启一下,豁然开朗。
至此,双系统安装差不多就结束了。
Anaconda+Cuda+Cudnn+TF-GPU安装
这块儿我装的比较多,但是这次也是遇到一些奇葩问题。
Anaconda安装
主要是注意和python版本相互对应,然后去tuna镜像下载,过程参考链接
- https://blog.csdn.net/qq_15192373/article/details/81091098;
Cuda和cudnn安装
网上教程很多,参考即可
安装cuda时出现相关库的缺失
参考链接 https://www.linuxdiyf.com/linux/29146.html
一劳永逸,conda、pip、apt-get国内源一起安排上
https://blog.csdn.net/adsl88126/article/details/101271300
安装TF
先conda创建虚拟环境,然后给虚拟环境指定cuda版本,再pip安装tf-gpu==1.12.0 因为我的pip镜像先是选了douban,速度超快,但是装tf的时候一直出现requirement not satisfied这个错误,奇葩的是,错一次我就重装一次,每次错误的包还不一样!!,在网上看各种解决方法,升级了pip,把GCC、cudnn版本都调整至对于版本了,还是不行。最后。。。居然把源换成了阿里云的成功了。。。醉了醉了,虽然aliyun速度慢了点,但总归是装成功了 PS:GCC升降级链接 https://www.huaweicloud.com/articles/3375801.html 调整GCC优先级链接
- https://blog.csdn.net/weixin_40557160/article/details/115953779?utm_medium=distribute.pc_relevant.none-task-blog-baidujs_title-0&spm=1001.2101.3001.4242
- https://www.huaweicloud.com/articles/3375801.html
VScode安装并加载Anaconda环境
参考 https://blog.csdn.net/WEINILUO/article/details/105936817 1.VS code插件安装
Visual Studio IntelliCode Python
2.Vs Code配置 打开Setting.json,打开方式参考 https://zhuanlan.zhihu.com/p/355969973 配置参考 https://blog.csdn.net/WEINILUO/article/details/105936817 上述配置信息标点及文件位置需要替换,其他就OK了
运行tf代码时出现 failed to run cuBLAS routine cublasSgemm_v2: CUBLAS_STATUS_EXECUTION_FAILED
查看当前python的进程占用情况:ps -ef | grep python
参考链接: https://blog.csdn.net/ykf173/article/details/105542936 但是还是会报错,于是准备重装Cuda9.0
VS Code调试代码时卡住的问题
重装显卡驱动!CUDA+Cudnn!!!
提前裂开
显卡驱动重装
- 出现you appear to be running an x server please exit x before installing错误时
链接 https://blog.csdn.net/dafenqie/article/details/78018452 - GCC版本错误时
https://www.codenong.com/cs106984925/ 在切换GCC版本时可以参考上面gcc版本配置
Cuda重装
参考链接 https://blog.csdn.net/sinat_29089097/article/details/52075411 在测试cuda Samples的时候发现gcc版本不对,此时切换了gcc版本还是不对,用同样方法切换了g++版本后make成功,但是一直停不下来,经过一番挣扎,它还是装好了。。最后出现balba finish build
安装Cudnn
参考链接 https://blog.csdn.net/sinat_29089097/article/details/52075411 测试deviceQuery https://blog.csdn.net/hhhuua/article/details/80013566?utm_term=cudasamples%E6%B5%8B%E8%AF%95&utm_medium=distribute.pc_aggpage_search_result.none-task-blog-2allsobaiduweb~default-0-80013566&spm=3001.4430 PASS了,但是还是隐隐觉得不妙。。
多版本CUDA并存
安装cuda10.0以及对应cudnn
sudo xxx tar -zxvf xxx。。。。。
指定cuda
链接 https://zhuanlan.zhihu.com/p/137874101 如若直接切换,参考 https://blog.csdn.net/Maple2014/article/details/78574275
安装tf出现failed building wheel for grpcio
pip install --upgrade pip
由于我的代码需要cuda编译,这一步一直通过不了
经过调查发现,RTX3060确实挺香的,但是就是不支持cuda9和cuda10,于是直接上cuda11.x
安装cuda11.x+cudnn8.1
tensorflow版本及cuda对应关系链接 https://www.tensorflow.org/install/source#common_installation_problems 参考这位老哥的博客 https://blog.csdn.net/qq_42683011/article/details/114274781 我已经提前带好痛苦面具 另外的一篇装环境不错的连接 https://zhuanlan.zhihu.com/p/388619179 (里面提到的gcc版本切换也很不错 链接https://blog.csdn.net/kingfoulin/article/details/98872965)
先安装的tensorflow2.4.1,代码不兼容,离谱,于是降级为tensorflow1.15,出现问题如下
用Cuda编译时出现libtensorflow_framework.so: cannot open shared object file
参考链接 https://stackoverflow.com/questions/56888781/tensorflow-notfounderror-libtensorflow-framework-so-cannot-open-shared-file-or 或者 https://blog.csdn.net/sirria1/article/details/104276817
- 找到该so文件,使用find . -name xxxx.so*
- 使用软连接 ln -s libxxxx.sox libxxxx.so
这篇也许也有用但是还没试过 https://www.cnblogs.com/zhming26/p/6164131.html
通过以上方法虽然可以编译出来.so文件但是代码运行的时候就会出现以下问题
undefined symbol: _ZTIN10tensorflow8OpKernelE
找了一堆方法 如链接 https://github.com/orendv/learning_to_sample/issues/3所示,切换过GCC版本; 又或者是如链接 https://github.com/charlesq34/pointnet2/issues/48s所说,添加过LD_LIBRARY_PATH路径(利用.bashrc添加) 以及如链接 https://github.com/wentaoyuan/pcn/issues/51 改动过makefile 但是都不奏效,又只能把tensorflow2.4.1装回来,因为这里bo an童鞋说有tf1.0向tf2.0代码转换的脚本 脚本使用查看链接
- https://blog.csdn.net/JohnJim0/article/details/103469102
- https://www.yuque.com/7125messi/tw20pp/ktccci
但是依然出现问题
module ‘tensorflow‘ has no attribute ‘contrib‘
具体解决方法 链接https://www.yuque.com/7125messi/tw20pp/ktccci里面也提到了,但是不会弄啊,估计代码转好都到啥时候了。
- 至此轰轰烈烈的搭建环境行动以我选择躺平宣告结束,痛苦面具已经戴上
- 目前能想到的解决办法就是老板能资助下购进1080系列的显卡,能让我安安心心炼丹
最后送自己一句金句 Don’t be anxious for tomorrow, for tomorrow will be anxious for itself.Each day’s own evil is sufficient. 所以不要为明天忧虑,因为明天自有明天的忧虑;一天的难处一天当就够了。
|