《電子技術(shù)應用》
您所在的位置:首頁 > 嵌入式技術(shù) > 解決方案 > 多核和多線程技術(shù)可大幅提升 Android 網(wǎng)頁瀏覽性能

多核和多線程技術(shù)可大幅提升 Android 網(wǎng)頁瀏覽性能

MIPS 的 MT 技術(shù)可提升 43% 性能,;結(jié)合 MT 和 MC 可提升 150% 性能
2012-02-23
作者:Eyal Barzilay/ 應用和基準測試經(jīng)理
關(guān)鍵詞: MIPS Android MT 基準測試 多核 多線程

    采用多核技術(shù)提升CPU 馬力,是一種通過硬件提供更高系統(tǒng)性能的日益常見的做法,。即使對許多視成本和功耗為重要設計考慮的大量消費性應用,,也是如此,。但是,升級到多核系統(tǒng)并無法保證一定能夠提升性能或改善用戶體驗,。因為提升系統(tǒng)性能不僅是硬件方面的問題,,軟件也必須能充分利用并行硬件資源。然而軟件一直在改變——系統(tǒng)變得越來越復雜,,以至于在許多情況下,,多個進程和線程在同時運行,;同時,應用程序也在被優(yōu)化,,以便在多處理硬件的趨勢中更加受益,。

    基于以上考慮,我們最近采用EEMBC 的BrowsingBench™ 基準測試程序來評估MT" title="MT">MT) 技術(shù)能帶來的性能提升,。我們的目標是在Android™ 軟件平臺上看看這些技術(shù)能在多大程度上改善一個非常流行的,、實際的消費性應用(網(wǎng)頁瀏覽)的用戶體驗。

    BrowsingBench 是一個可靠而應用廣泛的工具,,受到多家領(lǐng)先的科技公司的信任與采用,。它可以測量大量不同內(nèi)容頁面的加載和渲染時間,并以可靠的方式進行,,以生成可重復而有用的結(jié)果,。它可以在任何一個有網(wǎng)絡瀏覽器的聯(lián)網(wǎng)設備上運行,。與合成測試(Synthetic Test *) 不同,,BrowsingBench 的運行方式與用戶在聯(lián)網(wǎng)設備上的操作完全相同。我們過去曾采用多種其他適用于評估MC/MT 系統(tǒng)性能的基準測試程序,,但沒有一種能夠像BrowsingBench 一樣,,可提供代表真實世界聯(lián)網(wǎng)設備用戶體驗的性能指標。

   我們在一個以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)絡瀏覽器產(chǎn)生的性能提升,,我們采用4 個不同的配置來執(zhí)行BrowsingBench,如下表所示,。在所有的案例中,,測試都是在相同的雙核1004K 系統(tǒng)上執(zhí)行,不過我們通過操作系統(tǒng)來啟用和禁用核與VPE,。

配置代號

核的數(shù)目

每個核的VPE 數(shù)

邏輯CPU 數(shù)

說明

C1V1

1

1

1

基本配置:單核,、單VPE

C1V2

1

2

2

單核,、啟用MT

C2V1

2

1

2

雙核、關(guān)閉MT

C2V2

2

2

4

完整配置:雙核,、啟用MT

 

    我們想要回答的重要問題是,,Android 是否能利用這些多重處理資源來更快地載入和渲染網(wǎng)頁,從而改善用戶體驗,。為做到這點,,Android 在處理瀏覽工作負荷時,必須能使用并行的進程和線程,。

    測試結(jié)果顯示于下表和下圖,。毫無疑問,Android 的網(wǎng)絡瀏覽性能因為采用MC 和MT 技術(shù)而得到大幅提升,。

配置代號

核的數(shù)目

每個核的VPE 數(shù)

邏輯CPU 數(shù)

相對BrowsingBench 分數(shù)

C1V1

1

1

1

1.00

C1V2

1

2

2

1.43

C2V1

2

1

2

2.13

C2V2

2

2

4

2.54

     

一個重要的發(fā)現(xiàn)是,,當完整配置與基本配置相比時,瀏覽性能提升了超過2.5 倍,。由于在Android 中有大量的并行處理,,瀏覽器的確能夠從MT 和MC 的結(jié)合中受益。再進一步查看Android 系統(tǒng)中的情況,,確實顯示出有許多進程都是以并行方式運行,。系統(tǒng)中的兩個主要進程,一個為Android 瀏覽器本身,,另一個稱為“系統(tǒng)服務器(system server)”,。后者負責管理包括顯示系統(tǒng)在內(nèi)的許多Android 組件,在BrowsingBench 執(zhí)行期間一直都非常忙碌,。

    即使我們將系統(tǒng)限制為單核,,MIPS MT 技術(shù)也能讓BrowsingBench 性能提升43%。MT 的主要特性之一是能夠提升核的性能效率,,這是當運行多進程和/或多線程時,,通過提高核的流水線利用率來實現(xiàn)的。因此,,對于需要小巧芯片面積的系統(tǒng)來說,,選用多線程的核心是提升系統(tǒng)性能的一種極佳方式。

    當多核和多線程系統(tǒng)首度問世時,,大部分現(xiàn)有的軟件并沒有針對這些技術(shù)進行優(yōu)化設計,。今天,情況已經(jīng)改變,。Android 是一個復雜的軟件平臺,,同時也是一個大量消費性平臺的絕佳范例,它正快速演進和優(yōu)化,,會為聯(lián)網(wǎng)世界提供優(yōu)秀的用戶體驗,。

    在MIPS,,我們對此基準測試結(jié)果感到非常高興,因為它充分表明了我們的MC 和MT 技術(shù)與幾年前的標準硬件相比,,可提供高出許多的性能,,從而給智能手機、平板電腦,、聯(lián)網(wǎng)數(shù)字電視等各種上網(wǎng)設備的終端用戶帶來重要影響,。

注:

    合成測試(Synthetic Test/Benchmark) 通過專門設計的測試程序針對軟件系統(tǒng)中的多個組件分別測試。應用測試(Application Test/Benchmark) 則通過真實世界中的應用來做測試,。

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點,。轉(zhuǎn)載的所有的文章,、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有,。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認版權(quán)者,。如涉及作品內(nèi)容、版權(quán)和其它問題,,請及時通過電子郵件或電話通知我們,,以便迅速采取適當措施,,避免給雙方造成不必要的經(jīng)濟損失,。聯(lián)系電話:010-82306118;郵箱:[email protected],。