【教程】使用導(dǎo)入注冊(cè)表的方式來(lái)調(diào)整RX Vega顯卡的性能
之前給Vega64刷了WX8200的BIOS跑一些應(yīng)用的時(shí)候,發(fā)現(xiàn)由于WX8200的BIOS給的顯存電壓較低,所以大多數(shù)的顯存就不能在1000MHz的頻率下穩(wěn)定運(yùn)行,但是A卡的專業(yè)驅(qū)動(dòng)里面只可以調(diào)整風(fēng)扇轉(zhuǎn)速,就不能超頻和調(diào)整電壓這些了,這就讓人比較頭疼,但是在后面我發(fā)現(xiàn)了一個(gè)更好的方法來(lái)解決這個(gè)問(wèn)題,就是可以通過(guò)導(dǎo)入注冊(cè)表的方式來(lái)進(jìn)行調(diào)整一些東西,例如風(fēng)扇轉(zhuǎn)速,核心頻率和顯存頻率,功耗墻等等,這樣有時(shí)候就不需要去折騰BIOS,驅(qū)動(dòng)里面即使將超頻設(shè)置重置也沒(méi)什么問(wèn)題。

教程開(kāi)始前重申,給顯卡超頻和調(diào)整性能有一定風(fēng)險(xiǎn),有時(shí)候可能會(huì)使系統(tǒng)不穩(wěn)定甚至損壞硬件,請(qǐng)謹(jǐn)慎操作,因操作不當(dāng)而造成的損失本人概不負(fù)任何責(zé)任。
在教程開(kāi)始之前我們需要準(zhǔn)備以下工具。
RX Vega系列的A卡一張,我用Vega64舉例,雖然兩年前就買了,也在貼吧發(fā)過(guò)刷8G FE的貼子,但是當(dāng)時(shí)沒(méi)怎么研究過(guò)這些,也是現(xiàn)在有空了才開(kāi)始折騰的。

OverdriveNTool(用來(lái)創(chuàng)建注冊(cè)表)
最新版可以去關(guān)注作者的發(fā)布貼:https://forums.guru3d.com/threads/overdriventool-tool-for-amd-gpus.416116/

Vega64SoftPowerTableEditor(用于修改創(chuàng)建后的注冊(cè)表)
最新版本可以去關(guān)注作者的Github:https://github.com/halsafar/Vega64SoftPowerTableEditor

工具整合下載:https://pan.baidu.com/s/1VrdqtD6Xpzp0ZuHdCs2osw? ? 提取碼:z9y3
首先我們運(yùn)行OverdriveNTool,這個(gè)工具雖然也可以進(jìn)行調(diào)整,但是我們要做的是用這個(gè)工具保存注冊(cè)表。
點(diǎn)擊工具的左上角,選擇PPTable editor。


接著會(huì)彈出一個(gè)新窗口,我們通過(guò)打開(kāi)BIOS文件來(lái)創(chuàng)建一個(gè)注冊(cè)表,BIOS就用你顯卡原裝的BIOS比較好,可以使用GPU-Z提取,或者在TechPowerUp上面下載。



讀取完BIOS以后,將BIOS里面的信息保存成注冊(cè)表文件。


然后對(duì)應(yīng)這個(gè)顯卡BIOS的注冊(cè)表就制作好了,雖然在看得懂的情況下也可以使用記事本修改,但是我們大多數(shù)人都看不懂,也容易改錯(cuò),還是使用工具修改吧。
我們運(yùn)行Vega64SoftPowerTableEditor,打開(kāi)之前保存的注冊(cè)表文件。




如果不能運(yùn)行的話就需要安裝GTK,因?yàn)檫@個(gè)工具其中有些代碼是引用了GTK的,編譯的時(shí)候引用里面也需要添加gtk-sharp才能正常編譯。


不過(guò)在工具整合里面我已經(jīng)整合了這些擴(kuò)展,應(yīng)該可以直接運(yùn)行。

回歸原題,接下來(lái)我們就要對(duì)里面的這些參數(shù)進(jìn)行一些調(diào)整,不過(guò)先別著急改,我先來(lái)說(shuō)說(shuō)可以改的幾個(gè)點(diǎn),等我講完以后大家再根據(jù)自己的情況進(jìn)行修改。
在進(jìn)行修改的時(shí)候最好只修改自己知道的地方,對(duì)于不知道的地方最好不要去修改。
ulMaxODEngineClock,ulMaxODMemoryClock和usPowerControlLimit分別代表驅(qū)動(dòng)里面允許超頻的核心頻率和顯存頻率上限,以及功耗極限上限的值。

