本文论述并比较目前移动平台所采用的主要的多核处理技术,重点介绍多核处理技术与意法·爱立信未来产品所采用的具有突破性的FD-SOI 硅技术之间的协同效应,通过对比个人计算机市场,例证移动平台的单核处理器还有很大的性能提升空间,从软件性能角度分析,目前集中资源于速度更快的双核处理器比速度较慢的四核处理器更赢利。
此外,我们还将论述 FD-SOI 技术如何在相同功耗条件下提高双核处理器频率,以及如何扩展高能效工作模式,所有这些优势产生一个比异构和同构四核处理器更简单、更便宜、更高效的解决方案。
多核处理器的问世是必然,而不是可以选择
多核处理器是技术发展的必然,而不是人类可选的,在此重申这一点很重要。从历史看,当工作频率提高到芯片散热极限时,主流PC 机多核处理器开始问世。事实上,自硅技术集成初期到2003-2005 年间,在主流计算机中,工作频率提高和晶体管数量主要用于提升单核处理器的性能(见图1)。在此期间,应用软件的性能提升与硬件技术发展保持同步,日益增多的旧版软件无需做任何修改,导致计算机行业出现空前的增长。
只要可能,这个趋势就不会发生改变,直到芯片散热达到极限为止。频率提高而非晶体管数量增加是芯片达到散热极限的部分原因。在这一问题上,多核处理器被认为是连续利用数量不断增加的晶体管同时把功耗限制在可控范围内的唯一解决办法。虽然有悖常理,但是,单核处理器在假定频率时的功耗高于双核处理器在假定频率的二分之一时的功耗,这是因为处理器频率越高,所需的电压就越高,此外,动态功耗与电压是平方关系(图2 所示是简单的动态功耗计算式)。
多核处理器确实使硬件集成度遵循摩尔定律(晶体管数量每18 个月增加一倍),为此而付出的代价是软件性能提升被完全破坏。对于软件,再也没有免费的午餐,正如年发表的一篇着名论文[1]所述,从那时开始,为了继续高效地应用硬件技术进步,软件开发人员必须采用并行且均衡的编程方式,使代码能够高效地映射到多核处理器,换句话说,软件需要并行化,糟糕地是,软件并行化在整个计算机领域仍然是最严峻的挑战之一,虽然最初的研发热情还没有减退,但是,到目前还没有发现一个效率令人满意的通用解决方案[2]。很多本身是串行的应用软件则根本没有并行化解决方案。
这个问题难度非常大,在过去10 年来进展很小。G. Blake et al 在2010 年的论文[3]中提出两个重要看法:
· 在双核处理器问世时,用户感受到的响应速度快是双核处理器的最直接的优点,但是, 10 年后,大多数软件,包括要求严格的游戏、办公软件、多媒体播放器和网络浏览器,还是仅能充分利用双核处理器,只有很少的应用软件(视频制作)能够更高效地利用双核处理器。
事实上,自多核处理器在10 年前问世至今,除很少的应用软件外,大多数PC 软件还没有实现并行化。因为多任务操作系统和某些应用软件的设计方法的原因,例如,用于处理用户界面等异步事件的事件驱动型代码,某些并行处理功能是原生的,但是,这些原生并行线程的均衡性通常很差,通常相互关联,只有少数线程可并行使用现有多核处理器,然而最终只能发挥双核以下处理器的能力。
软件开发人员选择不将其代码并行化,因为大多数PC 机应用软件根本没有必要并行化,或者并行化成本过高。某些小众市场是例外,例如,某些多媒体应用软件、CAD 工具和某些专业领域,软件性能是这些市场最关注的差异化特性。人们预计多核处理器将在视频游戏中找到用武之地,如上文所述,实际上却不是这样,其中一个原因是,最近几年,图形处理器 (GPU)的发展速度比多核CPU 还要快,因此,在充分利用图形处理器上投入资源的回报率更高,而将复杂的游戏引擎并行化,使其能够在多核CPU 上运行,是一件费力不讨好的工作。
在其它领域,多核处理器的情况不尽相同。例如,在网络数据中心,因为并行工作负荷量大,多核处理器发展顺利。在科学计算领域,软件并行化有其合理性。
移动业和 PC 业一样吗?
智能手机性能演进实质上是一个加速的且时空转换版的台式计算机性能演进过程。苹果的演进过程是一个很好的实例,我们很容易在一定时期内找到一致的数据,且苹果也能代表大多数手机平台。
图3 所示是Dhrystone MIPS (DMIPS) CPU 性能测试成绩,其中数据是ARM 分析其处理器所用数据。同样地,我们应将测试成绩转换成图1 中的英特尔CPU 性能测试所用的指令级并行测试(ILP),即在不考虑处理器的频率时测试CPU 架构的效率。IDMIPS-single 表示单核处理器的相对性能,测试成绩是通过DMIPS/MHz 乘以频率而得来,而DMIPS-dual 是 DMIPS-single 乘以,表示苹果从iPhone 4S 开始的双核处理器的最高总体性能。对于软件性能分析,我们只是引用了Anandtech[4]的iPhone 5 产品评测中的基准测试成绩: Sunspider 和 Browsermark 是网络浏览器 (Javascript) 基准测试工具,因为是单线程,所以无法测试多核处理器;Geekbench 是一个多线程基准测试工具,应该能够体现多核处理器的性能优势。
我们在图3 中注意到两个要素:
1.架构效率 (DMIPS/MHz) 、频率和最终的单核性能 (DMIPS-single) 并没有饱和,相反,还有很大的提升空间,这种趋势完全不同于PC 机单核处理器的演进路线,后者显然从年开始达到饱和。因此,我们得到的初步结论是,移动应用单核处理器不同于处理器,到目前其性能还没有达到饱和状态。
2.我们预想软件性能与单核处理器性能成正比例关系。实际上,从iPhone 4S 到 iPhone 5,和 Browsermark 的测试成绩增幅很大。这两款手机都是双核处理器,而且这两种基准测试都是单线程,因此,软件性能提升与多核处理器无关。测试成绩提升的原因是网络浏览器的软件性能大幅提升,特别是Javascript 的优化起到重要作用,另外,其它硬件也很可能被优化,例如,改进存储器子系统。相反, Geekbench 是一个多核线程基准测试工具,系统软件变化对其影响不大。iPhone 5 的Geekbench 测试成绩大幅提升,这似乎表明多核处理器至少发挥了一定作用,但是,令人奇怪地是,从单核到双核iPhone 4S,我们并没有看到同样的成绩提升。在任何情况下,所有的基准测试,包括Geekbench,都保持在双核处理器的理论性能峰值以下。我们稍后将提供更多的软件性能提升数据,但是,分析这些基准测试工具的测试成绩,我们至少可以得到以下初步结论:像 PC机一样, 软件性能提升与单核处理器性能成正比,同时还与应用软件有关;而与多核处理器性能的关系不大,或根本不成比例关系。
上一篇:动态可重构的智能光载无线接入技术(二)
下一篇:意法爱立信移动平台多核处理技术(二)
推荐阅读最新更新时间:2023-10-12 20:50