多核和多线程技术可大幅提升Android网页浏览性能
采用多核技术提升CPU马力,是一种通过硬件提供更高系统性能的日益常见的做法。即使对许多视成本和功耗为重要设计考虑的大量消费性应用,也是如此。但是,升级到多核系统并无法保证一定能够提升性能或改善用户体验。因为提升系统性能不仅是硬件方面的问题,软件也必须能充分利用并行硬件资源。然而软件一直在改变 —— 系统变得越来越复杂,以至于在许多情况下,多个进程和线程在同时运行;同时,应用程序也在被优化,以便在多处理硬件的趋势中更加受益。
本文引用地址://m.amcfsurvey.com/article/129403.htm基于以上考虑,我们最近采用 EEMBC 的 BrowsingBench 基准测试程序来评估MIPS多核 (MC) 和多线程 (MT) 技术能带来的性能提升。我们的目标是在Android软件平台上看看这些技术能在多大程度上改善一个非常流行的、实际的消费性应用(网页浏览)的用户体验。
BrowsingBench 是一个可靠而应用广泛的工具,受到多家领先的科技公司的信任与采用。它可以测量大量不同内容页面的加载和渲染时间,并以可靠的方式进行,以生成可重复而有用的结果。它可以在任何一个有网络浏览器的联网设备上运行。与合成测试 (Synthetic Test *) 不同,BrowsingBench 的运行方式与用户在联网设备上的操作完全相同。我们过去曾采用多种其他适用于评估 MC/MT 系统性能的基准测试程序,但没有一种能够像 BrowsingBench 一样,可提供代表真实世界联网设备用户体验的性能指标。
我们在一个以MIPS321004K 一致处理系统 (CPS) 为基础的系统上运行 BrowsingBench。在最高配置方面,1004K CPS 能支持最多 4 个核、每个核配备 2 个硬件线程(亦称为虚拟处理单元或 VPE)。但为了简化测试,我们采用双核、每个核两个 VPE 的配置,总计有 4 个 VPE。根据MIPS的多线程技术,VPE 实际上是逻辑CPU,在 1004K 的每个核中两个 VPE 共享一条物理流水线。
我们系统上的软件平台是Android,测试中采用了每套Android系统都会配备的 Android 浏览器。
为评估多核和多 VPE 对网络浏览器产生的性能提升,我们采用 4 个不同的配置来执行 BrowsingBench,如下表所示。在所有的案例中,测试都是在相同的双核 1004K 系统上执行,不过我们通过操作系统来启用和禁用核与 VPE。
我们想要回答的重要问题是,Android 是否能利用这些多重处理资源来更快地载入和渲染网页,从而改善用户体验。为做到这点,Android 在处理浏览工作负荷时,必须能使用并行的进程和线程。
评论