舉個(gè)例子這個(gè)BIOS在驅(qū)動(dòng)里面核心頻率最高允許超到2400,顯存最高允許超到1500,功耗限制可以增加50%,這三項(xiàng)就對(duì)應(yīng)驅(qū)動(dòng)里面的這三部分。



舉個(gè)例子你想把驅(qū)動(dòng)里面允許超頻的核心頻率最大可以超到3000,那么將這里的2400改成3000即可,后面兩個(gè)0不要?jiǎng)?,保持原格式的?guī)律,因?yàn)檫@涉及到進(jìn)制轉(zhuǎn)換,我來(lái)簡(jiǎn)單的講一下是怎么回事。

那我們測(cè)試一下,修改成300000以后,將這個(gè)另存為另外一個(gè)注冊(cè)表文件,我們來(lái)對(duì)比一下這個(gè)注冊(cè)表文件和之前的那個(gè)有什么區(qū)別。


可以看出那部分改了以后,這部分就有區(qū)別了,那這個(gè)怎么換算呢?

我們將E0,93,04這三個(gè)數(shù)值倒置一下,轉(zhuǎn)換成0493E0,再將十六進(jìn)制轉(zhuǎn)換成十進(jìn)制。
0x16的0次方等于0
E對(duì)應(yīng)14,14x16的1次方等于224
3x16的2次方等于768
9x16的3次方等于36864
4x16的4次方等于262144
0x16的5次方還是等于0
最后將這些數(shù)值加在一起就等于300000,剛好就是我們之前改的這個(gè)數(shù)值,這樣大家就知道這個(gè)工具修改注冊(cè)表的大致原理了吧?

這個(gè)工具在讀取注冊(cè)表的時(shí)候就是將里面的十六進(jìn)制轉(zhuǎn)換成十進(jìn)制,在工具中我們輸入的那些值就是十進(jìn)制,把修改后的那些值保存成注冊(cè)表以后,這個(gè)工具就會(huì)把我們輸入的十進(jìn)制轉(zhuǎn)換成注冊(cè)表里面的十六進(jìn)制,所以我們要按照它原來(lái)的格式來(lái)進(jìn)行修改,即原本是240000我們想修改成3000的話,就必須修改成300000,不能直接寫(xiě)3000。
同樣注冊(cè)表這里的32則是功耗限制50%的意思,十六進(jìn)制的32轉(zhuǎn)換成十進(jìn)制就是50。

那我們用記事本編輯的話,想將最大功耗限制改成30%怎么辦呢?這個(gè)當(dāng)然我們可以自己算,將十進(jìn)制的30轉(zhuǎn)換成十六進(jìn)制就是1E,我們把它修改一下再用工具打開(kāi),就發(fā)現(xiàn)這里的值也變成30了。


了解了這些以后我們繼續(xù),那三項(xiàng)數(shù)值我個(gè)人感覺(jué)沒(méi)必要修改,除非你對(duì)驅(qū)動(dòng)里面給的最大超頻限制不太滿意的話,就可以修改一下。
接下來(lái)我們了解一下風(fēng)扇控制可以修改的部分
其中usThrottlingRPM代表風(fēng)扇目標(biāo)轉(zhuǎn)速,usTargetTemperature代表目標(biāo)溫度,即到這個(gè)溫度顯卡就會(huì)降頻,公版Vega64風(fēng)冷版是75度,水冷版是65度。
usMinimumPWMLimit代表風(fēng)扇最小轉(zhuǎn)速的百分比,這里是10%。

ucEnableZeroRPM代表是否允許風(fēng)扇停轉(zhuǎn),數(shù)值為1就是允許,0的話就是不允許。
usFanStopTemperature和usFanStartTemperature分別代表風(fēng)扇的停止和啟動(dòng)的溫度,不允許風(fēng)扇停轉(zhuǎn)的情況下這兩個(gè)數(shù)值也是默認(rèn)為0。

ucFanMinRPM和ucFanMaxRPM分別代表風(fēng)扇最小轉(zhuǎn)速和最大轉(zhuǎn)速,不過(guò)這個(gè)數(shù)值要乘100,這里也就是最小風(fēng)扇轉(zhuǎn)速是400轉(zhuǎn),最大風(fēng)扇轉(zhuǎn)速是4900轉(zhuǎn)。

