0%

关于Nvidia显卡驱动的那些事

前因

在暑假的时候,我突然对 CUDA 开发有点感兴趣,于是我去下载了一下 CUDA 组件开发包
但是把玩了几个小时,觉得有点无聊,就当场用 GeekUninstaller 卸载它。我也看着他一条一条的注册表条目被删掉,但是就在这里留下了隐患 我会在后文提及原因
九月份开学了,我也有点手痒了,到处拍了些照片,想着回 PhotoShop 里面修一下,没想到它居然出问题了。我当时还没什么察觉到是前面我干的那个 CUDA 组件开发包的问题。于是我选择删掉 PhotoShop 在下一个新版本,正好我也想用一下新功能
但是下载新版本依旧会出现问题,并且出现两种不同形式的崩溃闪退问题
第一种的软件行为路径为:启动 -> 展示启动页面 -> CPU、内存、硬盘读取正常调用 -> 即将打开 PhotoShop 时的某一个瞬间,PhotoShop 的 CPU 占用率清零 -> 软件崩溃闪退
第二种软件行为路径为:启动 -> 展示启动页面 -> CPU、内存、硬盘读取正常调用 -> 正常打开软件,使用所有基础功能不会出现闪退问题 -> 使用图形加速的功能会出现后面的问题 -> CPU 的负载突然满负荷、任务管理器中出现尝试调用我的 Nvidia 显卡的 Graphic 引擎 -> 几秒后 PhotoShop 的 CPU 占用率清零 -> 软件崩溃闪退

以上两种软件行为均可以在 事件查看器 中看到同一种类型的报错

1
2
3
4
5
6
7
8
9
10

错误应用程序名称: Photoshop.exe,版本: 26.7.0.15,时间戳: 0x6823a019
错误模块名称: nvcuda64.dll,版本: 32.0.15.8097,时间戳: 0x68952109 异常代码: 0xc0000005
错误偏移量: 0x00000000001baadb
错误进程 ID: 0x0x54F8
错误应用程序启动时间: 0x0x1DC20C153BA8E17
错误应用程序路径: H:\Ps2025\Adobe Photoshop 2025\Photoshop.exe
错误模块路径: C:\WINDOWS\System32\DriverStore\FileRepository\nvdmsi.inf_amd64_d0190b602da31125\nvcuda64.dll
报告 ID: 4e21a6b6-781b-4664-b997-8ec333281b7d
错误程序包全名: 错误程序包相对应用程序 ID:

在这之后,我带着这个报错在网上找了很多的答案,大家都在说使用 DDU 来完全卸载显卡驱动
我尝试过不同摆列组合的卸载安装驱动(以下均为执行清洁安装)

  1. 只卸载 Nvidia、安装 Game Ready(576.88)
  2. 只卸载 Nvidia、安装 Studio(577.00)
  3. 同时卸载 Nvidia & Intel 、先安装 Intel、再安装 Studio
  4. 同时卸载 Nvidia & Intel 、先安装 Studio、再安装 Intel
  5. 同时卸载 Nvidia & Intel 、先安装 Game Ready、再安装 Intel
  6. 同时卸载 Nvidia & Intel 、先安装 Nvidia app 获取最新版本的 Studio、再安装 Intel
  7. 同时卸载 Nvidia & Intel 、先安装 Nvidia app 获取最新版本的 Game Ready、再安装 Intel
  8. 同时卸载 Nvidia & Intel 、先安装 Nvidia app 获取最新版本的 Studio、再安装 Intel、安装 CUDA 开发组件
  9. 同时卸载 Nvidia & Intel 、先安装 Nvidia app 获取最新版本的 Studio、安装 CUDA 开发组件、安装 Intel
  10. 同时卸载 Nvidia & Intel、先安装 Intel、再安装 Game Ready
  11. 同时卸载 Nvidia & Intel、先安装 Intel、再安装 Nvidia app 获取最新版本的 Studio

无一例外的,以上均为失败,不然我也不会写这一篇文章了(

解决办法

  1. 重装系统
    ↑ 这是极端办法,也是我用了之后我才找到的原因
  2. 在 Windows 设置 - 系统 - 系统信息 - 高级系统设置 - 环境变量 - 系统变量 - Path,在这里面,找到所有包含 Nvidia 字段的相关条目,删除。这个让人头大的问题就解决了
    你的这里面可能会出现一些类似于
1
2
3
4
# 删掉这些条目
C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common
C:\Program Files\NVIDIA Corporation\NVIDIA App\NvDLISR
C:\Program Files\NVIDIA Corporation\NVIDIA NvDLISR

关于我是如何定位到问题的

我先重装了一遍系统,我的 C 盘 也快爆炸了,于是选择重装系统也是一个不错的选择。在重装前,我当然要做好相关的环境、数据备份
在这里我提供一点备份的思路:把需要重点备份的数据分为两大块。一块为开发环境的备份,一块为娱乐环境的备份。

但是这个肯定只能算是一个笼统的分类,我自己当然是稍微改变了一下需要备份的组织架构清单

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# 重装系统后的待办事项

## 开发环境

// 和我学习开发任何东西的一切内容都放在这一块 (包括环境变量的备份,后续可以直接一键导入,不需要一条条的输入)

## 娱乐环境

// 见名知意

## 系统开机启动项

// 一些启动服务放在这里,比如我的后台要挂 LocalSend、ShareX、mihomo party、power toys、everything 这些能明显提升使用体验和效率的工具,不需要每次开机都去多点击几次

## 微软输入法

// 最重要的是学习词库的备份,用了很久不希望重装系统再次让输入法重学一边

上面的都准备好了之后,我使用了 微 PE 装上了 Windows 24H2 专业工作站版本,在用微软自己提供的激活工具 Microsoft-Activation-Scripts 激活

到了验证环境的时候,重装好系统的第一件时间,安装 PhotoShop ,正常工作
让 Windows 自动下载所有需要的驱动,再次打开 PhotoShop ,正常工作
自己主动安装 Nvidia 最新的 Studio 版本,启动 PhotoShop,正常工作
中间我做了其他软件的恢复工作就省略掉吧
轮到我备份的几份关键文件:regedit.reg(重装系统前的整个系统注册表,足足有 800 MB 大)系统环境变量.reg(32 KB)用户环境变量.reg(11 KB)输入法完整环境变量.reg(6 KB)ChsPinyinUDL.dat(88 KB)

再进行了上面的操作之后,我没想着再去验证 PhotoShop 到底还能不能正常使用,先接着回去打游戏了(这天还没上班)

第二天,想着修点图片,结果好家伙,发现有没法使用了。然后左思右想我也没碰什么啊。但是我突然想到上面说到的使用 .reg 文件的恢复变量的操作,于是我去翻变量里面的条目,发现了几条和 Nvidia 相关的条目,全部删掉了之后。居然就好了!没错,居然就是这样神奇的东西把我搞崩溃了一个月

不过幸好最后面我得到了一个系统排查错误的经验,我的 C盘 也大瘦身了,多出来了很多空间接着给我整新东西,我也会做一个新的自己专用的系统镜像,给自己做一个最低保底的系统快照使用,后面环境再怎么崩溃我都可以随便恢复了,把他们上(版本管理)市!

后记

貌似这篇文章不需要什么后记,那我再重复一下上面的吧

不过幸好最后面我得到了一个系统排查错误的经验,我的 C盘 也大瘦身了,多出来了很多空间接着给我整新东西,我也会做一个新的自己专用的系统镜像,给自己做一个最低保底的系统快照使用,后面环境再怎么崩溃我都可以随便恢复了,把他们上(版本管理)市!