• 为什么CPU要从单核发展到多核?


    前言

    这里首先直接给出结论:CPU从单核发展到多核的原因是如果维持单核,则为了提高CPU性能只能不断提高时钟频率,从而会导致CPU功耗急速上升,导致机箱过热,来不及散热。

    历史

    2004年,Intel CEO 贝瑞特曾为奔腾4处理器的时钟频率无法突破4GHZ而下跪道歉,并承认“兆赫神话”是错误的,即时钟频率并不是CPU性能的全部。

     

    CPU性能公式

    CPU的性能是每秒执行的指令数。公式如下:

    CPU性能 = 时钟频率 × IPC

     其中:

    • 时钟频率=1/时钟周期,时钟频率为每秒执行的时钟周期数,单位了Hz
    • 时钟周期是计算机中最小的工作单位,为一个振荡需要的秒数
    • IPC(Instruction Per Cycle): 一个时钟周期完成的指令数,单位为"指令/时钟周期"

    从中我们可以看出:

    • 主频并不是CPU性能的全部,我们还能够通过提高IPC来提高CPU性能,比如流水线、超标量等技术就是提高IPC的典型技术。
    • 两个不同厂商的CPU不能仅通过比较时钟频率来决定性能好坏,因为不同厂商CPU的架构不同,导致IPC不同。

    CPU功耗

    首先给出已知条件:

    CPU功耗正比于"电流 × 电压 × 电压 × 主频"

    主频正比于"电压"

    IPC正比于"电流"

    我们可以看出:

    CPU功耗正比于 "主频的三次方"

    CPU功耗正比于 "IPC"

    因此:

    • 增加主频会以三次方的速度增加功耗,因此这就证明了只提高主频并不是个好主意。
    • 增加IPC只会以线性的速度增加功耗。
    • 如果我们增加一倍IPC,减少一倍时钟频率,则根据CPU性能公式得:CPU性能不变,但CPU功耗减少了。

    下图为一个笑话,即主板太热都可以在上面煮鸡蛋。

    为什么多核是必然的发展趋势?

    原因有两点:

    1. 根据Moore定律,集成电路上可容纳的晶体管数量每18个月翻一番,因此CPU上的晶体管数量会越来越多。
    2. 多核能够使得在减少时钟频率的同时增加性能(多核能增加IPC),但事实上目前程序员写的软件几乎都不是针对多核环境写的。

    目前,世界上最快的计算机是中国的"天河2号",CPU核数为3120000,根据沙行勉教授的观点,这种计算机一般只是为了争排名,根本不会实际使用,因为功耗太大。

    虽然多核CPU是发展趋势,但是程序员们的程序还是依旧还是老样子,因此并行计算的学习是解决这个问题的方法。

    参考文献

    [1] http://tech.sina.com.cn/roll/2007-06-04/1054327912.shtml

    [2] http://en.wikipedia.org/wiki/Clock_speed

    [3] http://en.wikipedia.org/wiki/Instructions_Per_Cycle

  • 相关阅读:
    eolinker使用初体验(一)
    微信小程序--地图组件与api-模拟器上返回的scale 与真机上不同--bindregionchange触发图标一直闪现问题
    wx.createSelectorQuery() 获取节点信息 获取不到解决方法
    各种兼容
    跨域
    判断为false的情况
    linux的ssh相关指令
    js用正则表达式将英文引号字符替换为中文引号字符
    JavaScript控制iframe中元素的样式
    jQuery匹配id 批量修改css属性
  • 原文地址:https://www.cnblogs.com/xiazdong/p/3761981.html
Copyright © 2020-2023  润新知