快科技6月15日消息,AMD顯卡用戶在Windows系統(tǒng)下試圖同時(shí)運(yùn)行AI推理和大型DX12游戲時(shí),顯卡常因驅(qū)動(dòng)級(jí)資源沖突崩潰,錯(cuò)誤代碼為exit code 2或0xc0000005。這一困擾開(kāi)發(fā)者數(shù)年的局面,近日被GitHub用戶Beat-k通過(guò)開(kāi)源項(xiàng)目徹底解決。
該開(kāi)發(fā)者通過(guò)GitHub開(kāi)源項(xiàng)目BEA_ROCm發(fā)布補(bǔ)丁方案,在Radeon RX 7900 GRE顯卡上首次實(shí)現(xiàn)了DX12游戲與ROCm AI推理的無(wú)沖突并發(fā)。
同時(shí),他排查出導(dǎo)致崩潰的多層原因,包括Flash Attention KV緩沖區(qū)布局解析差異、SDMA引擎隊(duì)列沖突、顯存過(guò)度分配、AMD AGS庫(kù)與Adrenalin驅(qū)動(dòng)沖突,以及驅(qū)動(dòng)遙測(cè)模塊對(duì)內(nèi)核調(diào)度的破壞。
![]()
需要指出的是,這些Bug存在層級(jí)依賴的堵塞效應(yīng),必須按順序逐個(gè)解決才能暴露下一層問(wèn)題。
修復(fù)方案采用雙層補(bǔ)丁架構(gòu)。第一層通過(guò)環(huán)境變量補(bǔ)丁集在ROCm子進(jìn)程啟動(dòng)前應(yīng)用環(huán)境變量預(yù)置修復(fù)。
第二層向llama.cpp提交35行C++補(bǔ)丁,針對(duì)gfx1100架構(gòu)進(jìn)行Windows ROCm的流同步與Flash Attention門控處理。
實(shí)測(cè)結(jié)果顯示,修復(fù)方案通過(guò)了10輪《彩虹六號(hào):圍攻》DX12游戲+Ollama 7B模型推理的壓力測(cè)試,游戲全程無(wú)一崩潰。
AI推理平均延遲12.2秒,顯存占用穩(wěn)定在9.5GB,DX12負(fù)載在6輪游戲中保持飽和。
SDK已開(kāi)源,上游PR準(zhǔn)備就緒,并已通過(guò)第三方在gfx1101/Ubuntu平臺(tái)完成交叉驗(yàn)證。
這表示A卡用戶終于可以在游戲的同時(shí)自由使用本地AI,也為RDNA 3全系顯卡在Windows平臺(tái)上的AI+圖形多任務(wù)解鎖了系統(tǒng)級(jí)的通用修復(fù)路徑。
![]()
特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺(tái)“網(wǎng)易號(hào)”用戶上傳并發(fā)布,本平臺(tái)僅提供信息存儲(chǔ)服務(wù)。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.