讓Nvidia GT610和Tesla M40計(jì)算卡能夠協(xié)同湊合用—僅作拋磚,無技術(shù)含量+相關(guān)知識(shí)學(xué)習(xí)
想到哪里寫到哪里,其中一些知識(shí)筆記是為了自己日后查閱方便放在文章里面,畢竟到處找資料所消耗的時(shí)間成本很高,整體看起來很亂,各位同學(xué)湊合看了。請各位讀完一遍再操作,免得走彎路。
注意:下面文中所指的兩塊卡“正常協(xié)同工作”,意為M40能正常打開WDDM模式,以便于能在游戲時(shí)被正常調(diào)用用于游戲渲染及圖像輸出,如你本身需求是深度學(xué)習(xí)(M40工作在TCC模式),則無需上述操作,直接下載計(jì)算卡專用驅(qū)動(dòng)安裝即可,請悉知。上述描述中的相關(guān)專業(yè)名詞,下文中有解釋。
背景:
最近NV黃世仁家過時(shí)淘汰的專用計(jì)算卡在PDD上大行其道,M40 12G版本券后僅需300元(拿券大神們的到手價(jià)格應(yīng)該還能低上不少),因?yàn)閷I(yè)所限,僅拿來折騰加游戲,無深度學(xué)習(xí)需求,所以就沒有選擇更貴的24G版本。
因?yàn)镸40是純計(jì)算卡,后面無顯示接口,需要與帶顯示接口的顯卡一起協(xié)同工作,到手后查了一些資料,均提到其與NV獨(dú)立顯卡配合使用時(shí),后者不能太老,需至少7系以上,正好手上有一塊白嫖來的GT610,于是就想著能不能把他倆放在一起使用,經(jīng)過試驗(yàn),還真的實(shí)現(xiàn)了,沒啥技術(shù)含量,也只能用很老的驅(qū)動(dòng),但確實(shí)是能用來打游戲,屬于是不想花錢臨時(shí)救急的一個(gè)選擇。
先來幾張圖,證明我不是編的:



實(shí)現(xiàn)過程:
先說說平臺(tái)以及具體配置場景:
CPU:Ryzen 7 5700X(無核顯,要是買的是一塊5600G,就沒有下面的筆記了)
主板:銘瑄電競之心??B550M ?(Ver2.3 BIOS)
內(nèi)存:16G(2R×8)×2 DDR4 3200 OC 3600(1.35V,C18)(三星C-die顆粒)
存儲(chǔ):960G? Hynix洋垃圾 nvme 3.0(?CPU直連PCI-E 4.0槽位)+2T?Seagate sata
顯卡:Tesla M40計(jì)算卡(CPU直連PCI-E 4.0槽)+ GForce GT610(PCH引出的PCIE 3.0×4 槽位)
OS:Win7 X64 Ultimate+Win11 X64?22H2
注意:在電競之心的板子上,如要使用遠(yuǎn)離CPU槽的第二條PCI-E插槽,則遠(yuǎn)離CPU槽的第二條M2插槽必須空出,否則當(dāng)后者插上nvme ssd時(shí),第二條PCI-E插槽會(huì)被禁用。其他主板大多是類似設(shè)計(jì),具體請到官方網(wǎng)站查找相關(guān)說明,或者自己試驗(yàn)。
主板BIOS設(shè)置:你使用的平臺(tái)如是要正常支持大容量顯存計(jì)算卡,需在主板BIOS中開啟above 4g選項(xiàng)(電競之心b550m在chipest大項(xiàng)中,老的主板可能沒有該選項(xiàng),可能需要使用amibcp進(jìn)行修改),網(wǎng)上的教程一般提到需關(guān)閉csm支持,實(shí)際我沒關(guān)也可以正常用,但是如是開啟csm,顯卡(video device)啟動(dòng)模式設(shè)置必須為uefi,這里有一個(gè)問題就是很多老卡的BIOS缺乏uefi環(huán)境支持的模塊,這種場景下的解決辦法如下:看我的專欄(搬運(yùn)一個(gè)GOPupd mod版本合集(免安裝python環(huán)境) - 嗶哩嗶哩 (bilibili.com)),下載gopupd這個(gè)工具,解壓到純英文目錄,然后用gpu-z保存你的老卡的BIOS到一個(gè)文件,將BIOS文件復(fù)制到解壓后gopupd目錄中,將BIOS文件拖放到gopupd.bat這個(gè)批處理文件上,然后按照提示操作即可,實(shí)施上述步驟即可為老顯卡添加uefi環(huán)境支持的模塊,然后使用nvflash刷入即可(我專欄里那篇gopupd搬運(yùn)文章里面介紹了具體刷新的方法),刷好后重啟電腦進(jìn)入BIOS設(shè)置界面,開啟csm后,將video device啟動(dòng)模式設(shè)置為uefi即可,當(dāng)然在你刷了支持uefi環(huán)境的顯卡BIOS后,也可以直接關(guān)閉csm,我開啟的主要原因是因?yàn)槠脚_(tái)上還有win7系統(tǒng),有時(shí)需要使用。
需要了解的相關(guān)知識(shí):
1.Tesla M40計(jì)算卡核心代號(hào)GM200,基于Maxwell 2.0架構(gòu)(麥克斯韋架構(gòu)),對應(yīng)游戲領(lǐng)域產(chǎn)品為GeForce?GTX 980Ti。基于GM200的NV相關(guān)產(chǎn)品如下圖所示:

