YOLOv5复现各种环境版本匹配史上最全版本(涉及显卡\python\cuda\cudnn\torch\torchvision\tensorflow-gpu\numpy等)

序言


本文目标:
本文所总结的 版本适配涉及显卡版本\python\cuda\cudnn\torch\torchvision\tensorflow-gpu\numpy等,这些模块之间互相都有联系,最好先用小本本记下来,把这些内容都查询到,对应好再进行下载和安装,很多包的下载速度很慢,重新下载效率太低。
对于相应的安装方法简要介绍。

版本不匹配可能导致的问题有:①程序出错;②gpu无法启动,只能用cpu训练。
YOLOv5复现各种环境版本匹配史上最全版本(涉及显卡\python\cuda\cudnn\torch\torchvision\tensorflow-gpu\numpy等)_第1张图片

1、CUDA版本


首先,从 任务管理器->性能确定所安装的显卡型号,打开 NVIDIA控制面板,找到所允许的CUDA最高版本,如下图所示,最高为12.2。
YOLOv5复现各种环境版本匹配史上最全版本(涉及显卡\python\cuda\cudnn\torch\torchvision\tensorflow-gpu\numpy等)_第2张图片然后在 NVIDIA官网上查找显卡对应算力为8.9, https://developer.nvidia.com/cuda-gpus
YOLOv5复现各种环境版本匹配史上最全版本(涉及显卡\python\cuda\cudnn\torch\torchvision\tensorflow-gpu\numpy等)_第3张图片
再查看cuda各版本支持算力为, https://docs.nvidia.com/cuda/ampere-compatibility-guide/index.html
我没找着。看的别人的截图。 https://blog.csdn.net/qq_41664447/article/details/126914446
YOLOv5复现各种环境版本匹配史上最全版本(涉及显卡\python\cuda\cudnn\torch\torchvision\tensorflow-gpu\numpy等)_第4张图片

CUDA10.X版本最高支持算力为7.5,不满足显卡8.9的算力,所以应该下载11.X的版本。可学习CUDA和显卡驱动以及pytorch版本的对应关系
因此我下载了CUDA11.0.1的版本。

2、cudnn、tensorflow-gpu、python

根据和tensorflow-gpu的版本对应关系(官网查询)查到对应python版本和tensorflow-gpu以及cudnn的版本要求。
YOLOv5复现各种环境版本匹配史上最全版本(涉及显卡\python\cuda\cudnn\torch\torchvision\tensorflow-gpu\numpy等)_第5张图片

3、torch、torchvision

根据cuda版本以及yolov5的要求(requirements.txt)选择torch和torchvision版本(官网旧版本查询)(新版本)。再去下载相应的包,需要注意和cuda、python的对应,下载地址附在最后。
YOLOv5复现各种环境版本匹配史上最全版本(涉及显卡\python\cuda\cudnn\torch\torchvision\tensorflow-gpu\numpy等)_第6张图片

4、版本冲突

这时可能就会出现版本冲突问题。
冲突的体现方式是pip一个安装包,安装成功之后,会发现命令行中出现ERROR,表示虽然安装上了,但是版本不匹配。
也有可能是pycharm中提示错误。
以下为部分错误信息集结:
YOLOv5复现各种环境版本匹配史上最全版本(涉及显卡\python\cuda\cudnn\torch\torchvision\tensorflow-gpu\numpy等)_第7张图片
综合这些错误信息与yolov5的要求,可以降低matplotlib、pandas、ultralytics的版本。
唯一的矛盾就在于tensorflow-gpu的版本不能降低只能升级,但是那样就不满足第二个要求中和cuda等的匹配了,由于官网给出的是已经测试过没有问题的版本,所以没有测试过的只能自己尝试一下了。
于是我选择了tensorflow-gpu==2.9.0的版本,没想到成功了!!!
当然也可以选择试一下降低tensorflow-gpu的版本,有可能官网给出的是最高可以容纳的版本。

5、最终版本信息

模块名称 版本号
cuda 11.0.1
cudnn 8.0
torch 1.7.1
torchvision 0.8.2
tensorflow-gpu 2.9.0
其他 满足要求即可

沾沾喜气~YOLOv5复现各种环境版本匹配史上最全版本(涉及显卡\python\cuda\cudnn\torch\torchvision\tensorflow-gpu\numpy等)_第8张图片

6、相关安装方法

模块名称 方法 教程
cuda 官网下载 参考教程
cudnn 同上 参考教程
torch(pytorch) 先下载安装包whl,再pip install路径 参考教程
torchvision 同上 参考教程
tensorflow-gpu pip install tensorflow-gpu==2.9.0 镜像地址
其他 pip install即可,或者统一根据pycharm的提示

镜像地址使用方法:
方法一:pip install 安装包名字 -i http://pypi.doubanio.com/simple/ --trusted-host pypi.doubanio.com //豆瓣镜像网站

方法二:pip install 安装包名字 -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com //豆瓣

方法三:pip install 安装包名字 -i https://pypi.tuna.tsinghua.edu.cn/simple/ --trusted-host pypi.tuna.tsinghua.edu.cn //清华大学

7、卸载方法

当出现版本不匹配的错误之后,如何卸载相应的模块呢?
这个教程是比较靠谱的。
之前看到一个教程说让带nivida的都删掉,结果我把显卡驱动也删了,屏幕显示都出现问题(气!)。
搞得我很头大,也是涨了不少知识。

模块名称 方法
cuda、cudnn 卸载NIVIDIA相关程序,把相应版本号的删掉即可
tensorflow-gpu以及torch相关 pip uninstall即可
python 配置虚拟环境的时候设置的,可以重建虚拟环境

YOLOv5复现各种环境版本匹配史上最全版本(涉及显卡\python\cuda\cudnn\torch\torchvision\tensorflow-gpu\numpy等)_第9张图片

你可能感兴趣的:(python,YOLO,tensorflow)