`
wodamazi
  • 浏览: 1417476 次
文章分类
社区版块
存档分类
最新评论

目前选择四核处理器移动平台,是最佳时机吗?

 
阅读更多

移动平台目前正在经历如PC机之前一样的演变路线:单核处理器的频率一路攀升,达到最大允许功耗的极限;为了继续提升计算性能,并保持合理的功耗,处理器厂商又推出了多核处理器。

意法·爱立信早在2009年就推出了双核处理器平台,是第一批推出双核处理器的芯片厂商,其NovaThor平台开发计划也是基于ARM双核处理器。根据公司的分析报告,现有的软件以及近期上市的软件还不能充分发挥四核技术的优势。从最高可达频率和内存访问开销角度看,增加内核不是没有代价的。只有很好地平衡加核做法与软件运行能力,才能充分利用加核后所提升的硬件并行处理能力。

本文将通过对比的方式探讨频率较高的双核架构与频率较低的四核架构的优缺点。不过,芯片技术和软件处理的折衷解决方案正在迅速发展,而且,爱立信也将根据技术未来发展趋势调整产品计划。在本文中,我们把讨论的焦点放在性能上,功耗问题只稍加提示。事实上,在执行高性能任务时,四核处理器的频率和电压都较低,因此节能省电效果更好;但是,如果不执行高性能任务,四核就失去了省电的特色。

多核是需要有代价的

目前大多数最新的移动平台所使用的多核架构是对称多核处理系统(Symmetric Multi Processing,SMP),其特点是多个内核完全相同,且访问系统资源(包括内存)面临相同的开销。此外,运行SMP功能的操作系统的基本需求是多核必须共享一个内存空间。为确保多个物理内存之间的一致性来实现共享内存空间,还需要配备专用电路。在今天的多核处理器中,每个内核都有各自的一级高速缓存,每个内核的一级高速缓存必须保持相互一致,而且还要与唯一的多核共用的二级高速缓存保持一致。内存一致性硬件位于高速缓存的重要运行通道内,因此,该硬件在很大程度上决定了多核架构的扩展性。增加内核不可避免地导致一致性协议的额外管理,产生额外的延迟,从而对性能造成负面影响。这就是为什么SMP架构不能无限地扩展的原因,即使在超级计算机上, 也不能无限扩展。

不断增加的1级/2级高速缓存数据流量和共用2级高速缓存而产生的数据拥堵问题也限制了多核处理技术的扩展性能。每增加一个内核,就需要更大的芯片面积和更高的2级高速缓存容量。这进一步增加了芯片布局限制,并在内存分层结构内部引起访问延迟。

意法·爱立信的实验表明,对于典型负载,当处理器从双核变成四核时,每增加一个内核,每核性能将会受到25-30%影响,虽然这是内核频率损失和在系统的不同部分浪费更多的时钟周期的综合影响,但是,我们可以将其简化为等效的频率降低。

软件的扩展性

只有把软件设计成并行运行才能充分发挥多核处理器的优势。软件并行应用分为两类:并行应用软件和多任务处理。并行应用遵循著名的Amdahl定律,如方程式1所示:

如果处理器数量N给定,我们利用这个方程式可以确定一个应用软件能够取得的最高加速比S,其中P代表并行运行应用在软件中所占的百分比,即P随着处理器数量增加而线性提高((1-P)是串行运行应用的百分比)。我们特别关注的是,对于一个对于给定的应用软件(即P值已知),何时才是改用四核处理器的最佳时机。对于一个给定的应用软件,有一个很有趣的分析方法:合并一个四核处理器与一个双核处理器的可达加速比,并考虑前文描述的硬件额外开销因素,把硬件对相关频率F的影响考虑进去,即当Fquad* S_4 > Fdual * S_2时,四核性能占优。

总结:

也就是说,针对于对称多核处理系统(SMP架构),增加内核意味着产生额外的用于管理内存一致性协议的延迟(每个内核的一级高速缓存保持相互一致且多核共用的二级高速缓存保持一致),这是对性能造成负面影响的主要因素。此外,数据拥堵问题(不断增加的1级/2级高速缓存数据流量和共用2级高速缓存之间)也会随着内核数目增多而加剧。何时才可以更好的发挥四核性能呢?即需要与软件运行能力得到很好的平衡。应用软件设计成并行运行时,更有可能发挥多核处理器的优势(性能分析与处理器数量N,频率F以及串行运行应用百分比P有关)。

功耗问题上,由于四核处理器的频率和电压都比较低,在处理高性能任务时,可以体现出多核的省电特色。



分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics