让GTX 650Ti和M40计算卡组合在Win10 22H2中实现后者的正常游戏调用,功夫没白费!
在2天前我水了下面这篇东西:
让Nvidia GT610和Tesla M40计算卡能够协同凑合用—仅作抛砖,无技术含量+相关知识学习 - 哔哩哔哩 (bilibili.com)
文中提到,经过我的反复尝试,GT610+M40计算卡组合无法在Win10 22H2环境中实现对后者在游戏场景下的正常渲染和图像输出调用(使用下面的办法GT610应该也没戏,只能使用Win11进行指定)。不过我依然没有死心,继续拿出退休半年的国际大厂MSI出品的GeForce GTX 650Ti神卡不断进行试验,终于搞定了GTX 650 Ti显卡和M40计算卡组合在Win 10 22H2环境下,在游戏场景时对后者的正常调用,即高性能选项为M40,且NV控制面板中可使用“首选图形处理器选项”自由选择由M40/650Ti进行渲染,所以继续水上一篇,一是自己的学习笔记,二是供有兴趣的同学参考。
注意:我本身没有和计算卡相关的深度学习需求,买来主要目的是折腾加体验游戏,所以我既没有测试生产力场景,也没法保证下面的办法对于游戏和生产力场景能够兼顾,如是和我一样的垃圾玩玩佬+游戏体验佬,就可以拿去参考了试试。建议不太了解的同学去读上面第一篇水文,了解:(1)什么是TCC/WDDM模式,这是玩M40的常识性基础知识;(2)另外就是如何使用Gopupd工具给老卡添加uefi环境支持模块的方法,这一点对老卡和M40组合能成功达成目标是必须的步骤,因为600系老卡很少有出厂即支持uefi环境的版本,需要自行添加支持模块(3)基本的修改方法;(4)以及如何使mod后的驱动在官方数字签名失效的情况下正常加载的解决方法。以上内容这篇水文里不再重复。
要使GTX 650Ti和M40计算卡组合能在Win10环境下实现上述目的,选择合适的驱动进行修改很重要,之前我使用了GTX610/650Ti和M40组合,都是在win10下选择Game Ready驱动进行修改并安装的尝试,结果是在M40的WDDM模式开启的状态下,前2种组合均能正常共存,但Win10的图形设置的高性能选项始终还是610或650Ti,NV控制面板中也没有“首选图形处理器选项”,所以没法在游戏时调用M40;既然GR版本不行,那就换用其他版本的驱动继续尝试。
实现过程:
Nvidia GTX 650Ti核心代号为GK106,使用 Kepler(开普勒)架构,下面这张图来自techpowerup.com的GPU数据库页面,列出了NV所有使用GK106核心推出的显卡产品,注意最下面划红线的Quadro K4000这块专业绘图卡,从规格参数上看,其与GTX 650Ti最为接近,和GTX 650 Ti boost一模一样;另外,因为NV对于专业卡的软件支持周期要长于游戏卡,可使用较新版本的驱动,所以可作为驱动inf安装信息文件的被修改对象来处理。

选定K4000作为修改对象后,在NV官网选择对应驱动下载时,注意选择“生产分支(Studio驱动)且注意图片的说明”,如下图:

上图直接点击搜索,即出现官方推荐的版本,如下图,下载即可。

