60 多年来——从早期的大型计算机到 1980 年代的 PC 革命,再到今天智能移动设备的爆炸式增长——处理器技术一直在发展以满足用户的期望,有时会推动计算行业的不可预见的创新。鉴于每天上市的新移动设备的多样性,处理器创新仍然是推动变革的强大力量。
随着主流移动计算的出现,处理器架构已经从传统的由性能驱动的桌面模型转变,而不管所需的功率如何。需要全天甚至数天电池寿命的设备将需要更紧凑的能量包络,同时将处理器性能提升到新的水平。
一开始,性能为王
由微处理器驱动的第一台消费类计算机是简单、耗电的固定设备,它们被拴在电源(普通墙上插座)上。这意味着微处理器的设计可以只考虑性能,这很快成为开发人员的“圣杯”。
早期的 PC 包含一个运行单个应用程序的单线程 CPU。很快,这些早期的 8 位微处理器发展到 16 位,到 1980 年代中期最终发展为 32 位处理。然后市场开始看到能够同时运行多个应用程序的 PC。随着晶体管数量按照摩尔定律翻倍,性能不断提高,每一种新的处理器设计都提供了开发新特性和功能的能力,无论是播放 DVD 还是编辑家庭相册,这反过来又激发了消费者对更强大功能的需求设备。
最终,消费者对不同外形尺寸的需求和对性能改进的期望推动对处理器的需求超出了单核的能力。与此同时,对移动设备的需求开始爆炸式增长,随着需求的增长,对更节能处理的呼声也越来越高。
ARM 于 1990 年推出时,其创始人的主要目标是为手持设备创建一种节能处理器架构。采用 RISC CPU 架构,ARM 的方法简化了指令,简化了任务执行,并降低了每条指令所需的功率。
一些特性对于开发更节能的微处理器至关重要,其中最重要的一点是将功耗限制在尽可能低的水平。将功率包络保持在尽可能小的占地面积不仅可以延长电池寿命,还可以限制为设备供电所需的电池重量,从而减少材料清单并降低总体成本。
多核:移动之外的好处
如今,这种高性能、高能效处理架构的优势正在数字电视和机顶盒等设备、打印机和复印机等办公设备以及平板电脑、便携式游戏机等移动设备中取得成果。智能手机。
自 2000 年代中期以来,人们普遍认为构建越来越大的 CPU 以实现单线程性能提升不仅变得越来越困难,而且与移动设备的能效限制背道而驰。这是因为性能每提高几个百分点,就需要成倍增加的能量。
多核解决方案可以在与单核设计相当的频率下提供更高的性能,同时在成本和能效方面显着节省。此外,多核解决方案可以利用具有高晶体管数量的内核,并通过仅在需要时为其供电来优化系统。本质上,这可以被认为是智能负载均衡。系统不仅需要考虑哪种处理器最适合执行特定任务,而且还必须考虑该任务所需的性能,并将其分配给最节能的可用处理器。
根据需要使用核心,同时让其他核心保持空闲,这有助于尽可能降低能耗,同时对性能的影响有限。由于任务分布在多个处理器内核上,单个处理器可能无法满负荷运行,从而降低了多核处理器的电压和频率。这可以显着节省与系统总体性能相关的功耗。
为了用一个常见的用例来说明这个想法,请考虑当今的智能手机,它必须足够强大,才能呈现复杂的网页和玩游戏应用程序,通常与基本的电子邮件同步和电话管理功能并行。凭借仅在需要时为内核供电的能力,多核智能手机与单核、全油门的前代产品相比可以提供更长的电池寿命。市场对可扩展性能的需求导致当前大多数智能手机都包含多核 CPU,以及当今许多领先的移动视频和游戏设备中的多核 GPU。
多核处理的“多核”方法需要在许多较小的处理器(例如 Cortex-A5)之间共享性能负载,而不是在单核处理器上共享多个单线程工作负载。设计人员越来越多地部署旨在协同工作的处理器集群,在缓存或同一处理器的多个实例之间共享数据和任务。
与处理相同工作负载的大型处理器相比,较小的处理器协同工作以提供更低功耗的综合性能水平,许多内核变得更加有趣。如前所述,与提高单线程性能相关的成本是指数级的。然而,随着多核处理,成本在规模上变得更加线性。设计人员正在使用许多内核来显着降低总体系统成本。
随着硬件设计人员开始实施这些多核系统,软件开发人员将需要生成能够使用多核处理解决方案的代码。在此之前,设备必须具备执行高性能任务的能力。一个同时包含高单线程性能多核和更高功率效率的系统的一个示例是当前部署的 CPU 和 GPU,其中多核 GPU 可以使用比多核 CPU 更少的功率提供图形计算。由于 GPU 与 CPU 保持一致并共享其缓存,因此可以降低对 CPU 的外部内存带宽和性能需求。OpenCL 和 CUDA 等语言正在努力为更通用的应用程序解决这些问题。
优化未来性能
我们的行业正处于平衡性能和功率的十字路口。通过利用特定领域的处理器和异构通用计算,设计人员可以优化有限的硬件资源和占用空间。跨所有类型的多核片上系统 (SoC) 优化设计和设计过程也可以实现这些收益。
虽然优化可能不像多核处理那样受到关注,但它同样重要,尤其是在具有更大一致性挑战的小尺寸应用程序中。缓存一致性是多核计算应用程序的关键,可确保正确维护存储在共享资源中的数据。诸如 AMBA 4 总线之类的标准和规范正在朝着跨多核处理器集群提供系统级缓存支持以及在复杂 SoC 中保持最佳性能和能效方面迈出令人鼓舞的一步。
未来的设备将继续需要更强大的处理性能,很可能是在越来越严格的功率限制下。通过在整个设计过程中开发更有针对性的处理、优化和差异化,开发人员可以将不仅支持多核概念,而且还包含软件支持的系统推向市场。
审核编辑:郭婷
-
处理器
+关注
关注
68文章
19259浏览量
229653 -
cpu
+关注
关注
68文章
10854浏览量
211589 -
soc
+关注
关注
38文章
4161浏览量
218167
发布评论请先 登录
相关推荐
评论