這里請注意NVIDIA?GeForce?GTX?TITAN?X這個(gè)型號(hào),該型號(hào)與M40 12G計(jì)算卡規(guī)格參數(shù)完全一致,可作為理想的被修改對象,此外,NVIDIA GeForce?GTX?TITAN?X和NVIDIA?TITAN?X是兩種不同產(chǎn)品,后者核心代號(hào)為GP102,采用Pascal架構(gòu),硬件規(guī)格略強(qiáng)于GForce GTX1080Ti,區(qū)分這兩種型號(hào)是為了你自己嘗試修改其他版本驅(qū)動(dòng)時(shí)避免弄錯(cuò)。
2.NVIDIA Tesla/Quadro 系列高端計(jì)算卡在 Windows 環(huán)境下可以配置為 Tesla 計(jì)算集群(Tesla Compute Cluster,簡稱 TCC)模式或 Windows 顯示驅(qū)動(dòng)模型(Windows Display Driver Model,簡稱 WDDM)模式。
兩種模式有不同適用場景。
TCC:該模式下,GPU 完全用于計(jì)算,不能作為本地顯示輸出。
WDDM:該模式下,GPU 既用于計(jì)算又用于本地顯示輸出。(該模式可調(diào)用GPU進(jìn)行游戲渲染并輸出畫面,正是我們需要的)
(引用自https://help.didiyun.com/hc/kb/article/1410366/)
常規(guī)情況下,之所以GT610無法和Tesla M40協(xié)同工作,是因?yàn)槿狈线m的驅(qū)動(dòng)。一般情況下,使用NV獨(dú)顯+M40計(jì)算卡,要使二者正常協(xié)同工作,基本條件是某一版特定驅(qū)動(dòng)同時(shí)支持你的2塊卡的GPU(可以通過查看驅(qū)動(dòng)程序所包含的inf安裝信息文件而獲知)。之前我使用win10或win11系統(tǒng),針對兩塊卡分別安裝兩版不同的驅(qū)動(dòng),嘗試讓610和m40協(xié)同工作,結(jié)果當(dāng)GT610工作在WDDM模式,M40工作在TCC模式時(shí),一切正常;但是當(dāng)我使用nvidia-smi -dm 0 -i 0嘗試切換M40的工作模式為WDDM時(shí),重啟之后設(shè)備管理器中的M40多了一個(gè)黃色嘆號(hào),無法正常工作,所以也就沒法在游戲時(shí)正常調(diào)用。我在NV官網(wǎng)查閱了不少版本的NV驅(qū)動(dòng)(Game Ready版本,GRID版本,Studio版本等等),均沒有發(fā)現(xiàn)能對GT610和M40同時(shí)實(shí)施支持的版本,但找到了一版GT610的測試版驅(qū)動(dòng)(見下圖),能同時(shí)支持GT610和GeForce?GTX?TITAN?X,既然M40的核心和后者完全相同,那么修改驅(qū)動(dòng)也許可行。
PS:注意下圖,Game Ready版本是為游戲GPU設(shè)計(jì),除了部分測試版,正式版驅(qū)動(dòng)很少會(huì)支持NV為其他領(lǐng)域推出的產(chǎn)品,如Quadro專業(yè)繪圖卡和專用計(jì)算卡(很早的時(shí)候曾經(jīng)有過,貌似NV現(xiàn)在是已經(jīng)嚴(yán)格區(qū)分了),所以能選的基本就是Beta版本了,這也是我為什么說這個(gè)辦法只能湊合用的原因,因?yàn)轵?qū)動(dòng)很老,相關(guān)功能和游戲支持肯定沒有最新版驅(qū)動(dòng)完善,難以保證使用時(shí)不出現(xiàn)問題,另外mod過的驅(qū)動(dòng)的數(shù)字簽名就失效了,需禁用驅(qū)動(dòng)的數(shù)字簽名才能在啟動(dòng)時(shí)正常加載,這點(diǎn)請悉知。

