5.11 结束语
上一节已经说明,多核不能神奇地解决功耗问题:它显然既增加晶体管总数,也增加正在切换的活跃晶体管数量,而这两者正是功耗的主要来源。Dennard 缩放放缓只会使问题更严重。
不过,多核确实改变了局面。本章结果表明,允许闲置核心进入节能模式,并纳入具有不同性能/功率特征的核心,可以提高能效。例如,关闭 Intel Xeon 或 i9 的部分核心,能够让其他核心以 Turbo 模式运行,从而在“较少处理器、较高频率”和“较多处理器、较低频率”之间权衡。同样,让 M1 的能效核心处理要求较低的任务,可以减少功耗、延长电池续航。SoC 还可以包含专用处理器或加速器,以比通用核心更高的性能、更低的功耗执行关键功能。
多核也改变了让处理器保持忙碌的责任分配:它更多依靠线程级和请求级并行性,需要应用与程序员识别;此前的 ILP 则主要由硬件负责。多道程序及能够避开 Amdahl 定律限制的高度并行工作负载,更容易受益。同样,GPU、深度学习处理器等领域专用加速器,见第 7 章,既能暴露更多并行性,也能采用更高效的组成方式,例如用 SIMD 代替 MIMD、用程序控制的存储器代替缓存,以克服瓶颈。
在 2012 年版中,我们提出是否值得考虑异构处理器的问题。当时尚无这类多核交付或发布,异构多处理器也只在专用计算机或嵌入式系统中取得有限成功。将第 4、7 章讨论的领域专用处理器与通用处理器结合,或许是兼顾更高性能、更高能效,并保留通用处理器一定灵活性的最佳方向。