ScholarGate
助手

多核与芯片多处理器

芯片多处理器将多个处理器核心集成到单个芯片上,共享缓存和内存接口,从而通过线程级并行而非更高的时钟速度来推动性能增长。

用 PaperMind 寻找选题即将推出Find papers & topics
Tools & resources
下载幻灯片
Learn & explore
视频即将推出

Definition

多核处理器,或称芯片多处理器,是一种包含多个独立处理器核心的单一集成电路,这些核心共享一些片上资源和内存系统,旨在并发执行多个线程或程序。

Scope

本主题涵盖多核芯片的组织结构:核心数量和异构性、共享和私有缓存层次结构、片上互连,以及根据阿姆达尔定律性能如何随核心数量扩展。它处理多核系统的硬件结构。它不包括与其他共享内存主题(共享内存与一致性、缓存一致性协议)共享的相干性和一致性机制,以及单核引擎(处理器微体系结构)。

Core questions

  • 为什么处理器从单个高速核心转向多个核心?
  • 核心、缓存和互连在芯片上是如何组织的?
  • 阿姆达尔定律如何限制增加核心带来的加速?
  • 异构核心何时优于同构核心?

Key concepts

  • 芯片多处理器
  • 线程级并行
  • 共享与私有缓存
  • 片上互连
  • 核心数量与扩展
  • 异构(big.LITTLE)核心
  • 阿姆达尔定律
  • 功耗和散热限制

Key theories

多核扩展的阿姆达尔定律
工作负载的串行部分限制了通过增加核心可实现的加速;这一限制解释了为什么简单地增加核心数量会产生收益递减,并促使人们减少串行瓶颈和使用异构设计。

Mechanisms

多核芯片将多个核心放置在一个芯片上,通常具有私有的一级缓存、共享的末级缓存,以及连接它们与内存控制器的片上网络或环。工作负载通过在不同核心上运行线程来获得性能提升。异构设计将大型高性能核心与小型高效核心结合起来,将工作调度到最合适的核心,以平衡速度和能耗。

Clinical relevance

多核是当今从手机到服务器的主流处理器设计,因为频率扩展在功耗限制下停滞不前。它的兴起将性能负担转移到并行软件上:应用程序必须是多线程的才能受益,这使得并发成为主流编程关注点,阿姆达尔定律成为实际系统中的一个实际约束。

History

20世纪90年代斯坦福大学的Hydra等研究型芯片多处理器预示了多核时代的到来。2004-2005年左右频率扩展的瓶颈推动了主流CPU向双核乃至多核设计发展。后来,结合了性能和效率核心的异构架构变得普遍,尤其是在移动和笔记本处理器中。

Debates

更多核心与更强核心
在固定功耗和面积的条件下,设计者们争论是增加许多更简单的核心、更少但更强大的核心,还是采用异构组合;最佳选择取决于目标工作负载的并行程度,当串行部分显著时,阿姆达尔定律倾向于更强大的核心。

Key figures

  • Gene Amdahl
  • John L. Hennessy
  • David A. Patterson
  • Kunle Olukotun

Related topics

Seminal works

  • hennessy2019
  • amdahl1967

Frequently asked questions

为什么核心数量翻倍并不能使性能翻倍?
根据阿姆达尔定律,程序中任何必须串行运行的部分都会限制增加核心带来的益处。通信、同步以及对共享资源的争用进一步增加了开销,因此实际加速通常远低于理想的线性扩展。
什么是异构(big.LITTLE)核心?
异构设计在同一芯片上结合了大型高性能核心和小型节能核心。系统将高要求的工作调度到大核心上,将轻量级或后台工作调度到小核心上,从而在不牺牲峰值性能的情况下提高能效。

Methods for this concept

Related concepts