首先安装一个科学上网工具,墙会导致各种问题和速度慢,白白花掉你无数精力,几十块一个月,但是可以帮你在以后的开发中节省数天时间,不要太划算。但是安装科学上网的工具用百度是搜索不到的,需要用google搜索,死循环?所以只能先找能科学上网的同学了。还有些小渠道,贴吧啥的可能有。
显卡的框架-GPU,驱动,cuda,包,依赖等的关系
整体来讲,可以把GPU的这一套理解成一个新的从硬件到软件的编程体系,对于CPU我们有:cpu硬件,驱动,编程语言,编译器,GPU同样的对应了这一套东西。
驱动:用于控制GPU硬件的东西
cuda:cuda相当于编程语言,类比就是CPU上面的C语言,就是nivida提供的能够进行GPU编程的东西,按照官方的说法是,CUDA是一个并行计算平台和编程模型,能够使得使用GPU进行通用计算变得简单和优雅。用于更加高效的控制显卡,比如并行计算。
cuddnn等: 这个相当于编程语言提供的一个软件包,其实就是一个专门为深度学习计算设计的软件库,里面提供了很多专门的计算函数,如卷积等。有很多其他的软件库和中间件,包括实现c++ STL的thrust、实现gpu版本blas的cublas
CUDA Toolkit:可以理解为IDE,提供了编译器,调试器,分析器等。
注: CUDA ToolKit driver: 注意这个编译器还有一个驱动,和GPU的驱动区分,nvcc&nvidia-smi 就是IDE提供的命令接口,
pytorch的cuda包,pytorch也带有了一个cuda包,相当于和原生cuda的接口??
框架:pytorch,TensorFlow等,就是深度学习的框架了,它们可以使用cuda进而使用GPU
1、anaconda和pip的安装使用
这个anaconda和pip的安装使用也是有很多坑的,要注意下
https://blog.csdn.net/hn_lgc/article/details/120163720
简单的使用如下
安装anaconda
anaconda里面自带python,不用单独安装了
下载anaconda的安装包,一般下载很慢,基本不能用,需要使用国内的镜像网站才行,目前比较好的是清华的镜像
https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/
从里面选择合适的anaconda版本,下载,安装
主要anaconda使用的python版本,这个版本要和其它依赖使用的一致
可以选择配置一下anaconda的环境变量,如
G:\Anaconda3;G:\Anaconda3\Scripts;G:\Anaconda3\Library\bin"
2、安装cuda相关
2.1 检测cuda驱动版本
搜索找到或者计算机-右键-属性-设备管理器-显示适配器,将nvdia的驱动更新到最新(我是这样弄的,这样才能对应到开发工具的10.1版本,不知道其他情况下,版本不对应了这样做是否可以)
重启计算机,
直接win10 搜索nvidia,选择NVIDIA Controller
或者控制面板->搜索NVIDIA->双击进入NVIDIA控制面板:
点击帮助->系统信息->组件:
然后看NVCUDA.DLL这一行查看驱动版本
2.2 安装cuda toolkit
先安装CUDA Toolkit,https://developer.nvidia.com/cuda-toolkit-archive,
必须要选择驱动对应的版本,根据驱动版本选择下载版本,**注意版本号是分了几个数字段,貌似必须要对应的第二个数字段,才能用,比如10.1.1x 和10.1.2x可以配合使用,但是10.0.x和10.1.x就不行了。**自己安装的时候就在这里卡住了,没有注意到版本之间匹配度要求这么高。
很多情况的cuda不能用,torch.cuda.is_available()返回false原因应该就是这个版本没对上
选择好版本之后,点击进去,依次选择对应的系统信息然后下载即可
文件很大,下载下来之后,按照一般流程安装,其中会遇到需要安装vs的情况,需要装vs的话就装,不需要的话倒回去选择自定义,然后展开安装项目,取消visual studio相关的那个选项应该就可以了(没试过)
有驱动更新什么的最好重启一下,然后一些才能生效
然后设置环境变量,就是安装路径的bin
比如
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.7\bin
最后查看是否安装成功,
nvcc -V
多个版本的cuda可以都留着,不用删掉,改环境变量
2.3 安装cudnn,神经网络加速用
这个应该比较简单,
进入网站 https://developer.nvidia.com/rdp/cudnn-download 注册用户-下载-解压
解压之后有3个目录,将它们一起复制放到cuda的安装目录下面即可,不是bin
比如我这次的安装目录C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1
安装这个cuda的工具真费了不少功夫
把下面一步的pytorch安装完之后
最后,测试cuda终于可用了
torch.cuda.is_available()
3、安装pytorch
然后进入pytorch官网,百度搜索即可。
https://pytorch.org/get-started/locally/
根据支持的cuda版本,Python版本,选择Pytorch环境组合,
第三行表示使用哪种安装工具。
关于cuda版本,不太清楚,现在测试是是驱动版本高于选择版本就行了
以前似乎要版本匹配?
目前pytorch上面只有两个cuda的驱动版本可以选,根据驱动版本选择下载版本,**注意版本号是分了几个数字段,貌似必须要对应的第二个数字段,才能用,比如10.1.xx 和10.1.xx对应才可以配合使用,但是10.0.x和10.1.x就不行了。**自己安装的时候就在这里卡住了,没有注意到版本之间匹配度要求这么高。
很多情况的cuda不能用,torch.cuda.is_available()返回false原因应该就是这个版本没对上
python版本(根据anaconda的来即可)
最后得到下面那行命令
3.1 有梯子安装
直接选择pip,然后复制到命令行,安装就行了。
3.2 没梯子安装
下面演示的用conda,用pip更好
win10里面程序选择到anaconda目录下面,右键anaconda prompt, 管理员身份运行 ,不然可能报错
输入刚才复制的命令,然后得到要安装的和更新的包的目录、
下面会选择yes还是no,输入n,没梯子之类的话不要在线安装,很慢装不了,一种方式是使用镜像安装,目前清华源镜像比较好;
下面的地址可能会变,需要到官方复制 https://mirrors.tuna.tsinghua.edu.cn/help/anaconda/
参考https://mirrors.tuna.tsinghua.edu.cn/help/anaconda/
设置清华源,全局搜索或者打开用户目录下的.condarc 文件,设置如下内容进去
channels:
- defaults
show_channel_urls: true
default_channels: - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
custom_channels:
conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
pytorch-lts: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
然后 运行 conda clean -i 清除索引缓存,保证用的是镜像站提供的索引。
在该命令行界面输入如下命令,最后一行表示显示安装包下载来源的路径。
但是自己设置了貌似没用
还有一种方式,官网说明 https://mirrors.tuna.tsinghua.edu.cn/help/pypi/
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple 包名
或者
pip install --user -i https://pypi.tuna.tsinghua.edu.cn/simple 包名
自己试了一个包能行
还是不行的话手动下载,离线安装
根据要安装的列表,分别到清华源上面找相应的包,注意一定要准确对应,不然可能各种错
清华源里面的搜索貌似没用,所以要自己进入目录找,然后上面的黑框里面实际上提供了包所在的路径
在清华源中anaconda对应目录下面按照该路径找对应的包即可
比较大的包离线安装,如果比较小的,只有几百k,可以在线安装
包下载完成之后,使用
conda install --offline 包路径
即可安装该包
所有包安装完成即可
最后测试是否安装成功
4、下面安装pycharm, 导入设置虚拟环境,conda环境
安装Pycharm通过,教育版或者某宝买破解或者网上找破解方法(网上现在很难有能成功的)
导入anaconda的环境
file —setting ----project xxx—python interpreter
现在2023年2月18日的界面张这样,和以前不太一样了
然后选择conda的虚拟环境,其它也是环境管理工具,没有什么明显的优劣吧,这里选择conda的。
里面conda.exe注意选择Script下面的conda.exe
这里可以选择已经纯在的环境或者重新创建一个。
重新创建最好手动创建吧,在这里面创建都不知道位置在哪里。
应该是选择第三个好一些,然后点击省略号,进入anaconda的安装目录,里面有个python.exe 文件,选择它就可以了。
第一个是重新建立一个环境。点击第三个选项卡,将路径选为anaconda安装路径下的python.exe,确定后成功配置anaconda环境。
遇到的一些问题:
可以import torch
但是不能import torchvision
或者部分包可以导入部分包不能导入
一开始很懵逼,为什么?后面找了一会儿,使用最开始的命令
conda install pytorch torchvision cudatoolkit=10.1 -c pytorch
发现是torchvision的包安装错了,安装成linux的版本了,所以导入不了
OpenCV安装,自己安装时要在anaconda环境里面安装,否则不行
pip install opencv-python
ubuntu上面的安装
一、安装nivida驱动
一开始尝试了Debian,太难搞了,各种配置,网上教程又很少,搞了一天,最后还是安装不了驱动,只能放弃了
ubuntu最新版(20.x以上),直接软件和更新,附加驱动,选择推荐的第一个,一般就能安装成功了,简直好太多了
二、安装cuda相关包
去nvidia官网,下载cuda相关包
注意NVIDIA的网站有问题,国内能访问,但是访问很慢,代理也不能代理,需要设置为全局代理才行
2.1 下载安装cudatoolkit
https://developer.nvidia.com/cuda-downloads
按照自己的系统选择即可
要注意的是这里是系统层面的cudatoolkit安装,据说conda里面也会安装一个,conda里面的是子集,涉及到pytorch相关的
同样的去官网下载好安装包
注意这个安装命令有问题,需要sh XX.linux.run --librarypath=/usr/local/cuda 才行,上面给出的命名没有反应
2.2 安装
sh cuda_10.0.130_410.48_linux.run --toolkitpath=xxx
如果安装多个,给出路径
注意安装不要多次点击回车,那样会点击到后面的选项,导致无法安装
安装的时候会给出选项
如果已经安装了显卡驱动,就会出现这个选项,选择continue ,然后后面的选项,显卡驱动就不选择了
2.3 设置环境变量并更新
sudo gedit ~/.bashrc
后面加上
export PATH=/usr/local/cuda-11.3/binKaTeX parse error: Expected '}', got 'EOF' at end of input: {PATH:+:{PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-11.3/lib64KaTeX parse error: Expected '}', got 'EOF' at end of input: …LIBRARY_PATH:+:{LD_LIBRARY_PATH}}
保存 然后
source ~/.bashrc
如果想要多个cuda版本生效,可以通过修改路径达到目的。
2.4 下载是cudann
https://developer.nvidia.com/rdp/cudnn-download
注册账号下载
垃圾网站,速度其慢,登录有问题
跳转到它的首页,可以使用快捷登录,cudnn的登录页面不能修改密码
intel 64位 选择如下
2.5 解压,然后复制到cuda安装对应目录中
最后测试是否成功
三、安装Pytorch框架和其它依赖
到pytorch官网选择查看要安装的版本
然后可以设置源进行在线安装,或者直接下载安装包进行安装
安装onnx,有几个坑
有cpu和gpu版本,
gpu需要加上gpu
pip install onnxruntime-gpu
如果是较高版本的cude,不能默认安装,需要特殊命令
https://onnxruntime.ai/docs/install/#python-installs
如果你安装了GPU版本,就要手动卸载cpu版本,不然也会报错xxx找不到啥的
安装TensorRT
进入官网,要先登录
https://developer.nvidia.com/nvidia-tensorrt-8x-download
选择版本
EA 版本代表抢先体验,GA 是稳定版。建议使用GA版本
点击展开后再选择与自己cuda对应版本的tensorRT
更多请看这篇文章,https://blog.csdn.net/yyt1231/article/details/134134935
升级重装
只升级pytorch等
如果底层依赖,cuda等没变,只升级pytorch,复制官网命令,加上-U就行了
全部升级
否则,
先和上面过程一样,
首先重装cuda,不用卸载,更改环境变量路径就行
查看CUDA驱动版本,如果升级了,就升级后续一系列的包
你的CUDA版本不是你装过什么,而是你的路径中包含什么
其它问题
nvcc --version和nvidia-smi显示的CUDA版本
CUDA有两个主要的API:runtime(运行时) API和driver API。这两个API都有对应的CUDA版本(如9.2和10.0等)。
用于支持driver API的必要文件(如libcuda.so)是由GPU driver installer安装的。nvidia-smi就属于这一类API。
用于支持runtime API的必要文件(如libcudart.so以及nvcc)是由CUDA Toolkit installer安装的。(CUDA Toolkit Installer有时可能会集成了GPU driver Installer)。nvcc是与CUDA Toolkit一起安装的CUDA compiler-driver tool,它只知道它自身构建时的CUDA runtime版本。它不知道安装了什么版本的GPU driver,甚至不知道是否安装了GPU driver。
意思是nvidia-smi是最底层的语言,nvcc --version由编译器稍微封装之后的语言咯。
cuda安装过程中的问题可以看这里 的2.9
https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html
ncnn编译安装 win10+vs2022
参考
https://blog.csdn.net/qq_40231159/article/details/111808792
https://blog.csdn.net/qq_39056987/article/details/122937169
问题:
vs 2019 启动进入项目界面就闪退,使用installer 修复没用
彻底卸载 使用官网彻底卸载教程 + 搜索vs相关文件删除
重装2022 可以了
一遍过啊,比unbuntu上容易多了,搜索linux更方便的???
3、生成ncnn模型
将retinaface-sim.onnx模型复制粘贴到ncnn-root-dir\build\tools\onnx文件夹下面,使用如下指令即可转换成ncnn模型:
.\onnx2ncnn retinaface-sim.onnx retinaface.param retinaface.bin