
CUDA 与 N 卡驱动安装系列第 1 篇。刚拿到 N 卡想本地跑 AI却不知道驱动、CUDA Toolkit、cuDNN 到底要装哪几个本篇把CUDA 安装 / N 卡驱动这件事一次讲透先nvidia-smi看家底再按决策树装驱动判断 CUDA Toolkit 装与不装最后用nvcc --version收口。读完你能独立搭好 GPU 底座并看懂驱动版本与CUDA 版本那对最容易搞混的关系。一、为什么需要它本地 AI 的第一道坎几乎人人栽在驱动和 CUDA 这一层。后面系列里出现的torch.cuda.is_available()返回False、CUDA driver version is insufficient for CUDA runtime version、CUDA error: no kernel image is available for execution on the device绝大多数根源都不在框架或模型而在这篇讲的底座没装对。我的排错经验是先想清楚一件事本地 AI 的 GPU 软件栈是三层结构——最底下是 NVIDIA 驱动让操作系统和显卡对话的接口中间是 CUDA Toolkit 和 cuDNN开发工具链可选最上面是 PyTorch、Ollama、vLLM 这类框架和应用。三层各管各的事装之前先分清哪些必装、哪些可不装能少走一半弯路。核心结论先放这儿驱动必装CUDA Toolkit 大多数场景可不装——主流框架的预编译包wheel已经自带了 CUDA 运行时纯跑 PyTorch 的人完全可以跳过那 3-5 GB 的安装包cuDNN 同理多数时候框架里已经捆绑好了。所以本篇的路线是先nvidia-smi查显卡与驱动现状再装驱动然后走一遍决策树判断要不要装 Toolkit 和 cuDNN最后做三步验证。国内用户注意驱动和 CUDA Toolkit 都是从 NVIDIA 官网直接下载不走 pip下载慢的话只能换网络时段这一点本篇会专门提。二、环境要求项目要求说明GPUNVIDIA 显卡显存 8 GB 以上12 GB 以上更舒适显存是能跑多大模型的硬门槛估算方法详见《AI-05 显存计算与模型选择》系统Windows 10/11 或主流 LinuxUbuntu 22.04 等WSL2 走 Windows 侧驱动详见《AI-04 WSL2 部署 AI 开发环境》NVIDIA 驱动新版游戏/专业驱动550 系及以上建议550 系驱动约支持 CUDA 12.4555 系约支持 12.5560 系约支持 12.6具体以 NVIDIA 官网兼容性表为准CUDA Toolkit纯 PyTorch 场景可不装需要 nvcc 编译自定义代码时才装约 3-5 GBcuDNN多数场景不装框架 wheel 已捆绑对应版本Python3.10 / 3.11 / 3.12保守选 3.11本篇不装 Python环境管理详见《AI-03 Python 环境与虚拟环境》先说清一个最容易踩的坑nvidia-smi输出右上角那个 “CUDA Version” 是驱动支持的最高 CUDA 版本不是你已经装好的 Toolkit 版本。很多人装完 PyTorch 一看这个数字没变以为装错了——其实它从装完驱动那一刻起就不会自己变。这个概念贯穿本篇下面反复出现。三、安装与部署3.1 第一步nvidia-smi 看家底装任何东西之前先开终端Windows 的 cmd 或 PowerShellLinux 的 terminal跑一条命令nvidia-smi两种结果提示nvidia-smi 不是内部或外部命令Linux 上是command not found说明驱动还没装直接从 3.2 开始看到一张表说明驱动已经在。表里重点看三处——驱动版本号如 550 系、右上角CUDA Version驱动支持的上限、显卡型号与显存大小。把这三个数字记下来后面装 PyTorch 选版本全靠它。我一般会在装驱动前先重启一次机器把浏览器硬件加速、游戏、视频渲染这类后台进程清干净避免装驱动时被 GPU 占用卡住。3.2 Windows 装驱动官网安装包打开 NVIDIA 官网驱动下载页按实际卡型选 GeForce游戏卡或数据中心卡专业卡选对系统和架构下载.exe安装包并运行按提示走完全过程安装方式里选“表达式安装”即可自定义安装只有想剔除个别组件时才用我一般不折腾装完重启这一步别省——显卡驱动的核心组件要重启后才完成替换跳过它偶尔会出“装上了但时灵时不灵”的问题再跑nvidia-smi看到表格即成功。我的习惯是老机器升级驱动时先在“设备管理器 → 显示适配器 → 卸载设备”里把旧驱动清掉再装新的省得残留配置在后面出怪问题。装之前顺手把 NVIDIA 控制面板里的实验性选项恢复默认少一个变量少一类怪问题。WSL2 用户特别注意Windows 侧装的是同一套驱动WSL 内部不需要也不应该再装一遍 NVIDIA 驱动详见《AI-04 WSL2 部署 AI 开发环境》。3.3 Linux 装驱动apt 与 .run 两种方式方式一系统仓库推荐新手和内核配合更好升级省心sudo apt update sudo apt install nvidia-driver-550仓库版本号会随发行版更新这里用 550 举例。选 apt 方式的核心理由驱动和内核是强耦合关系系统升级内核时仓库版驱动通常有对应的内核模块同步更新出“装完能用、系统一升级就黑屏”的概率比 .run 低不少装完执行sudo reboot重启后跑nvidia-smi验证。方式二NVIDIA 官网.run文件版本更新更快但要求手动操作官网下载对应的.run文件装驱动前确认没有桌面会话/关闭 X从图形界面里直接跑很容易中途失败最稳的做法是先切到纯文本 TTY 登录再执行赋予执行权限并运行sudo chmod x NVIDIA-Linux-x86_64-xxx.run sudo ./NVIDIA-Linux-x86_64-xxx.run按向导选项走遇到提示禁用内核自带显卡模块时按向导勾选完成后sudo reboot。两种方式装完都是同一个验证动作nvidia-smi出表。3.4 判断 CUDA Toolkit 装与不装先看需求再决定下不下那 3-5 GB可以不装 Toolkit你只是用 PyTorch、Ollama、vLLM 这些现成框架跑推理、微调或出图。它们的 wheel 包已经捆绑了编译好的 CUDA 运行时装上框架就能直接用卡。纯 PyTorch 用户跳过本节直接去下一篇是这条路线里最省硬盘的正确姿势。需要装 Toolkit你要用nvcc编译自己的.cu代码、从源码编译框架、或用 TensorRT 这类独立工具链。判断标准很简单——你的工作流里有没有编译 CUDA 代码这个动作有就装没有就不装。需要装时的步骤Windows 为例到 NVIDIA 官网 CUDA Toolkit 下载页选系统架构下载本地安装包运行安装包安装模式选Local本地组件列表里至少保留 nvcc 工具链安装前确认驱动已是新版装完重启跑nvcc --version验证。Linux 侧官网同样提供 runfile 方式安装流程和上面一致。3.5 cuDNN 何时需要cuDNN 是卷积类算子的加速库。结论多数场景不用单独装。PyTorch 的 wheel 里已经捆绑了对应版本的 cuDNNOllama、vLLM 这类应用也不依赖你单独装 cuDNN。只有两种情况才动它从源码编译框架时或应用明确提示找不到 cuDNN 库文件时。需要装的话到 NVIDIA 官网下载对应 CUDA 大版本的 cuDNN 包按说明把库路径配进环境即可装完不需要重启。3.6 版本对应关系驱动 550 支持 CUDA 12.4 是什么意思把两个版本数字的关系钉死驱动版本决定系统能跑的 CUDA 上限。常见对应写约以 NVIDIA 官网兼容性表为准550 系约支持 CUDA 12.4555 系约支持 12.5560 系约支持 12.6PyTorch 的 cuXXX wheel代表它编译时用的 CUDA 版本。原则只有一条PyTorch 编译所用的 CUDA 版本 ≤ 驱动支持的 CUDA 版本。所以nvidia-smi 显示支持 12.4你却装了 cu126 的 PyTorch大概率报CUDA driver version is insufficient for CUDA runtime version——解法是升级驱动而不是去装 12.6 的 Toolkit。反过来驱动够新但显卡太老太新的 CUDA 编译在老架构上会报no kernel image解法是换与显卡架构匹配的 PyTorch wheel而不是升驱动。两个方向别搞反。四、验证三步收口一步一层nvidia-smi驱动层。预期出一张表含驱动版本、CUDA Version支持上限、显卡与显存。到这一步说明GPU 认。nvcc --version工具链层。预期打印 Toolkit 版本号。没有 nvcc 命令提示不是内部或外部命令 / command not found是正常的——说明你按 3.4 的判断跳过了 Toolkit对纯 PyTorch 用户完全不影响。框架层放到下一篇装完 PyTorch 后跑python -c import torch; print(torch.__version__, torch.cuda.is_available())预期输出形如2.x.xcu124 True。三层全绿GPU 底座就算打完了。五、进阶技巧nvidia-smi 看实时占用开两个终端一个跑模型另一个刷nvidia-smi观察显存和 GPU 利用率是否随任务变化。跑了大模型但显存纹丝不动基本可以断定模型没上卡十有八九是 PyTorch 装成了 CPU 版下一篇的验证环节会专门治这个。cuXXX 选择口诀PyTorch 的 cuXXX 不超过 nvidia-smi 显示的 CUDA 上限、且显卡架构被该 CUDA 版本覆盖两个条件同时满足就稳。具体到每张卡怎么选 wheel见下一篇的 pytorch.org 选择器用法。多版本共存靠隔离不同项目锁不同 torch 版本时一个项目一个虚拟环境venv 或 conda全局环境只放公共工具。混装多版本 CUDA 是 Windows 上Error 126: Unknown error和环境变量污染的高发原因隔离是最便宜的保险。国内下载口径NVIDIA 驱动和 CUDA Toolkit 不走 pip 镜像只能官网直连慢就换时段或换网络别信任何“加速下载站”的驱动包PyTorch wheel 在官方源download.pytorch.org国内直连通常可用但不快其余依赖配合清华源装会快很多pip install pkg -i https://pypi.tuna.tsinghua.edu.cn/simple六、故障排查按分层定位法从下往上排网络层 → 驱动层 → 框架层 → 显存层 → 应用层。下面每条都标了层先看层再动手。层症状 / 报错原文原因解决【驱动】Linux 下nvidia-smi提示command not foundWindows 提示不是内部或外部命令驱动未装或命令不在 PATH按 3.2/3.3 装驱动已装则export PATH$PATH:/usr/binnvidia-smi 在 /usr/bin【驱动】CUDA driver version is insufficient for CUDA runtime version驱动低于框架所需的 CUDA 版本升级 NVIDIA 驱动注意是升驱动别只升 Toolkit【框架】torch.cuda.is_available()返回FalsePyTorch 装了 CPU 版或驱动过老重装对应 cuXXX 版 wheel或升级驱动【框架】CUDA error: no kernel image is available for execution on the devicePyTorch 编译的 CUDA 版本高于显卡架构支持wheel 与卡不匹配换与显卡架构匹配的 PyTorch wheel以 pytorch.org 选择器为准【驱动】Linux 下Could not load libcuda.so.1未装 NVIDIA 用户态驱动或容器未透传 GPU装驱动Docker 场景加--gpus all【环境】Windows 下Error 126: Unknown error/ 加载 .dll 失败如libcudart.so.12 not found类报错多版本 CUDA 混装、PATH 污染清理环境变量用 conda 隔离环境用ldd/ dumpbin 看具体缺哪个库【网络】HuggingFace 下载卡住 /ConnectionError/ 超时国内访问 huggingface.co 受限set HF_ENDPOINThttps://hf-mirror.comLinux 用export或改用 ModelScope详见《AI-06 模型下载全攻略》【显存】torch.cuda.OutOfMemoryError: CUDA out of memory. Tried to allocate ...模型 / 上下文 / 批太大降量化位宽、降max-model-len/ batchnvidia-smi查后台占用并清理【驱动】WSL 内nvidia-smi报The NVIDIA driver on your system is too oldWindows 侧驱动太老不支持 WSL2 GPU升级 Windows 侧 NVIDIA 驱动到最新版WSL 内不需要单独装驱动排不动时的 30 秒探针顺序ping hf-mirror.com网络层→nvidia-smi能否出表驱动层→torch.cuda.is_available()True与否框架层→nvidia-smi显存占用显存层→ 应用日志与端口应用层。逐层定位不跳级。七、本篇自检清单nvidia-smi能出表能说出驱动版本号与 CUDA 支持上限分别是多少理解 nvidia-smi 的 “CUDA Version” 是驱动支持上限不是已装的 Toolkit 版本能判断自己是否需要装 CUDA Toolkit有编译需求才装以及 cuDNN 何时需要nvcc --version已验证或确认跳过且知道为什么不影响 PyTorch能说出驱动 550/555/560 系与 CUDA 12.4/12.5/12.6 的对应关系装完 PyTorch 后torch.cuda.is_available()返回True衔接 AI-02参考NVIDIA 驱动下载页https://www.nvidia.com/Download/index.aspxCUDA Toolkit 安装指南https://docs.nvidia.com/cuda/cuda-installation-guide-microsoft-windows/cuDNN 文档https://docs.nvidia.com/cudnn/PyTorch 官网Get Started 安装命令生成器https://pytorch.org/get-started/locally/