核心頻率部分的話,ulClk代表那個(gè)階段的核心頻率,ucVddInd則代表使用那個(gè)階段的電壓。
比如第0階段的核心頻率為852Mhz,使用階段0的電壓,也就是800mv。
第2階段的核心頻率為1080Mhz,使用階段2的電壓,也就是950mv。
ucACGEnable就是在驅(qū)動(dòng)里面是否能調(diào)整這個(gè)階段的頻率,1是允許,0是不允許,現(xiàn)在A卡新驅(qū)動(dòng)對(duì)Vega每個(gè)階段的核心頻率似乎都可以調(diào)整了,我們也就沒(méi)必要設(shè)置那個(gè)了。


顯存這里也同樣,這是每個(gè)階段的顯存頻率,顯存電壓的話Vega56是1.25V,Vega64是1.35V,Vega56刷了64的BIOS以后顯存更能超頻正是因?yàn)轱@存電壓的提升。


功耗控制部分我們只要修改這里就可以了,這是BIOS功耗墻的限制,我這個(gè)公版的BIOS功耗墻限制是220W。


了解完這些以后,我們就可以開(kāi)始進(jìn)行修改了,以下修改是適合我自己的方法,大家可以根據(jù)自己的情況進(jìn)行修改,我修改了一下風(fēng)扇轉(zhuǎn)速,小超了一點(diǎn)第6階段和第7階段的核心頻率,顯存頻率超到1000,功耗限制從220W提升到260W。




修改完成確定沒(méi)有問(wèn)題以后保存,將保存后的注冊(cè)表導(dǎo)入。



然后重啟電腦,打開(kāi)GPU-Z就可以發(fā)現(xiàn)這樣就會(huì)讓你的顯卡看上去是刷了BIOS的樣子,就算驅(qū)動(dòng)里面將超頻設(shè)置還原成默認(rèn)的話依然沒(méi)什么影響。


這樣的話我們就可以根據(jù)不同的情況做出不同的注冊(cè)表,例如超頻模式,靜音模式這樣的,在需要的切換的時(shí)候?qū)胱?cè)表重啟電腦就可以了,不需要折騰BIOS。
當(dāng)我們想還原成默認(rèn),想卸載注冊(cè)表也很簡(jiǎn)單,以管理員身份運(yùn)行OverdriveNTool,點(diǎn)擊左上角選擇PPTable editor,也就是我們之前制作注冊(cè)表的那一步,這里有個(gè)刪除注冊(cè)表的選項(xiàng),點(diǎn)擊刪除再重啟GPU就正常了。




刷了WX8200的話,顯存在1.2V的電壓下無(wú)法穩(wěn)定1000同樣也可以用這個(gè)方法來(lái)解決,使用SoftPowerPlayTableEditor打開(kāi)WX8200的BIOS并保存注冊(cè)表。



再使用VegaSoftPowerTableEditor來(lái)修改注冊(cè)表的顯存頻率,將最后這個(gè)階段的顯存頻率的100000改成80000就可以了,這樣降低顯存頻率以后,拿來(lái)跑一些應(yīng)用也不會(huì)出什么穩(wěn)定性的問(wèn)題了。
本來(lái)顯存電壓那里我也考慮過(guò)改成1.35V,保持1000Mhz的顯存頻率比較好,但改了似乎沒(méi)有什么用,顯存頻率高了依然黑屏,這樣的話只能降低顯存頻率了。





這個(gè)方法同樣也適用于海力士顯存的Vega56,如果在刷了64的BIOS不能穩(wěn)定的情況下,可以用這個(gè)方法降低顯存頻率。
另外刷WX8200我一般是需要使用專業(yè)驅(qū)動(dòng)的功能才刷的,再加上我這個(gè)公版刷了有不能完美啟動(dòng)的原因,要完全關(guān)機(jī)之前也需要把原版的BIOS刷回去,這樣就比較麻煩,不過(guò)能啟動(dòng)和使用專業(yè)驅(qū)動(dòng)的一些功能也非常不錯(cuò)了,也應(yīng)當(dāng)滿足了。

因?yàn)閃X8200的核心頻率更低一些,功耗墻也只有170W,雖然也可以通過(guò)注冊(cè)表來(lái)調(diào)整,但是平時(shí)我個(gè)人是不會(huì)使用專業(yè)卡的BIOS來(lái)玩游戲的,所以降低一下顯存頻率就好。

雖然這是兩三年前玩的東西了,現(xiàn)在發(fā)布是有點(diǎn)過(guò)時(shí)了,但當(dāng)時(shí)我并沒(méi)有注意這些,也是現(xiàn)在才注意到的,希望能給手上有Vega顯卡的用戶帶來(lái)一些幫助。