Valve(V社)旗下Linux圖形驅(qū)動團隊的工程師娜塔莉·沃克近日提出了一項優(yōu)化方案,旨在提升顯存容量在8GB或以下的顯卡在Linux系統(tǒng)下的游戲性能。這項技術(shù)通過一套內(nèi)核補丁及相關(guān)管理工具,改變了系統(tǒng)在顯存資源緊張時的分配邏輯。
其核心問題在于:當(dāng)游戲與其他后臺程序同時運行時,一旦顯存吃緊,當(dāng)前Linux系統(tǒng)會將兩者數(shù)據(jù)一同擠入速度更慢的GTT區(qū)域(一種位于系統(tǒng)內(nèi)存中的GPU尋址空間)。由于系統(tǒng)無法自動識別并優(yōu)先保障前臺正在運行的游戲所需資源,就可能導(dǎo)致關(guān)鍵的游戲進程因顯存被“搶食”而出現(xiàn)卡頓。

為了直觀驗證這一問題,娜塔莉·沃克使用一臺配備8GB顯存顯卡的電腦測試了《賽博朋克2077》。結(jié)果顯示,在默認情況下,游戲僅占用了約6GB的顯存,另有約1.37GB的數(shù)據(jù)被轉(zhuǎn)移到了GTT中,由此導(dǎo)致了游戲幀數(shù)明顯下降與卡頓現(xiàn)象。
該解決方案由“dmemcg-booster”和“plasma-foreground-booster”兩個核心部分組成。其中,“dmemcg-booster”的作用相當(dāng)于“保鏢”,能夠標(biāo)記并保護需要保持游戲畫面流暢的關(guān)鍵前臺程序,使其數(shù)據(jù)被鎖定在顯存內(nèi),轉(zhuǎn)而將后臺進程的數(shù)據(jù)先移入系統(tǒng)內(nèi)存。
在應(yīng)用該項補丁后,再次運行《賽博朋克2077》,測試顯示出顯著改善:游戲自身的顯存占用已提升至約7.4GB,而被“驅(qū)逐”到GTT區(qū)域的游戲相關(guān)數(shù)據(jù)減少至650MB。這一改動有效緩解了因顯存不足而導(dǎo)致的游戲性能驟降和卡頓問題。
另一組件“plasma-foreground-booster”則主要服務(wù)于KDE桌面環(huán)境用戶,它可以自動識別出位于前臺的游戲窗口,并為之分配顯存使用的最高優(yōu)先級。
這套增強驅(qū)動目前已被整合進第三方社區(qū)操作系統(tǒng)CatchyOS,同時其相關(guān)提案也已提交至Linux內(nèi)核開發(fā)團隊進行審核評估,旨在成為未來Linux核心系統(tǒng)的標(biāo)準(zhǔn)功能之一。不過需要注意,由于其工作流程主要針對Linux與AMD開源驅(qū)動的內(nèi)存管理機制進行協(xié)同,因此該方案暫時無法支持使用私有閉源驅(qū)動的NVIDIA顯卡用戶。





























浙公網(wǎng)安備 33010502007447號