修改驱动inf安装信息文件:
基本方法同上一篇,这里注意一下,驱动安装程序运行到有取消的界面时,要先进入C:\NVIDIA\DisplayDriver\这个目录把驱动拷贝到其他盘中,然后再点击“取消”,直接点击“取消”的话,C盘解压的驱动目录会自动删除,N近期出的驱动点取消都会自动删除解压文件夹。
把驱动复制到其他盘后,找到Display.Driver这个目录,进入后找到nv_dispwi.inf这个文件(和Game Ready版驱动的名字略有不同),实施修改即可。
用记事本自带的搜索功能,搜索11FA(这个是Quadro K4000的设备ID),一共只有3处,改为11C6(650ti的设备ID)即可,改好后保存即可,至于改不改识别型号名称(搜索NVIDIA Quadro K4000)随你,这个改不改没关系,我没有改,你改成NVIDIA GeForce GTX 9090Ti都行,其只影响windows设备管理器中的显卡的名称显示,NV驱动控制面板依旧识别为你的卡的实际型号,PS:NV10多年前即已经把系统驱动对核心DeviceID的识别校验放到了核心芯片内部,刷个bios,改几颗电阻就能游戏卡变专业卡的好事早已成为历史。
系统设置及安装驱动:
改好以后,保存文件,然后是打开系统的测试模式及禁用数字签名(用bootice,见我的上一篇水文),搞好以后,拔掉网线,重启计算机到桌面,接着才能安装你mod过的驱动,一定要勾选“执行清洁安装”的的框框(win10和11都是联网状态下,新系统进入桌面就自行更新驱动,拔掉网线避免意外情况发生最保险),安装好后,再次重启计算机到桌面即可。
开启win环境下M40计算卡的WDDM运行模式:
以管理员权限(右键选择即可)打开cmd命令行模式:
输入:
nvidia-smi #这条是查看设备状态,前面有个设备编号,如系统是2块显卡,不是0就是1,看清楚m40的设备编号,下一条命令要用
nvidia-smi -dm 0 -i 你的m40的设备编号 #这条是切换你的m40计算卡到WDDM模式
如正确运行,则返回信息的最后一行为“all done”。
修改注册表,使得windows的高性能选项默认为M40计算卡(这里部分参考了B站站友@来自神盾局的小特工 的方法,在此深表感谢,原文见:https://www.bilibili.com/read/cv21493059?from=search&spm_id_from=333.337.0.0):
我的改动:
打开注册表(cmd命令行运行regedit回车即可),定位到:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\0001或者是0000(比如我的系统是M40计算卡和GTX650Ti的组合,那么这2个分支分别对应2块显卡的信息,不同的电脑可能不一样,自己确认即可)
A、对于M40信息所在的分支:
具体修改:
1 删除"AdapterType" 这个键
2 将"FeatureScore" 这个键的键值改为d1(209,显示为0x000000d1)
3 右键新建一个DWORD32值,将名字改为“EnableMsHybrid”,并将值改为1(显示为0x00000001)
4 右键新建一个DWORD32值,将名字改为“GridLicensedFeatures”,并将值改为7(这个需不需要存疑,因为其实现的功能和上面介绍的nvidia-smi的相关命令一致,但我还是加了)
B、对于Geforce 650Ti所在的分支:
1 右键新建一个DWORD32值,将名字改为“EnableMsHybrid”,并将值改为2(显示为0x00000002)
不太明白的看下面这两张图即可:


改完注册表后,进入设备管理器,将两块都停用后再启用(右键—禁用—启用),最后重启计算机,如果上述修改生效的话,在重新启动计算机时,win10会显示“正在更新设备配置信息”的字样,如能看到,大概率有戏了。
最后,重启到桌面,这时候可以发现文中提到的目标已经实现(怎么看上一篇水文都有描述),如下面两张图所示:


后记:
1.如有核显机器,尽量用核显机器装win10来玩M40,系统将自动识别核显为节能,M40为高性能,也不用上面这么麻烦来修改驱动修改注册表了。
2.GT610属于费米(Fermi 2.0)架构,对应的游戏型号为500系(挂着6XX的名的冒牌货),实在太老,且因为硬件规格太低,大概率没有与之对应的专业显卡(没仔细研究,个人猜测),可尝试使用很老的Studio驱动(同时支持500系和600系核心的专业卡驱动)修改了试试(没有相似型号就看哪个型号顺眼就替换哪个的ID),使用GT610+M40的组合还是建议Win11,毕竟新系统直接支持指定,方便太多了。