• [知乎]超线程对游戏来说真的没用吗?


     

    首先我们要知道,超线程并没有增加处理器的绝对性能,但是由于现实中绝大多数程序不能完全占满一个核心的所有资源,所以,通过多增加一个管道(线程),让别的任务挤占进来,以充分利用核心的闲置资源。在大部分情况下,超线程能带来20%-30%的实际性能提升。

    https://www.zhihu.com/question/288205882/answer/460036503

    然后回答超线程对于游戏的作用,首先看下面的图:

    HT/SMT那项就是超线程的开关状态,三个处理器在开关超线程下的游戏帧数改变很明显不同。

    先看G4560的成绩,这是个2C4T处理器,如果说超线程对游戏没用,那么不应该发生2C4T的帧数都比2C2T的帧数高很多的情况,甚至部分游戏在关闭超线程后根本不能开启。

    然后R5 1400,这是个4C8T处理器,开启超线程后帧数提升。

    最后i7 8700K,这是个6C12T处理器,关闭超线程后帧数提升。

    接下来分析下以上三种状况的原因:

    首先我们要知道,目前绝大多数3A游戏都是4-6线程优化(为什么?因为PS4,8个核心只有6个核心给游戏),以下拿一个6T优化的游戏举例。

    在G4560上,几乎任何时候,6T游戏都倾向于占满2C4T,关了超线程,就等于游戏只能使用2C2T,2个核心有20%的资源没被充分利用,所以帧数暴降,这是最糟糕的情况。

    在1400上,一个6T优化的游戏,关闭超线程只能利用4C4T,开启超线程后就能多利用一些核心资源了,所以性能略有提升。

    但在8700K上就有点不同,关闭超线程后,6T游戏恰巧被分配到6C6T上,这时候所有线程都有专用的核心运算,且没有别的线程抢占运算资源,这算是性能最优情况。但为什么开启超线程后性能出现下降呢?我猜可能是由于windows线程分配机制和游戏优化的问题,出现了6T被全部分配到3个核心这种极端状况,这时候实际上用于运算游戏的资源是减少的,所以帧数下降。

    所以由以上得知,目前可能六核i5才是最适合游戏的CPU吧(8400可以吹几年)~

    参考自:流言终结者系列:CPU超线程对游戏帧数有多大影响? - 超能网

  • 相关阅读:
    Sharepoint2013搜索学习笔记之创建搜索服务(二)
    Sharepoint2013搜索学习笔记之设置外网内容源(四)
    C# zxing插件 根据输入的字符串生成二维码
    值类型和引用类型
    Web.config增删查改
    Redis
    2017年最好的6个WEB前端开发手册下载
    php implode()函数详解
    elk日志系统搭建
    aop实现接口请求参数打印
  • 原文地址:https://www.cnblogs.com/jinanxiaolaohu/p/9715693.html
Copyright © 2020-2023  润新知