多核打游戏反而更慢?谈CPU和游戏优化那点事( 二 )

游戏的多核优化有多难?

我们就先从游戏对多核心的优化谈起吧。谈游戏的优化,就绕不开对多核的支持。什么游戏对多核优化好、什么游戏只能一核有难、多核围观,一直是玩家们津津乐道的话题。为什么游戏在对多核心的优化上会出问题,而视频压缩等应用就能充分利用多核心?这和游戏的运行机制有关。

·为何游戏喜欢用单核心?

视频压缩这类任务可以轻易做到并行计算,例如一个线程压缩某个片段,另一个线程压缩另一个片段,多核一起运作,最后压缩完成所有片段,完整视频也就压缩完成了。而游戏的运行一般都是线性的,某一步的运算往往会和上一步息息相关,很难充分利用多个线程。

多核打游戏反而更慢?谈CPU和游戏优化那点事

图2/7

多核心在渲染、转码时好使,但游戏却不一定

例如在FPS游戏中,某个玩家被击中产生伤害,那么这个伤害结果和子弹运行轨迹有关,需要先计算出子弹轨迹然后才能计算出伤害,这只能在一条线程中先后完成,无法通过多线程同时计算子弹轨迹和伤害。游戏想要充分利用多核,需要巧妙地将计算任务拆分成为多线程,例如不同的线程负责物理碰撞、AI行为等,技术门槛比较高,也得下更多功夫。基于此,目前仍有大量游戏未能充分利用CPU的所有核心。

推荐阅读