赞
踩
很好,我又来配置环境了,这次要求的是yolov5的环境配置,我是个魔鬼,所有的软件安装教程遇到我都得死,又是发疯的新专栏。
首先,咱得明白啥是cuda,为啥装它,这些网上都有,看过我也不记得。
重要的是装它之前我要知道一些基本知识,这是好多教程没讲的,上来就给文件包,cuda还分CPU和GPU,驱动和运行,这是一个雷,我已踩了,看下面这篇文章扫个盲先。CPU?GPU?+配置CUDA_i5 10400f cpu 能安装cuda吗_恒哥来了超神的博客-CSDN博客
cuda的驱动和运行版本是不一样的两种东西,建议都更新安装,具体区别参考这篇GPU版本的pytorch安装(显卡为3060ti,如何选择对应的cuda版本)
选取cuda版本参考这位(讲的比较细,就看这一部分) ,这一部分一定要自己做,找到自己电脑对应版本的cuda,从官网下载。Pytorch环境详细安装教程【Win10+CUDA升级11.6+cudNN+Anaconda3虚拟环境+pycharm
记录一下我原本CUDA的版本11.6.99,这个99也太秀了
打开任务管理器>性能,就可以看到了GPU型号,我选择的是N卡的GPU1
在官网这样填好自己的型号,下载
下好了,出现这个窗口,意思“指定要保存驱动程序文件的文件夹”,它默认C盘,可惜我C盘要炸,那就存到别的盘里。
再选择 精简安装
更新完后cmd,输入nvidia-smi,查看我的CUDA Version(驱动版本)更新为12.2,哀家升级了
cmd输入nvcc -V查看自己的Cuda toolkit的版本,为11.6
选择的版本应该满足两点要求:
Cuda runtime version必须小于等于Cuda driver version,我的必须小于等于12.2。
在满足前提下,还要满足版本必须与显卡的算力相匹配。
算力参考这个表格GeForce 和 TITAN 产品对CUDA的支持对照表和官网CUDA Legacy GPUs | NVIDIA 开发者
已知显卡型号GeForce 930MX,驱动版本是536.67,算力为5.0,那么安装的Cuda toolkit的版本应该在6.5-12.2之间,参考http://t.csdn.cn/ZprIm。
接下来要让Cuda toolkit的版本和pytorch版本匹配,对应关系参考01 Pytorch和CUDA对应的版本及Pytorch和Python对应的版本及Python与Anaconda的对应关系
Cuda toolkit 下载官网:https://developer.nvidia.com/cuda-toolkit-archive
选择自定义安装,因为后三项之前已经安装过了,所有我没有选择安装,CUDA中我去掉了Visual Studio这项,因为没有用到,后面如果还要安装,可以继续用这个安装程序把需要的东西安装上去。
它默认的文件装在C盘,我改成E盘下同名文件,不要和之前解压的安装包CUDA文件路径一样,重新建一个文件夹。参考CUDA安装教程(超详细)
安装结束后出现这个问题,我看不懂,但是官方给了给解决问题的网站,大概是有部分东西没有安装上去,先不管进入下一步,完成。安装 Nsight Visual Studio Edition
cmd再次查看版本,已经变为11.8
首先我们也需要确当版本,在官网注册一个账号https://developer.nvidia.com/after_signup/complete_profile
我下载的是v8.9.2版的
把cudnn前3个文件夹复制到cuda toolkit的路径下
直接打开刚才的路径下的\include\cudnn_version.h进行查看,刚好为8.9.2
进入文件夹此电脑–空白处点击右键–点击属性–进入系统–点击高级电脑设置–环境变量,选中系统变量下的PATH这行编辑,参考CUDA安装教程(超详细)
新建这四个环境变量
应用,完成
打开cmd,转到cuda toolkit目录下,执行如下指令,得到下面两张图,成功
- .\bandwidthTest.exe
- .\deviceQuery.exe
卸载python是前提
我的cuda版本挺高的,选择anaconda较高版本的更容易适配成功,去官网或者清华镜像下载,但是不要用最新版本的(教程太少不详细,对新手不友好)
动手之前看看我的问题1(目录)
参考这篇史上最全最详细的Anaconda安装教程,我的安装路径如下
cmd 输入conda --version,得到
继续打开系统配置环境变量的地方path
添加最后三个ananconda3的相关路径
输入代码,运行成功,可以看到我的python版本是3.9.13,conda是22.9.0
C盘没有容量的,参考我的问题2中的尝试3继续做
参考手把手教你使用anaconda安装pytorch环境(适合新手)
pytorch的环境配置及安装(包括anaconda的安装)
先切换镜像源为国内清华镜像源,在这两个的教程里有提供,然后
进入pytorch官网https://pytorch.org/下载,pytorch最新适配cuda11.8版本的,则
得到命令,就能下载了,如下(注意要确定这是GPU版本)
conda install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia
接下来继续参考文档问题1中的方案
成功
我安装的是专业版2022.2.2,参考http://t.csdn.cn/CtiCG
安装路径
之后就像教程里一样安装成功了
打开pycharm,点击插件
在搜索框中输入Chinese中文语言包,然后,重启
点击项目,点击左侧纯python,修改位置,点击使用此工具新建环境,修改位置和基础解释器,勾选继承全站点软件包,勾选main.py,参考这篇文章http://t.csdn.cn/BXUsV
右键点击pythonProject,新建文件目录code,右键code新建python.py文件,命名testGPU,输入代码,运行,测试
- import torch
- print(torch.__version__)
- print(torch.cuda.is_available())
testGPU文件可能一开始运行的按键是灰色的,这是因为还在pycharm更新解释器,在最下面可以看到更新进程
之后就可以运行了,结果如下,成功
点击最上方的运行,点击调试配置
右击python,打开下面的文件,如果没找到testGPU,就打开脚本路径,修改环境变量
新建+环境命名PATH,输入路径,根据具体情况修改
E:\Python\Anaconda3;E:\Python\Anaconda3\Library;E:\Python\Anaconda3\Scripts;E:\Python\Anaconda3\envs\pytorch\Library\bin;
再运行一次testGPU成功
参考记录使用Anaconda、Pycharm配置Yolov5环境全过程
windows+Pycharm+yolov5 配置环境以及本地训练自己的模型
点击文件,打开项目,找到yolov5
自动弹出,取消(不知道这是什么)
打开右上角的设置一个小齿轮,配置项目环境,参考教程
打开以下的文件,点击右上角的安装要求
需要在anaconda下pytorch环境中安装的包,使用pip安装很快
运行detec文件
得到
- E:\Python\Anaconda3\envs\pytorch\python.exe E:\Python\yolov5-master\detect.py
- WARNING 'ultralytics.yolo.v8' is deprecated since '8.0.136' and will be removed in '8.1.0'. Please use 'ultralytics.models.yolo' instead.
- WARNING 'ultralytics.yolo.utils' is deprecated since '8.0.136' and will be removed in '8.1.0'. Please use 'ultralytics.utils' instead.
- Note this warning may be related to loading older models. You can update your model to current structure with:
- import torch
- ckpt = torch.load("model.pt") # applies to both official and custom models
- torch.save(ckpt, "updated-model.pt")
-
- detect: weights=yolov5s.pt, source=data\images, data=data\coco128.yaml, imgsz=[640, 640], conf_thres=0.25, iou_thres=0.45, max_det=1000, device=, view_img=False, save_txt=False, save_conf=False, save_crop=False, nosave=False, classes=None, agnostic_nms=False, augment=False, visualize=False, update=False, project=runs\detect, name=exp, exist_ok=False, line_thickness=3, hide_labels=False, hide_conf=False, half=False, dnn=False, vid_stride=1
- YOLOv5 2023-7-26 Python-3.9.17 torch-2.0.1 CUDA:0 (NVIDIA GeForce 930MX, 2048MiB)
-
- Fusing layers...
- YOLOv5s summary: 213 layers, 7225885 parameters, 0 gradients
- WARNING NMS time limit 0.550s exceeded
- image 1/2 E:\Python\yolov5-master\data\images\bus.jpg: 640x480 4 persons, 1 bus, 88.8ms
- image 2/2 E:\Python\yolov5-master\data\images\zidane.jpg: 384x640 2 persons, 2 ties, 251.8ms
- Speed: 9.5ms pre-process, 170.3ms inference, 671.3ms NMS per image at shape (1, 3, 640, 640)
- Results saved to runs\detect\exp2
-
- 进程已结束,退出代码0
图片标注成功
当我以为安装好pytorch后,开始测试,显示如下:
- >>> import torch
- >>> print(torch.__version__)
- 1.13.1
- >>> torch.cuda.is_available()
- False
我先打算重新安装一下,又开始了
- (pytorch_py37) C:\Users\ASUS>conda install pytorch==1.13.0 torchvision==0.14.0 torchaudio==0.13.0 pytorch-cuda=11.6 -c pytorch -c nvidia
- Collecting package metadata (current_repodata.json): done
- Solving environment: failed with initial frozen solve. Retrying with flexible solve.
- Collecting package metadata (repodata.json): done
- Solving environment: failed with initial frozen solve. Retrying with flexible solve.
使用如下命令查询,安装包列表,发现根本没有pytorch的相关安装包
conda list
有大佬说可能是cuda安装错了版本,没有分清GPU和CPU版本,参考这位的评论区,不止我一个这样,有点平衡了。在安装之前先看有没有N卡,看电脑的GPU和CPU。【Debug记录】深度学习Pytorch+Anaconda环境下常见报错的原因及解决方案 | 亲测已解决_conda安装pytorch出错_liuuu0的博客-CSDN博客
我安装的Cuda toolkit 版本为11.6,而安装的pytorch为1.13.1版本,参考很多适配表,发现有部分博主说这两个版本不匹配,(我也不懂官网哪里查)
参考(已解决)Solving environment: failed with initial frozen solve. Retrying with flexible solve.可能是我的cuda环境配置太高了,安装的anaconda3中的python(3.7.6),conda(4.8.2)等安装包版本过低,需要单独升级,或者降低环境。
重新下载anaconda3,如下这个版本的,csdn许多大佬最新更新的版本(建议不要选2023版的,现状教程少又不详细,对小白不友好)
参考这位的安装教程Anaconda的详细安装教程
打开cmd后验证conda版本为22.9.0,python是3.9.13
参考手把手教你使用anaconda安装pytorch环境(适合新手)
pytorch的环境配置及安装(包括anaconda的安装)
创建环境
安装pytorch,出现如下情况,但是也能继续下
- (pytorch) C:\Users\ASUS>conda install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia
- Collecting package metadata (current_repodata.json): done
- Solving environment: failed with initial frozen solve. Retrying with flexible solve.
- Solving environment: failed with repodata from current_repodata.json, will retry with next repodata source.
- Collecting package metadata (repodata.json): done
安装完查看环境中的安装包,如下
测试,成功
我直接进入应用里卸载带有11.6版本的软件
pytorch全都默认装到了C盘里
要怎么弄
我先进入pytorch虚拟环境中,输入命令尝试卸载
- conda activate pytorch
- conda uninstall pytorch #卸载命令
- conda uninstall libtorch
文件夹中没变仍然存在,conda命令卸载不行了
环境文件下有这个路径,是不是下载时设置一开始anaconda就设置在这个路径下,默认在就在ASUS里了,那么我更改路径他是不是会下载到别的路径里
输入命令
conda remove -n pytorch --all #pytorch为我的环境名
得到如下
- (base) C:\Users\ASUS>conda remove -n pytorch --all
-
- Remove all packages in environment C:\Users\ASUS\.conda\envs\pytorch:
-
-
- ## Package Plan ##
- environment location: C:\Users\ASUS\.conda\envs\pytorch
-
-
- The following packages will be REMOVED:
-
- ca-certificates-2023.05.30-haa95532_0
- certifi-2023.5.7-py39haa95532_0
- cuda-cccl-12.2.53-0
- cuda-cudart-11.8.89-0
- cuda-cudart-dev-11.8.89-0
- cuda-cupti-11.8.87-0
- cuda-libraries-11.8.0-0
- cuda-libraries-dev-11.8.0-0
- cuda-nvrtc-11.8.89-0
- cuda-nvrtc-dev-11.8.89-0
- cuda-nvtx-11.8.86-0
- cuda-profiler-api-12.2.53-0
- cuda-runtime-11.8.0-0
- libcublas-11.11.3.6-0
- libcublas-dev-11.11.3.6-0
- libcufft-10.9.0.58-0
- libcufft-dev-10.9.0.58-0
- libcurand-10.3.3.53-0
- libcurand-dev-10.3.3.53-0
- libcusolver-11.4.1.48-0
- libcusolver-dev-11.4.1.48-0
- libcusparse-11.7.5.86-0
- libcusparse-dev-11.7.5.86-0
- libnpp-11.8.0.86-0
- libnpp-dev-11.8.0.86-0
- libnvjpeg-11.9.0.86-0
- libnvjpeg-dev-11.9.0.86-0
- openssl-3.0.9-h2bbff1b_0
- pip-23.1.2-py39haa95532_0
- python-3.9.17-h1aa4202_0
- pytorch-cuda-11.8-h24eeafa_5
- setuptools-67.8.0-py39haa95532_0
- sqlite-3.41.2-h2bbff1b_0
- tzdata-2023c-h04d1e81_0
- vc-14.2-h21ff451_1
- vs2015_runtime-14.27.29016-h5e58377_2
- wheel-0.38.4-py39haa95532_0
- Proceed ([y]/n)? y
- Preparing transaction: done
- Verifying transaction: done
- Executing transaction: done
打开环境的文件夹,环境已被删除,pytorch安装包也被删除
然而C盘没有少多少,还有一个文件夹里都是文件
同学说是因为虚拟环境目录的问题,参考解决conda虚拟环境默认安装到C:\Users\用户名\.conda\env路径的问题
打开cmd,输入conda info
我的默认路径为这三条,第一条就是在C盘,改了它
- envs directories : C:\Users\ASUS\.conda\envs
- E:\Python\anaconda3\envs
- C:\Users\ASUS\AppData\Local\conda\conda\envs
打开.condarc文件
添加最后两行,根据自己的路径修改,保存
conda info和conda env list查看,该环境路径已经在最上面了
但是我的文件夹还是只读,说明没有成功
打开该文件夹的属性,打开安全,点击user这行,编辑,修改权限,确定
报错,参考https://m.php.cn/faq/537270.html修改
成功修改
尝试4:
参考conda冗余package的清理(.conda/pkgs)
输入:conda clean -a
清理了一部分
恢复了
系统默认E:\Python\anaconda3为base路径,真正的base路径无法默认使用,且创建一个新的pytorch环境后,出现两个相同名字,但路径大小写不一样的环境。
输入conda info
发现路径因为大小写的关系被分为E:\Python\anaconda3和E:\Python\Anaconda3
打开.condarc都修改成大写,也没有用
修改环境变量里面的大小写,也没有用
在environments文件中删除小写路径E:\Python\anaconda3,该路径消失,但是打开anaconda时,环境并不在base下的大写路径中,需要使用activate base 转换,且base路径的shell level为2,但是不会产生两个pytorch环境了
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。