多核和多線程技術(shù)可大幅提升Android網(wǎng)頁瀏覽性能
采用多核技術(shù)提升 CPU 馬力,是一種通過硬件提供更高系統(tǒng)性能的日益常見的做法。即使對許多視成本和功耗為重要設(shè)計考慮的大量消費性應(yīng)用,也是如此。但是,升級到多核系統(tǒng)并無法保證一定能夠提升性能或改善用戶體驗。因為提升系統(tǒng)性能不僅是硬件方面的問題,軟件也必須能充分利用并行硬件資源。然而軟件一直在改變 —— 系統(tǒng)變得越來越復(fù)雜,以至于在許多情況下,多個進程和線程在同時運行;同時,應(yīng)用程序也在被優(yōu)化,以便在多處理硬件的趨勢中更加受益。
本文引用地址:http://butianyuan.cn/article/129403.htm基于以上考慮,我們最近采用 EEMBC 的 BrowsingBench 基準(zhǔn)測試程序來評估 MIPS 多核 (MC) 和多線程 (MT) 技術(shù)能帶來的性能提升。我們的目標(biāo)是在 Android 軟件平臺上看看這些技術(shù)能在多大程度上改善一個非常流行的、實際的消費性應(yīng)用(網(wǎng)頁瀏覽)的用戶體驗。
BrowsingBench 是一個可靠而應(yīng)用廣泛的工具,受到多家領(lǐng)先的科技公司的信任與采用。它可以測量大量不同內(nèi)容頁面的加載和渲染時間,并以可靠的方式進行,以生成可重復(fù)而有用的結(jié)果。它可以在任何一個有網(wǎng)絡(luò)瀏覽器的聯(lián)網(wǎng)設(shè)備上運行。與合成測試 (Synthetic Test *) 不同,BrowsingBench 的運行方式與用戶在聯(lián)網(wǎng)設(shè)備上的操作完全相同。我們過去曾采用多種其他適用于評估 MC/MT 系統(tǒng)性能的基準(zhǔn)測試程序,但沒有一種能夠像 BrowsingBench 一樣,可提供代表真實世界聯(lián)網(wǎng)設(shè)備用戶體驗的性能指標(biāo)。
我們在一個以 MIPS32 1004K 一致處理系統(tǒng) (CPS) 為基礎(chǔ)的系統(tǒng)上運行 BrowsingBench。在最高配置方面,1004K CPS 能支持最多 4 個核、每個核配備 2 個硬件線程(亦稱為虛擬處理單元或 VPE)。但為了簡化測試,我們采用雙核、每個核兩個 VPE 的配置,總計有 4 個 VPE。根據(jù) MIPS 的多線程技術(shù),VPE 實際上是邏輯 CPU,在 1004K 的每個核中兩個 VPE 共享一條物理流水線。
我們系統(tǒng)上的軟件平臺是 Android,測試中采用了每套 Android 系統(tǒng)都會配備的 Android 瀏覽器。
為評估多核和多 VPE 對網(wǎng)絡(luò)瀏覽器產(chǎn)生的性能提升,我們采用 4 個不同的配置來執(zhí)行 BrowsingBench,如下表所示。在所有的案例中,測試都是在相同的雙核 1004K 系統(tǒng)上執(zhí)行,不過我們通過操作系統(tǒng)來啟用和禁用核與 VPE。
我們想要回答的重要問題是,Android 是否能利用這些多重處理資源來更快地載入和渲染網(wǎng)頁,從而改善用戶體驗。為做到這點,Android 在處理瀏覽工作負荷時,必須能使用并行的進程和線程。
評論