下載上圖的385.12版beta驅(qū)動(dòng)后(鏈接:https://cn.download.nvidia.com/Windows/385.12/385.12-desktop-win10-64bit-international.exe),雙擊打開,到下圖的頁面后點(diǎn)擊取消即可:

到C:\NVIDIA\DisplayDriver(驅(qū)動(dòng)的默認(rèn)解壓目錄),將385.12這個(gè)包含了驅(qū)動(dòng)程序的目錄拷貝到其他的盤,比如E盤的根目錄,如下圖:

復(fù)制過去后,進(jìn)入E:\385.12\Win10_64\International\Display.Driver這個(gè)目錄找到nv_dispi.ini(安裝信息文件)這個(gè)文件,雙擊打開,如下圖:

利用記事本的查找功能,搜索17C2(17C2是NVIDIA GeForce?GTX?TITAN?X的設(shè)備ID,一共只有5處,有4處是在2行代碼中,還有1處是單獨(dú)1行,實(shí)際改3行即可),如何修改,看下圖,很簡單:
(1)第一處修改:如下圖,左邊是原始的nv_dispi.ini文件打開后的樣子,右邊是修改完成的:
打開后刪除下面這行:
%NVIDIA_DEV.17C2%? ? ? ? ? ?= Section088, PCI\VEN_10DE&DEV_17C2?
然后將下面這行添加到17F1%和1B00%這兩行之間,格式保持圖中的樣式即可:
%NVIDIA_DEV.17FD.1171.10DE% =?Section088,?PCI\VEN_10DE&DEV_17FD&SUBSYS_117110DE

(2)第二處修改:如下圖,同上左邊是原始文件,右邊是修改完成的:
刪除下面這行:
%NVIDIA_DEV.17C2%? ? ? ? ? ?= Section087, PCI\VEN_10DE&DEV_17C2?
然后將下面這行添加到17F1%和1B00%這兩行之間,格式保持圖中的樣式即可:
%NVIDIA_DEV.17FD.1171.10DE%?=?Section087,?PCI\VEN_10DE&DEV_17FD&SUBSYS_117110DE

(3)第三處修改:同上,左邊是原始文件,右邊是修改完成的:
刪除下面這行:
NVIDIA_DEV.17C2 = "NVIDIA GeForce GTX TITAN X"
然后在原處加上下面這行:
NVIDIA_DEV.17FD.1171.10DE = "NVIDIA Tesla M40"
格式保持下圖的樣式即可。

改好之后,保存即可。
分割線————————————————————————————————分割線
因?yàn)轵?qū)動(dòng)是修改過的,原有官方的數(shù)字簽名已經(jīng)失效,一定要以“禁用驅(qū)動(dòng)的數(shù)字簽名”模式啟動(dòng)電腦,否則mod過的驅(qū)動(dòng)無法加載。所以接下來要做的——需使用軟件打開win11的測試模式,同時(shí)禁用驅(qū)動(dòng)數(shù)字簽名(如下圖),然后重啟計(jì)算機(jī),接著就能正常安裝mod過的驅(qū)動(dòng)了。具體如何實(shí)現(xiàn):
當(dāng)你的驅(qū)動(dòng)修改完成后,先別急著安裝,請使用bootice 1.3.4(http://xz.w10a.com/Small/Bootice_V1.3.4.0.zip)這個(gè)軟件,打開后如下圖設(shè)置即可(注意右側(cè)劃線部分,前面的框框改成對勾,然后分別點(diǎn)擊“保存當(dāng)前系統(tǒng)設(shè)置”和“保存全局設(shè)置”即可)。

分割線————————————————————————————————分割線
上述操作全部完成后,檢查2者是否正常協(xié)同工作,如下面2張圖即可,注意:使用此驅(qū)動(dòng)安裝成功后,無需使用nvidia-smi相關(guān)的命令開啟wddm,裝好直接就啟用了:


分割線——————————————————————————————分割線
至于win11下如何調(diào)用GPU進(jìn)行游戲渲染(win10下需修改注冊表,具體請百度),選中“此電腦”,右鍵選擇“屬性”——點(diǎn)擊左邊的“系統(tǒng)”——點(diǎn)擊右邊的“屏幕”——接下來的頁面中,點(diǎn)擊最下面的”顯示卡“(如下面兩張圖):


接下來的頁面中,按下面兩張圖來操作即可


最后來2張圖,使用M40運(yùn)行孤島危機(jī)3(顯卡危機(jī)3)和生化危機(jī)2重制版的截圖,一切正常。GT610是無論如何也不能把顯卡危機(jī)3運(yùn)行到60幀的水平的。。。


PS:本人屬老齡中二油膩大叔,新游戲玩的不多,這么搞一搞,又可以剩下一張買K600的錢。用計(jì)算卡搞游戲輸出,最理想的還是核顯,I家和A家的均可;NV獨(dú)顯配計(jì)算卡的方案,想要使用較新的驅(qū)動(dòng),最好是搭配NV的繪圖專業(yè)卡,看了不少驅(qū)動(dòng)的inf安裝文件,K600是最省錢的一個(gè)選擇;或者你也可以選擇AMD獨(dú)顯,代價(jià)就是只能使用win11,win10正式版中無法通過修改注冊表開啟M40 GPU的調(diào)用選項(xiàng),我反復(fù)嘗試均告失敗,網(wǎng)上能查到的都是NV獨(dú)顯配M40/P40的win10教程,AMD獨(dú)顯貌似只有在21XXX及以后的win10開發(fā)者預(yù)覽版中才能實(shí)現(xiàn)對計(jì)算卡游戲渲染的正常調(diào)用,如果有大神知道win10下如何修改注冊表能正常調(diào)用M40,煩請告知,感激不盡!
2022.2.16將評論中的后續(xù)試驗(yàn)結(jié)果搬運(yùn)至文章中,利于各位同學(xué)參考:
經(jīng)過測試,文章中的那張NV GT610驅(qū)動(dòng)列表中的最新版391.35版驅(qū)動(dòng)(https://cn.download.nvidia.cn/Windows/391.35/391.35-desktop-win10-64bit-international-whql.exe),同樣可以經(jīng)過修改而同時(shí)支持Tesla M40,方法同上,這些驅(qū)動(dòng)并沒有我所擔(dān)心的去除對于非游戲特殊GPU產(chǎn)品的支持,修改時(shí)注意保留原驅(qū)動(dòng)代碼中的Section值(諸如Section096,Section095之類的,修改時(shí)后面三個(gè)數(shù)字維持原驅(qū)動(dòng)給定,不要改動(dòng)),修改完成后,最好是拔掉網(wǎng)線運(yùn)行安裝程序(避免GT610自動(dòng)聯(lián)網(wǎng)安裝固定的388.13的系統(tǒng)自帶驅(qū)動(dòng)),勾選“執(zhí)行清潔安裝”的框框,安裝完成后,重啟計(jì)算機(jī)應(yīng)該就可以了,安裝成功即自動(dòng)啟用WDDM模式,無需命令切換,個(gè)人測試通過。
如是M40的24G版本,則將修改代碼中的SUBSYS_117110DE改為SUBSYS_117310DE,最后一處修改的地方的代碼則改為:NVIDIA_DEV.17FD.1173.10DE = "NVIDIA Tesla M40 24GB"
如是使用GT/GTX630,635,640,650,650ti,660,660ti,670,680,710,720,730,740,760,770,780,780ti(老卡bios需使用GOPupd工具添加uefi環(huán)境支持模塊),則在官網(wǎng)自行下載472.12版驅(qū)動(dòng)(https://cn.download.nvidia.cn/Windows/472.12/472.12-desktop-win10-win11-64bit-international-dch-whql.exe)Game Ready驅(qū)動(dòng)后自行修改,這是最后一個(gè)同時(shí)支持開普勒架構(gòu)和麥克斯韋架構(gòu)GPU的NV正式版游戲驅(qū)動(dòng),后續(xù)一直到474.14版只支持開普勒架構(gòu)老卡,且僅作為驅(qū)動(dòng)安全更新發(fā)布。750/750ti用戶,則直接使用最新版528.XX游戲驅(qū)動(dòng)修改即可,因其雖然命名為7xx,但實(shí)際是麥克斯韋架構(gòu)(和9系同源)。PS:750YYDS!
2022.2.15晚測試了win10 22H2環(huán)境下GT610和M40的組合,修改驅(qū)動(dòng)正常安裝,m40也能工作在WDDM模式,但無法通過修改注冊表實(shí)現(xiàn)游戲?qū)40的調(diào)用,網(wǎng)上的一些教程來源于對Tesla K系列計(jì)算卡的調(diào)用實(shí)現(xiàn)方法,如同和使用AMD獨(dú)顯一樣,反復(fù)嘗試仍不能成功,我能采取的唯一“有效”辦法是禁用GT610,雖然windows中相關(guān)調(diào)用選項(xiàng)出現(xiàn)了M40,但實(shí)際進(jìn)入游戲仍沒有正常工作。。。如實(shí)在是要使用win10,則可能需要購買K600專業(yè)卡,并使用相關(guān)驅(qū)動(dòng)進(jìn)行安裝,然后修改注冊表方能實(shí)現(xiàn)win10下的正常游戲調(diào)用。。。