Login

big.LITTLE 处理

big.LITTLE 处理 Image
ARM big.LITTLE™ 处理是一项节能技术,它将最高性能的 ARM CPU 与最高效的 ARM CPU 结合到一个处理器子系统中,与当今业内最优秀的系统相比,不仅性能更高,能耗也更低。通过 big.LITTLE 处理,可根据性能要求,将软件工作负载动态、瞬间迁移至适当的 CPU。这种软件负载平衡操作非常快,对于用户来说完全是无缝的。通过为每项任务选择最佳处理器,big.LITTLE 可以使处理器在处理低工作负载和后台任务时减少 70% 甚至更多的能耗,在处理中等强度工作负载时减少 50% 的能耗,同时仍能提供高性能内核的峰值性能。

有关详细信息,请参阅下文或访问 Think big.LITTLE 微型网站

 

 


背景

目前智能手机和平板电脑的性能要求的增长速度已经远远超过半导体工艺进步带来的电池容量或节能效果的增长速度。与此同时,在基本相同的外形规格下,用户要求更长的电池寿命。这一系列相互冲突的需求导致在移动 SoC 设计领域必须有所革新,而这不是处理技术和传统电源管理技术能够提供的。

智能机和平板电脑的使用模式是动态的:高强度任务(例如游戏和 Web 浏览)处理周期与通常时间较长的低强度任务(例如发短信、发电子邮件和听音频)处理周期交替进行。

 

需要革新节能技术,才能跟上移动平台性能快速提升的步伐,同时维持和提升能效与电池寿命。

big.LITTLE 处理

ARM big.LITTLE 处理技术旨在为适当的作业分配适当的处理器。目前实现的 big.LITTLE 系统中,一个“big”ARM Cortex™-A15 处理器和一个“LITTLE”Cortex™-A7 处理器组成一个系统,以最节能的方式同时完成高强度和低强度任务。例如,可以利用 Cortex-A15 处理器的高性能来承担繁重的工作负载,同时利用 Cortex-A7 以最高效的方式处理智能手机的大部分工作负载。这些操作包括操作系统活动、用户界面和其他持续运行、始终连接的任务。

通过 CoreLink™ CCI-400 一致性互连将 Cortex-A15 和 Cortex-A7 处理器连贯地连接起来,使系统足以灵活支持各种 big.LITTLE 使用模式(使用模式可根据任务的处理要求而定制)。

big.LITTLE 的基本原则是处理器的体系结构要相同。Cortex-A15 和 Cortex-A7 都采用完整的 ARMv7A 体系结构,包括虚拟化和大物理地址扩展。因此,尽管性能不同,但所有的指令在 Cortex-A15 和 Cortex-A7 上都会以体系结构一致的方式执行。Cortex-A15 和 Cortex-A7 功能集的实现也相似。两种处理器均可配置为单核到四核,并且都在处理群集内集成一个 2 级高速缓存。此外,每个处理器都实现单个 AMBA® 4 一致性接口,该接口可以连接到诸如 CoreLink CCI-400 之类的一致性互连

未来的实现

与此类似,基于 ARMv8 体系结构的 Cortex-A53Cortex-A57 处理器也可以采用 big.LITTLE 配置的形式实现。这种情况下,处理器将通过 CoreLink CCN-504 一致性互连来连接,以实现具有完全一致性的高性能众核解决方案,该解决方案支持在一块硅晶片上容纳多达 16 个内核。

现实世界的性能指标

经测量,对于中等强度的工作负载(例如 Web 浏览),节能达到 50%;对于后台工作负载(例如 mp3 音频播放),节能高达 70%。测量方式是对 big.LITTLE 系统和只有 big 处理器的系统的平均能耗进行对比,两者均采用全面的 DVFS 电源管理和内核闲置策略。

这些结果最初是通过测量测试芯片得出的,而最近,合作伙伴芯片也在处理一系列典型的移动工作负载时获得了同样的结果。为了利用 big.LITTLE 而进行软件更改通常是由 OS 内核调度程序完成的,对于该 OS 上运行的应用程序是完全透明的。

 


硬件要求

为了使 big.LITTLE 处理不被软件察觉,并且以足够快的速度伺机将执行迁移到适当的内核,配对的 big 和 LITTLE 处理器必须在体系结构上是完全兼容的:它们必须运行同样的指令和支持同样的扩展(例如虚拟化、大物理地址等)。

第一种这样的配对是 Cortex-A15 和 Cortex-A7 处理器。在这个配对中,big CPU 集群和 LITTLE CPU 集群均可包含一到四个 CPU,实现 big.LITTLE 八核设计、智能四核设计(每种处理器有两个内核),或者实现一种非对称组合(例如四个 LITTLE 内核和两个 big 内核)。



Big.LITTLE 系统框图

Cortex-A15 和 Cortex-A7 处理器目前均可供合作伙伴使用,并且可以单独生产,主要授权使用方现已推出第一批 big.LITTLE 芯片。第二种 big.LITTLE 配对是 Cortex-A57 处理器和 Cortex-A53 处理器,它们分别是 Cortex-A15 处理器和 Cortex-A7 处理器的后续产品。这些内核于 2012 年发布,将在 2013 年年中提供给 ARM 的主要授权使用方,并且可通过 ARM CoreLink™ CCI-400 或者其他高速缓存一致性互连以同样的方式相结合。它们的性能都有所提升,同时保持与前代产品相同的能效,并且都通过 ARMv8 体系结构引入了 64 位支持。另外,借助最新版 ARMv7 的虚拟化和大地址扩展,还完全兼容 32 位 ARMv7 体系结构。

