一、前置准备:更新显卡驱动
CUDA的运行依赖显卡驱动,且驱动版本必须≥CUDA要求的最低版本。
1.1 查看当前驱动与支持的CUDA版本
1.按下 Win+R ,输入 cmd 打开命令提示符

2.输入以下指令:
bash
nvidia-smi

3.右上角 CUDA Version 表示驱动支持的最高CUDA版本。
二、安装 CUDA Toolkit 12.8
1.下载安装包
打开CUDA Toolkit 12.8.0 官方下载页,按如下选项选择:
- Operating System:Windows
- Architecture:x86_64
- Version:Windows 11
- Install Type: exe(local)(本地完整安装包,离线安装更稳定)
点击Download下载安装包(约3GB)。

2.安装步骤
1.双击安装包,首先会弹出临时解压目录,选择合适的目录后点击OK。

2.稍作等待

3.许可协议界面,点击【同意并继续】:

4.安装类型选择【自定义(高级)】:

5.自定义组件选择:
- Diver components(驱动组件):全部取消勾选。我当前已有573.22新版驱动,安装包里的驱动版本更旧,覆盖会导致异常。
- Visual Studio Integration:取消勾选。纯Pytorch深度学习完全用不到CUDA C++编译,勾选反而可能因缺少VS环境报错。

6.选择安装路径

路径中不要有中文和空格。
6.点击【下一步】等待安装完成,结束后无需重启。

三、安装cuDNN神经网络加速库
cuDNN是深度学习训练的核心加速库,必须和CUDA版本严格对应(CUDA 12.8→cuDNN 9.x)。
1.下载
1.打开NVIDIA cuDNN下载页,注册并登录免费的NVIDIA开发者账号。
2.在下载页,找到cuDNN for CUDA 12.x,点击Windows(zip)

2.安装
1.解压cuDNN压缩包,得到bin、include、lib三个文件夹。

2.打开CUDA 12.8安装目录。

3.将cuDNN三个文件夹内的文件,分别复制到CUDA目录的同名文件夹中:
bin→bin
include→include
lib\x64→lib\x64
注意:是复制文件内容,不是直接覆盖文件夹,避免误删CUDA原有文件。
四、验证CUDA安装
1.重新打开一个CMD窗口,输入:
bash
nvcc -V
2.正常输出示例:

出现release 12.8即代表安装成功。
3.硬件连通性验证:
进入CUDA目录下的extras\demo_suite文件夹,地址栏输入cmd回车,执行:
bash
deviceQuery.exe

输出末尾显示Result = PASS则说明CUDA与显卡完全正常通信。
五、安装Pytorch GPU版
注意:RTX 50系列只能用cu218及以上版本的Pytorch,安装cu124/cu121会出现 no kernel image is available报错,无法正常运行。
打开Python环境终端,执行以下命令:
bash
pip install torch==2.11.0 torchvision==0.26.0 torchaudio==2.11.0 --index-url https://download.pytorch.org/whl/cu128 --default-timeout=1000 --retries=10
如果大家身处国内,此办法可能会非常慢,这里推荐一个自己的小办法:
1.进入三个链接,下载对应内容:
下载完成后,进入下载目录并执行安装:
bash
cd D:\torch
bash
pip install torch-2.11.0+cu128-cp310-cp310-win_amd64.whl torchvision-0.26.0+cu128-cp310-cp310-win_amd64.whl torchaudio-2.11.0+cu128-cp310-cp310-win_amd64.whl
之后,以管理员身份运行Power Shell,并在里面输入:
bash
Get-ChildItem -Path "C:\Users\19681\.conda\envs\EdgeSenseAI" -Recurse | Unblock-File
等待命令执行完成即可。
六、验证
运行如下代码:
python
import torch
print("CUDA可用:", torch.cuda.is_available())
print("PyTorch版本:", torch.__version__)
print("绑定CUDA版本:", torch.version.cuda)
print("显卡型号:", torch.cuda.get_device_name(0))
# 简单算力测试
x = torch.randn(1000, 1000).cuda()
y = torch.matmul(x, x)
print("GPU张量计算完成,输出形状:", y.shape)
输出如下:
