《賽博朋克2077》已經上市,前高昂的配置需求將一大部分玩家堵在門外,而已經購買遊戲的玩家發現,賽博朋克2077的CPU佔有率遠低於低於預期,且大部分CPU執行緒都處於空閒狀態,只有物理核心被使用。
Reddit使用者UnhingedDoork給出了分析,認為是遊戲沒有使用ICC作為編譯器,跟其他CPU廠商無關。並給出瞭解決辦法,自己修改《賽博朋克2077》,使用Hex Editor修改賽博朋克207的exe程式,找到程式碼75 30 33 C9 B8 01 00 00 00 0F A2 8B C8 C1 F9 08,將其替換為EB 30 33 C9 B8 01 00 00 00 0F A2 8B C8 C1 F9 08即可。
修改程式碼後,眾多玩家發現,AMD處理器的利用率猛增,遊戲幀數也有相應增長。其中銳龍9 5950X修改後佔用率明顯提升,其中透過超執行緒得來的16個邏輯核心利用率超過了60%。而在6核12執行緒的銳龍5 1600上,所有執行緒均被穩定佔用,整體都保持了相對可觀的佔用。
Reddit使用者CookiePLMonster在研究後提出,《賽博朋克2077》使用了非正式的AMD GPUOpen虛擬碼來最佳化處理器排程器,這些程式碼是用來最佳化AMD推土機架構的FX系列處理器,遊戲只有檢測到“AuthenticAMD”處理器在字串、“family=0x15”處理器標識的時,才會啟用邏輯核心,而對於目前的銳龍等其他AMD架構處理器就會起到反向最佳化的效果,僅使用物理核心。
目前《賽博朋克2077》官方暫未提供修復和說明,由於今年發售的新遊戲主機都是採用銳龍架構,這一波負最佳化應該也會波及新主機使用者,如果在明知BUG的情況下,後續還不提供更新,這或許就是對手品牌給予的商業競爭,給熱門遊戲進行負最佳化來起到抬高自己,打壓對手的效果。