意法爱立信移动平台多核处理技术(二)
PC单核处理器在2003 年达到散热极限时,此后性能再也没有增长的空间;而移动平台则不同,智能手机时代始于2007 年,移动单核处理器还拥有巨大的性能提升空间,到今天为止,还没有迹象显示移动平台性能饱和。
人们不禁要问:为什么移动平台不同于PC 处理器,在单核性能达到饱和前就转向多核处理器?
我们认为有两个原因,第一个原因是,移动计算产品沿用数十年前的技术知识,特别是人们普遍知道,现代的操作系统能够更高效地利用双核处理器,高速缓存一致性和多任务处理操作系统等基本技术已经到位。因为能够充分利用双核处理器,就没有必要再等。而且,这个过程进展得非常快;第二个原因是进攻性的营销策略。
像大多数商用平台一样,CPU 在进入四核时代后的发展方向目前尚不清楚,PC 业的经验告诉我们,即使多核处理器存在于市场10 年后,使用双核以上的处理器对于大多数软件是没有实用意义,唯一的技术解释是移动应用软件比PC 软件更易于多核处理,但是,我们在短时间内不会看到这种情况发生。
事实上,有说服力的技术原因根本就不存在。动机似乎都与市场营销有关,因为智能手机市场竞争激烈,多核处理器是一个很有进攻性的武器。目前,厂商利用处理器内核数量使自己的产品保持差异化,甚至消费者也这样做。具有讽刺意义的是,技术上没有任何新发明,市场营销上没有新意,相同的广告词早在PC 多核问世时就被广泛使用。像PC 机一样,人们很快就会意识到,移动设备内的CPU 内核数量与产品带给客户的真正价值没有直接关联。
网络浏览器是最重要的手机应用软件之一,也是手机高性能CPU 的最大受益者,同时还是要求严格的PC 级应用软件的一个实例,浏览器的性能非常重要,因为它直接影响用户视觉互动性。随着网络带宽不断增加,今天的处理速度已处于临界线,将来HTML5 rich API 和不断增加的编程内容(javascript)对处理速度要求更高。网络浏览器还是高效使用今天的双核处理器的一个很好的实例,因为操作系统支持功能、软件工程、人机互动(防止UI 死屏)、安全性和稳健性(不同处理过程中的多个标签)的原因,浏览器引入了并行活动。但是,因为缺少充足的均衡的软件并行技术,浏览器无法满足双核以上数理器的运行需求,测试结果显示,处理器从双核进化到四核,浏览器性能提升很小或根本没有提升。
图4 所示是在同一四核处理器硬件/软件平台上运行的两款主流浏览器的测试成绩,通过软件设置(热插拨)可以选择不同的处理器数量,因此,测量结果完全是同一硬件/软件环境的真实数据。在所有的配置中,工作频率完全相同。相对分数是指在多次重复测量中若干个主流网站上的网页加载时间的平均值,因此,这个用例代表了真实的网站浏览体验,而不是人为的基准测试。当从单核切换到双核时,速度提升30%是一个较好的成绩,符合预期。然而,从双核切换到四核时,处理速度只取得0-11%的提升。在双核处理器上进行相似的测试,从单核切换到双核时,处理速度提升高达50%。
另一方面,如前文分析PC 处理器时提到的,不论处理器有多少个内核,频率提高总是有益于提升软件性能。当对多核处理器方案进行比较时,这一点很重要,因为处理器内核增加会对频率产生负面影响。互连线和存储器等共享资源冲突,高速缓存、一致性电路的扩展受限,这些因素都会限制多核处理器的频率提升。为提升多核处理器的总体频率,需要使用软件多核处理方法补偿多核处理器降低的频率。例如,我们在以前的折衷分析 [5]中提到,四核处理器的频率比双核处理器降低约27%,软件必须有70%的代码实现并行化,才能使四核处理器的性能优于双核处理器,这是一个很大的比例,几乎没有应用软件能够达到这个水平,当然不是通过原生并行,因为取得如此高的平行化,需要特殊的专门的并行化工作。
评论