背景
我有一个P40显卡,电脑安装的是windows环境,ollama这些软件还行,但是尝试一些其他项目的时候,windows环境就各种依赖包不支持了。网上查了资料,感觉可以通过安装wsl2的方式来使用。安装了wsl2之后,发现找不到显卡,于是乎冒险开始了。
排查问题
我的wsl2已经安装了cuda toolkit,我在启动我的项目的时候,报错:Found no NVIDIA driver on your system. Please check that you have an NVIDIA GPU
咨询AI:建议我检查windows环境的驱动有没有装好,nvidia-smi能不能看到数据,再看看各种软件、驱动的版本对不对,再试试重启行不行。
我反馈各种软件都装好了,驱动都是最新的,windows里面可以用nvidia-smi,wsl里面用不了。
AI反馈,这很不正常,正常windows里面如果可以用,wsl里面也应该可以的!
然后AI给了我一堆指令,各种排查和反馈,然后我发了个nvidia-smi的输出给AI看:
C:\Users\admin>nvidia-smi
Wed Jun 25 15:59:44 2025
+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 552.55 Driver Version: 552.55 CUDA Version: 12.4 |
|-----------------------------------------+------------------------+----------------------+
| GPU Name TCC/WDDM | Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap | Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|=========================================+========================+======================|
| 0 Tesla P40 TCC | 00000000:04:00.0 Off | Off |
| N/A 40C P8 11W / 250W | 9MiB / 24576MiB | 0% Default |
| | | N/A |
+-----------------------------------------+------------------------+----------------------+
+-----------------------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=========================================================================================|
| No running processes found |
+-----------------------------------------------------------------------------------------+
C:\Users\admin>
看到这个数据,AI瞬间暴走:
我发现问题了!你的 GPU 是 Tesla P40,并且设置为 TCC 模式,这就是问题的根源。
TCC (Tesla Compute Cluster) 模式不支持 WSL2 GPU 穿透! WSL2 只支持 WDDM 模式的 GPU。
解决方案:切换到 WDDM 模式
然后AI建议我切换模式:
# 在 Windows 管理员 CMD 中
nvidia-smi -dm 0
# 0 = WDDM 模式, 1 = TCC 模式
我尝试了命令,发现报错,提示我这个显卡不给切换WDDM模式!!
然后我告诉AI不给切换,AI在网上一通搜,说确实! 这个显卡不给切换,需要改注册表(估计搜到我后面看到的那篇博客了)
然后我按照AI的教程一通注册表修改,发现还是不行,重启完直接nvidia-smi的命令在windows下都不给用了。
然后我就回滚了注册表,然后又和AI一通友好的交流,AI劝我放弃吧少年,要不然就在windows下面玩,要不然去租云显卡玩,你这破显卡别玩了。。
还个了我一个结论:

我还是不肯放弃,和AI又开展了几十轮的友好对话,搞了整整一下午。
最后我将要放弃的时候,去google找关键词搜索 “P40 WSL WDDM”,看到篇文章:
https://blog.csdn.net/IZhaiTing/article/details/145520977
一个老哥介绍,帮P40改WDDM模式玩原神的教程。。
看来可行啊,仔细看了下教程,和前面AI指导的差不多,唯一区别的,我需要降级我的P40驱动,我最新的驱动里面已经被NVIDIA阉割掉了WDDM的驱动了! 坑!!
下面摘抄那个老哥的教程:
P40显卡默认在TCC模式下,需要改为WDDM模式才可作为“高性能显卡”使用。
TCC 模式是专门为数据中心和高性能计算(HPC)任务设计的。它主要用于 Tesla 系列显卡(如 P40)等计算卡,适合进行大量的并行计算任务,如深度学习、科学计算、渲染等。此模式下,显卡不处理与显示相关的任务,它的所有资源都专注于计算工作。
WDDM 是 Windows 操作系统下的显示驱动模型,适用于需要图形显示功能的显卡。显卡处于 WDDM 模式时,它支持图形渲染、桌面显示和视频输出等任务,适合游戏、日常桌面操作和图形应用程序。
一、 基本环境
名称 详情
操作系统 Win11 24H2
显卡0 GTX 750
显卡1 Tesla P40
二、 驱动下载
此处需要为两个显卡打驱动,要注意驱动版本尽量一致,另外,新版的P40驱动可能已经屏蔽了WDDM,尽量使用旧版。
下载地址:下载 NVIDIA 官方驱动 | NVIDIA
P40驱动:551.61-data-center-tesla-desktop-win10-win11-64bit-dch-international
或:https://download.csdn.net/download/IZhaiTing/90356447
GTX750驱动:551.61-desktop-win10-win11-64bit-international-dch-whql
或:https://download.csdn.net/download/IZhaiTing/90356442
安装两个显卡驱动之前,如果已经安装了显卡驱动,可以使用DDU工具清理,清理重启后再安装驱动。
DDU下载地址:Display Driver Uninstaller (DDU) download latest version 18.0.9.2 | Wagnardsoft
或:https://download.csdn.net/download/IZhaiTing/90356472
三、 配置P40和GTX750注册表
打开注册表编辑器,进入以下路径
计算机\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class{4d36e968-e325-11ce-bfc1-08002be10318}

P40下修改的注册表内容
新增/修改 名称 值 类型 原始值
修改 AdapterType 0 DWORD 2
修改 FeatureScore d1 DWORD cf
新增 GridLicensedFeatures 7 DWORD
新增 EnableMsHybrid 1 DWORD
GTX750下修改的注册表内容
新增/修改 名称 值 类型
新增 EnableMsHybrid 2 DWORD

设备管理器中禁用启用

修改完成后,在<设备管理器中>禁用P40再启用,检查启用后是否正常,最好重启电脑后再检查一下。
命令检查两个显卡是否识别正常,P40是否在WDDM模式下

检查任务管理器中GPU显示是否正常

四、禁止驱动安装
如不禁用,可能会被windows自动更新,导致两个显卡驱动版本不匹配报错。打开组策略,计算机配置->管理模板->系统->设备安装->设备安装限制->阻止使用与下列设备安装程序类相匹配的的驱动程序安装设备

设备Guid从<设备管理器>中查看


五、 设置默认显示卡

如果安装完P40后多了虚拟显示器,可以在英伟达控制面板取消

五、 打开游戏


六、 关于P40的散热和噪音
P40是被动散热,需要自行增加散热风扇,选择散热风扇要考虑机箱长度、散热风扇噪音,最好支持调速的风扇,主板支持控制转速就插主板上,主板如果不支持可以买带温感的调速板。
————————————————
原文链接:https://blog.csdn.net/IZhaiTing/article/details/145520977