正文内容 评论(0

《赛博朋克2077》不支持AMD锐龙多线程:原因找到了
2020-12-14 21:40:34  出处:快科技 作者:上方文Q 编辑:上方文Q     评论(0)点击可以复制本篇文章的标题和链接

《赛博朋克2077》彻底火了,AMD似乎成了最大输家——显卡方面,NVIDIA是独家合作伙伴,光追、DLSS技术都得到支持,AMD的光追却不受待见;处理器方面,锐龙疑似遭到“负优化”,SMT多线程技术根本没有用上,Intel超线程却没问题。

相对来说,AMD锐龙受到的冲击更大,核心数越少越明显。16核心的锐龙9 5950X、12核心的锐龙9 5900X没有太明显的影响,6核心的锐龙5 5600X就惨了,综合性能原本堪比i9-9900K,但在《赛博朋克2077》里只相当于i5-10400F,因为后者可以跑满12个线程。

更诡异的是,有网友发现,手动修改《赛博朋克2077》的exe主程序文件,简单替换几个代码,锐龙的利用率就能明显提高,性能也可以提升最多30%左右。

《赛博朋克2077》不支持AMD锐龙多线程:原因找到了

以上是修改代码前后的锐龙9 5950X占用率表现,16个逻辑核心修改前几乎完全闲置,修改后利用率超过了60%,当然仍未完全发挥。

《赛博朋克2077》不支持AMD锐龙多线程:原因找到了

以上是修改代码后的锐龙5 1600占用率表现,逻辑核心和物理核心表现几乎完全一致。

到底是怎么回事呢?CD Projekt RED一直没有官方回应,民间大神们又出手了。

Reddit的网友CookiePLMonster在深入研究后提出,《赛博朋克2077》使用了非正式的AMD GPUOpen伪代码来优化处理器调度器,但这些代码本来的优化对象是AMD推土机架构的FX系列处理器,在锐龙等其他AMD架构上就会有反效果。

《赛博朋克2077》游戏只有检测到“AuthenticAMD”处理器在字符串、“family=0x15”处理器标识的时候,也就是发现处理器是推土机架构,才会启用逻辑核心,而这也是Windows系统针对AMD推土机架构的优化之一。

如果是其他AMD处理器,包括最新的锐龙,《赛博朋克2077》就只会利用物理核心,而无视逻辑核心,SMT多线程技术自然就没有用武之地。

我们知道,AMD推土机架构采用了每两个核心共享浮点单元的模块式设计,非常依赖系统、软件的特殊优化,锐龙架构则是独立核心加SMT多线程,自然不能用同样的方式去支持和优化。

TechPowerUp的开发大神W1zzard(GPU-Z就出自他之手)在进行研究后,证实了上述发现,《赛博朋克2077》确实在使用2017年的AMD GPUOpen优化代码,导致多线程技术只针对推土机架构有效,而对锐龙架构无效。

《赛博朋克2077》不支持AMD锐龙多线程:原因找到了

目前尚不清楚这是“波兰蠢驴”故意为之,还是一个意外的Bug,但无论如何都有点说不过去。

只能坐等官方修复了。

《赛博朋克2077》不支持AMD锐龙多线程:原因找到了

【本文结束】如需转载请务必注明出处:快科技

责任编辑:上方文Q文章纠错

  • 支持打赏
  • 支持0

  • 反对

  • 打赏

文章价值打分

当前文章打分0 分,共有0人打分
  • 分享好友:
  • |

  • 热门文章
  • 换一波

  • 好物推荐
  • 换一波

  • 关注我们

  • 微博

    微博:快科技官方

    快科技官方微博
  • 今日头条

    今日头条:快科技

    带来硬件软件、手机数码最快资讯!
  • 抖音

    抖音:kkjcn

    科技快讯、手机开箱、产品体验、应用推荐...