小白如何安装/配置/删除CUDA(详细图文)
小白如何安装/配置/删除CUDA(详细图文)
CUDA(Compute Unified Device Architecture)是NVIDIA公司推出的一种并行计算平台和编程模型,它使得开发者可以利用GPU的强大并行计算能力进行通用计算。CUDA Toolkit是一整套用于开发CUDA程序的工具包,包含了用于开发、编译和调试CUDA程序的工具和库。PyTorch是一个开源的深度学习框架,广泛用于研究和生产中,它提供了易于使用的API和动态计算图特性,支持GPU加速运算,能够通过深度学习模型快速实现原型开发和训练。
1. 前言
GPU(图形处理单元)、CUDA、CUDA Toolkit 和 PyTorch 之间存在密切的关系,特别是在深度学习和科学计算的领域。下面我会逐一说明它们之间的关系:
1.1 GPU(Graphics Processing Unit)
- 定义:GPU 是专门用于图形和视频处理的硬件。与 CPU 不同,GPU 设计为能够并行处理大量的计算任务,特别适合进行大规模的矩阵运算、图像处理等任务。由于其强大的并行计算能力,GPU 被广泛应用于深度学习、科学计算、数据分析等领域。
- 作用:在深度学习中,GPU 可以大大加速神经网络训练和推理过程,因为神经网络训练涉及大量的矩阵乘法和高维数据处理,而 GPU 在这些计算上比 CPU 更高效。
1.2 CUDA(Compute Unified Device Architecture)
- 定义:CUDA 是 NVIDIA 公司推出的一种并行计算平台和编程模型,它使得开发者可以利用 GPU 的强大并行计算能力进行通用计算(即 GPGPU,General-Purpose Computing on Graphics Processing Units)。
- 作用:CUDA 提供了编程接口(API),使得开发者可以编写能够在 NVIDIA GPU 上运行的代码。通过 CUDA,开发者可以使用 C、C++、Fortran 等编程语言,直接访问 GPU 上的计算资源,进行高效的并行计算。
1.3 CUDA Toolkit
- 定义:CUDA Toolkit 是一整套用于开发 CUDA 程序的工具包,包含了用于开发、编译和调试 CUDA 程序的工具和库。它包括了编译器、调试器、性能分析工具以及大量的数学函数库(如 cuBLAS、cuFFT、cuDNN 等)。
- 作用:CUDA Toolkit 为开发者提供了必要的工具和库,帮助他们在 NVIDIA GPU 上高效地执行计算任务。安装 CUDA Toolkit 后,开发者可以使用它来编写、编译和优化 CUDA 程序。
1.4 PyTorch
- 定义:PyTorch 是一个开源的深度学习框架,广泛用于研究和生产中。它提供了易于使用的 API 和动态计算图特性,支持 GPU 加速运算,能够通过深度学习模型快速实现原型开发和训练。
- 作用:PyTorch 作为深度学习框架,能够自动地将计算任务分配到 GPU 上,并且在后台利用 CUDA 进行加速。PyTorch 使用 torch.cuda 模块来与 CUDA 进行交互,从而将张量(tensor)和计算操作迁移到 GPU 上,显著加速训练过程。
1.5 它们之间的关系
- GPU 和 CUDA:GPU 是硬件,CUDA 是使得开发者能够在 GPU 上执行并行计算的编程平台。CUDA 提供了 GPU 的编程接口,使得开发者能够更有效地使用 GPU 进行高效的计算。
- CUDA 和 CUDA Toolkit:CUDA 是编程模型和平台,而 CUDA Toolkit 是实现这个平台的工具集合。CUDA Toolkit 为开发者提供了编写、编译和优化 CUDA 程序所需的工具和库。
- PyTorch 和 CUDA:PyTorch 是一个深度学习框架,使用 CUDA 来加速计算。PyTorch 提供了对 GPU 的支持,可以通过 CUDA 将深度学习模型的计算任务移到 GPU 上执行,从而加速训练和推理过程。
简而言之,GPU 提供计算资源,CUDA 是访问这些资源的编程接口,CUDA Toolkit 提供开发工具,而 PyTorch 是一个使用这些工具进行深度学习模型开发的框架。
2. 安装CUDA
在安装之前呢,我们需要确定三件事:
第一:查看显卡支持的最高CUDA的版本,以便下载对应的CUDA安装包
第二:查看对应CUDA对应的VS版本,以便下载并安装对应的VS版本(vs需要先安装)
第三:确定CUDA版本对应的cuDNN版本,这个其实不用太关注,因为在cudnn的下载页面会列出每个版本对应的cuda版本,11.x以上对应的范围很宽
2.1 查看显卡支持的最高CUDA的版本
在显卡驱动被正确安装的前提下,在命令行里输入
nvidia-smi
效果如图所示:
可以看到显示CUDA Version为12.3,说明该显卡最高支持到12.3,我这里就选择11.8的版本,你也可以选择其他的版本比如 12.2,12.1 等。
2.2 下载并安装CUDA
下载:
下载CUDA就是下载Cuda Toolkit。
- Cuda Toolkit相当于手术室中的工具
- Cuda相当于手术室
- 只要有工具哪里都可以是手术室,手术室只是一个称呼
来到NVIDIA官网:
CUDA Toolkit Archive | NVIDIA Developer
安装:
- 双击选择程序安装
- 选择程临时解压路径
选择默认即可,安装过程中会使用临时解压路径(后面系统会自动删掉)。
- 系统检查完成后点击同意并继续
- 自定义安装
选择精简,这里建议默认安装,也可手动安装,但是要记得自己安装的位置,因为后面需要配置系统环境变量。
5.查看环境变量(一般会自动添加)
在计算机上点右键,打开属性->高级系统设置->环境变量,可以看到安装后,自动默认在系统中配置好
用户环境:
系统环境:
- 查看版本
安装完毕在命令行输入 nvcc --version,可以看到我安装的是11.7。至此,CUDA的安装过程结束。
2.3 确定CUDA版本支持的VS版本
CUDA是用C++语言写的,想要运行CUDA需要有C++编译器,因此需要下载相对应的MSVC。
查询官方安装文档,这里给出文档地址:
Installation Guide Windows :: CUDA Toolkit Documentation
我看了看我的VS和MSVC版本:
MSVC版本:1942
VS版本:2022 17.1
很好,我知道了我的Vs他是用不了我电脑安装的CUDA11.8的 😂,他用不了GPU啦~~
别急别急,别到这里就想着去升级你的CUDA版本,因为Pytorch现在最高只支持CUDA11.8,如果你升级了,你就不能用Pytorch了。
至于VS能不能用CUDA,谁管他呢?目前没有人有需求用VS来跑GPU吧😂😂😂(安慰自己)
这里,我是因为之前下载的比较新的版本的VS导致不能使用CUDA11.8,同时考虑到Pytorch只能使用到CUDA11.8,因此优先考虑Pytorch的使用。
如果是还没有下载VS的友友们,直接下载较低版本的VS如2021,2019即可😝😝~~
2.4 确定并下载CUDA版本对应的cuDNN版本
来到NVIDIA官网:
cuDNN 9.6.0 Downloads | NVIDIA Developer
在cudnn下载页面,我们cuda是11.8,因此下载下面这个版本。
点击下载,得到压缩包:
cudnn-windows-x86_64-9.6.0.74_cuda11-archive.zip
3. 配置CUDA
通过前面的操作,我们完成了:
- CUDA Toolkit的下载。
- CuDNN的下载。
- VS版本检查(这一步可有可无)。
接下来,我们需要进行的是CUDA的配置,CUDA的配置其实是简单的。
配置本质就是:把CuDNN放到CUDA Toolkit中(CUDA中)
双击上面得到的压缩包:
cudnn-windows-x86_64-9.6.0.74_cuda11-archive.zip
将会得到如下图的三个文件夹:
把这三个文件夹的文件分别拷贝到CUDA安装目录对应的(bin、include、lib)文件夹中即可。CUDA的lib目录有x64 、Win32、cmake三个文件夹,拷到其中的x64这个文件夹中
到这里CUDA的配置就结束啦🥰🥰🥰~~~
4. 删除CUDA、CuDNN
4.1 删除CUDA
在开始菜单栏通过 Uninstall 来卸载
4.2 删除含CUDA的程序
- 在搜索栏输入控制面板---->打开控制面板
- 点击程序和功能
- 卸载所有与CUDA有关的程序(其他不要删除)
4.3 删除环境变量
- 打开 此电脑---->系统属性---->高级系统设置---->环境变量
也可以直接搜索环境变量 - 找到环境变量和系统变量的path,点击编辑,若发现path中没有含CUDA的环境变量,证明刚刚第一步卸载CUDA的时候系统已经自动删除,若系统没有自动删除(path中仍然含有C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0这样含有CUDA的路径),则需要手动删除。
4.4 移除CUDA目录
删除安装CUDA时产生的文件夹:
- 打开C盘或CUDA Toolkit安装的位置。
- 找到并删除
NVIDIA GPU Computing Toolkit
文件夹,一般位于
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8
或类似路径。
4.5 检查驱动程序
CUDA安装过程中会安装NVIDIA驱动,如果需要完全移除:
- 打开“设备管理器”。
- 展开“显示适配器”,找到NVIDIA的显卡设备。
- 右键点击显卡名称,选择“卸载设备”。
- 在弹出的卸载窗口中选中“删除此设备的驱动程序软件”,然后点击“卸载”。
重启计算机以完成驱动程序的卸载。
4.6 清理注册表(不推荐)(不要也可以)
清理注册表前请务必备份注册表,以防止误操作造成系统问题:
- 打开注册表编辑器(运行regedit)。
- 搜索并删除所有与CUDA相关的注册表项。这通常位于
HKEY_LOCAL_MACHINE\SOFTWARE
和
HKEY_CURRENT_USER\Software
路径下的NVIDIA Corporation条目中。 - 仔细检查是否还有其他CUDA相关条目,并谨慎删除。
注意注册表的清理需谨慎进行,以免影响系统稳定性。
4.7 使用专业卸载工具(推荐用这里删除注册表项)
如果上述步骤后仍有残留,可以考虑使用CCleaner等专业卸载清理工具:
- 安装并运行CCleaner。
- 使用其“注册表清理”功能扫描并清理残留的注册表项。
- 使用其“卸载程序”功能检查是否还有遗留的CUDA组件。
在整个清理过程中,最为重要的步骤是先通过标准方式卸载CUDA软件、再清理环境变量、最后清理注册表和系统驱动,以确保CUDA 8.0被完全卸载。此外,备份重要数据和注册表是必要的预防措施,以免在卸载过程中发生不可预料的问题。
5. 总结
本文到这里就结束啦~~
如果觉得对你有帮助,辛苦友友点个赞哦~