未来的 ARM 内核也将能在 big.LITTLE 处理器 SoC 中结合最初这四种处理器。

 

 


软件

软件可以控制执行线程的分配,将其分配给适当的内核,或者在某些软件版本中,根据测量到的负载,直接将整个处理器上下文移至 big 或 LITTLE 内核。软件进行 CPU 选择的方式有两种,具体将在下文介绍。在这两种方式中,都需要借助高速缓存一致性,使软件根据情况迅速地从 LITTLE 向 big 以及从 big 向 LITTLE 移动执行。高速缓存一致性允许一个 CPU 群集查询另一个 CPU 群集的高速缓存,两个群集之间的全硬件高速缓存一致性是 big.LITTLE 软件快速和透明的关键。ARM CCI-400 高速缓存一致性互连或者任何遵循 AMBA4 ACE 协议的互连均可提供高速缓存一致性。

在 big.LITTLE SoC 中,OS 内核可动态、无缝地将任务在“big”和“LITTLE”CPU 之间移动。事实上,这是操作系统电源管理软件的一种扩展,如今在手机 SoC 上广泛运用。 

大部分 OS 内核已经支持对称多核处理 (SMP),这些技术可轻松地扩展以支持 big.LITTLE 系统。big.LITTLE 软件规划有两种主要形式。

big.LITTLE CPU 迁移
在迁移中,一旦 OS 检测到需要较高或较低的性能,则将整个工作负载从一个 CPU 移至另一个 CPU。这种迁移基于 OS 用于在 SMP 系统中唤醒和休眠 CPU 的常规技术。关键的扩展在于,检测到某个 CPU 正在以最大频率运行但仍需要更高的性能,因此需要将工作负载移至“更大”的 CPU。一旦工作负载减少,就可以将其移回到一个“更小”的 CPU。

目前,Linaro 已经提供这种 CPU 迁移软件,还有多家 ARM 合作伙伴在积极开发这种软件。 

big.LITTLE MP 
任务迁移(又名 big.LITTLE MP)将检测高强度任务,将其调度到“big”CPU。同样地,它也会检测低强度任务,将其移回到“LITTLE”内核。 

任务迁移相较于 CPU 迁移的优势在于,如果处理要求非常高,系统可以同时利用所有的 CPU。例如,在 2 个“big”+ 2 个“LITTLE”的系统中,当需求达到峰值时可以利用全部 4 个 CPU,而 CPU 迁移只能利用 2 个 CPU。

 


相关技术

CoreLink 高速缓存一致性互连 (CCI-400)

ARM CoreLink™ CCI-400 高速缓存一致性互连可在两个多核 CPU 群集(例如支持 big.LITTLE 的 ARM Cortex-A15 和 Cortex-A7 处理器)之间提供完全的高速缓存一致性。

CoreLink CCI-400 使系统中的每个处理器都能访问其他处理器的高速缓存,从而在异类多核和多群集 CPU/GPU 系统中(例如在网络和高性能计算市场所需的那些系统中)实现系统一致性。这会减少访问片外内存的需要,从而节约时间和能量,而这正是实现 ARM big.LITTLE™ 处理系统的关键。

CoreLink 高速缓存一致性网络 (CCN-504)

ARM CoreLink CCN-504 高速缓存一致性网络可提供扩展至 16 个处理器内核的能力,从而使系统架构师获得最佳的企业应用(包括服务器和网络基础结构)解决方案。

CoreLink CCN-504 可提供高达 1 Tb/s 的可用系统带宽。它使设计人员能够为采用 ARM Cortex™-A15 MPCore™ 处理器和最新的 ARM Cortex-A50 系列 64 位处理器构建的“众核”企业解决方案提供高性能的高速缓存一致性互连。

ARM Development Studio 5 (DS-5)

ARM Development Studio 5 (DS-5™) 工具链是一套针对 ARM 处理器的专业软件开发工具,它使 ARM 处理器具备世界领先的 big.LITTLE 性能分析和调试能力。   

借助 DS-5™ 工具链,工程师就能面向 ARM 应用程序处理器开发出高度优化的可靠的嵌入式软件,该工具链包含一流的 ARM C/C++ 编译器、强大的 Linux/Android™/RTOS 感知调试器、ARM Streamline™ 系统范围性能分析器以及实时系统模型模拟器等工具

ARM 快速模型

ARM 快速模型提供了构建 ARM big.LITTLE 处理系统的虚拟平台所需的模型以及常见的配置模板。支持模型内容的自定义和内存映射和中断映射等项目的配置,并能够将平台导出到 SystemC/TLM 环境。

Cortex-A15 和 Cortex-A7 处理器以及 CoreLink CCI-400 可以使用快速模型

  


Maximise


Cookies

We use cookies to give you the best experience on our website. By continuing to use our site you consent to our cookies.

Change Settings

Find out more about the cookies we set