作者:Arm 開發(fā)者大使 Dawid Borycki
微軟 Windows 10 和 Windows 11 集成了 Arm 原生支持,這保證了為 Windows 開發(fā)更多 Arm 原生應(yīng)用。這種支持提供了額外的工具,以簡化應(yīng)用移植、增強(qiáng)應(yīng)用性能并降低功耗。因此,很多公司目前正在為 Windows 投資 Arm 原生應(yīng)用。
此前,Arm 曾談到 Windows on Arm 應(yīng)用生態(tài)系統(tǒng)的良好發(fā)展勢頭,Google Chrome 就是一個很好的例子。與此同時,我們也想通過探索原生 Arm 支持為 Google Chrome 帶來的諸多改進(jìn)來進(jìn)一步印證這一點。
適用于 Google Chrome 的 AArch64 支持
最新版本的 Google Chrome 增加了對 Windows 的原生 AArch64 支持,為用戶帶來諸多優(yōu)勢,包括:
提升性能:Arm 原生支持使 Google Chrome 網(wǎng)頁瀏覽速度更快,效率更高,與模擬的 x86 版本相比,性能有了顯著提高。
加快網(wǎng)頁加載:得益于 Arm 原生支持對腳本、系統(tǒng)任務(wù)和渲染過程的優(yōu)化,原本加載較慢的網(wǎng)站現(xiàn)在能夠更快地完成加載。
增強(qiáng)的 JavaScript 執(zhí)行:在 Arm 原生代碼運(yùn)行時,JavaScript 執(zhí)行速度明顯加快,增強(qiáng)了網(wǎng)頁應(yīng)用和交互元素的響應(yīng)能力。
延長電池續(xù)航時間:Arm 原生代碼的高能效使用戶可以更長時間地使用設(shè)備,而無需頻繁充電。
卓越的渲染速度:渲染時間大大縮短,使網(wǎng)頁顯示變得更快速、更順暢。
模擬 x86 與 Arm 原生的性能對比
為了更清晰地展示這些優(yōu)勢,我們在 x86_64 架構(gòu)的 Windows 系統(tǒng)上安裝了 Google Chrome (版本號為 125.0.6422.61,官方版),下文簡稱“Win64”,并在 Windows on Arm 環(huán)境中通過模擬方式運(yùn)行;同時,我們還在 AArch64 架構(gòu)的 Windows 系統(tǒng)上安裝了原生版本的 Chrome,下文簡稱“Arm64”。我們利用這兩個版本的 Chrome 對一個熱門新聞網(wǎng)站的性能進(jìn)行了對比分析。
我們使用 Google Chrome 開發(fā)者工具中的“性能”選項卡,量化了加載和渲染速度。
模擬 x86 版本:網(wǎng)站加載耗時近 16 秒,其中腳本(4.4 秒)、系統(tǒng)任務(wù)(1.7 秒)和渲染(0.9 秒)花費(fèi)了大量時間。
Arm 原生版本:腳本時間減少至 1.5 秒(幾乎縮短了三倍),系統(tǒng)任務(wù)時間減少至 0.4 秒(縮短 4.25 倍),渲染時間減少至 0.18 秒(縮短五倍),表明原生 Arm 執(zhí)行大大提升了加載和渲染速度。
在其他新聞網(wǎng)站進(jìn)行的性能測試也得出了類似結(jié)果。?
Speedometer 3.0 基準(zhǔn)測試
我們使用了 Speedometer 3.0 網(wǎng)頁瀏覽器基準(zhǔn)測試,來進(jìn)一步印證 Arm 原生版 Google Chrome 的性能優(yōu)勢。這是一項開源基準(zhǔn)測試,通過對不同工作負(fù)載下模擬的用戶交互進(jìn)行計時,用來測定網(wǎng)頁應(yīng)用的響應(yīng)能力。
基準(zhǔn)測試任務(wù)旨在反映實際網(wǎng)頁用例情況,盡管部分細(xì)節(jié)與 Speedometer 相關(guān),不應(yīng)作為通用的應(yīng)用開發(fā)實踐。該基準(zhǔn)測試由主流瀏覽器引擎(Blink、Gecko 和 WebKit)的團(tuán)隊創(chuàng)建,并得到了 Google、英特爾、微軟和 Mozilla 等公司的大力支持。
在模擬 x86 和 Arm 原生版 Google Chrome上運(yùn)行 Speedometer 3.0 基準(zhǔn)測試后(在 Windows Dev Kit 2023 上測試),發(fā)現(xiàn) Arm 原生支持顯著增強(qiáng)了網(wǎng)頁應(yīng)用的響應(yīng)能力。上圖顯示了 Arm 原生性能得分比模擬 x86 高出三倍多。這進(jìn)一步凸顯了 Windows on Arm 上原生 Arm 應(yīng)用的出色效率和性能。
用 TensorFlow.js 和 MobileNet 運(yùn)行推理
TensorFlow.js 是 Google 廣受好評的 TensorFlow 庫的 JavaScript 實現(xiàn)。它允許開發(fā)者在構(gòu)建交互性強(qiáng)、動態(tài)性高的瀏覽器應(yīng)用時,運(yùn)用人工智能 (AI) 和機(jī)器學(xué)習(xí) (ML) 技術(shù)。通過 TensorFlow.js,用戶可以直接在客戶端環(huán)境中訓(xùn)練和部署 AI 模型,輕松實現(xiàn)實時數(shù)據(jù)處理和分析,無需大量的服務(wù)器端計算。
MobileNet 是一類專為移動端和嵌入式視覺應(yīng)用設(shè)計的高效架構(gòu),憑借其輕量級設(shè)計脫穎而出,能夠在計算能力和內(nèi)存資源有限的設(shè)備上實現(xiàn)快速高效的性能。
在使用 TensorFlow 的 Python 應(yīng)用中,使用 MobileNet 非常簡潔明了:
Python:
model = MobileNet(weights='imagenet')
接著,就可以對輸入的圖像進(jìn)行預(yù)測 (predictions):
predictions = model.predict(input_image)
請參閱教程以獲得更好的訓(xùn)練和推理示例。
然后這些預(yù)測結(jié)果可以轉(zhuǎn)換為實際標(biāo)簽,比如:
print('Predicted:', decode_predictions(predictions, top=3)[0])
這里的 decode_predictions 是一個假設(shè)函數(shù),它的作用是將模型分?jǐn)?shù)(概率)轉(zhuǎn)換為描述圖像內(nèi)容的標(biāo)簽。
TensorFlow.js 提供了類似的接口,你可以這樣加載 MobileNet 模型:
model_tfjs = awaittf.loadGraphModel(MOBILENET_MODEL_PATH)
等圖像預(yù)處理完,就可以進(jìn)行預(yù)測了:
predictions = model_tfjs.predict(image)
然后,把這些預(yù)測結(jié)果轉(zhuǎn)換為標(biāo)簽或類別:
labels = await getTopKClasses(predictions, 3)
如需更好的網(wǎng)頁應(yīng)用示例,請參閱此示例。
我們在模擬 x86 Chrome 網(wǎng)頁瀏覽器和 Arm 原生版 Chrome 中運(yùn)行了上述網(wǎng)頁應(yīng)用。
下圖演示了在 Chrome 網(wǎng)頁瀏覽器中運(yùn)行的網(wǎng)頁應(yīng)用。該應(yīng)用的用戶界面包含三個核心元素:描述部分、狀態(tài)指示器和模型輸出顯示。描述部分介紹了應(yīng)用是如何創(chuàng)建的。上傳圖像后,應(yīng)用立即開始運(yùn)行,狀態(tài)組件會實時更新,以顯示計算時間。圖像處理完成后,模型輸出會顯示識別出的標(biāo)簽及其相應(yīng)的分?jǐn)?shù)。
在模擬 x86 Chrome 上,包括圖像預(yù)處理和 AI 推理在內(nèi)的總處理時間接近 100 毫秒。而在 Arm 原生版 Google Chrome 上,同樣的操作僅花費(fèi) 35 毫秒(大約為前者的 33%)。由于使用了相同的圖像作為輸入,因此推理結(jié)果(識別的標(biāo)簽和分?jǐn)?shù))是相同的。
提升真實性能,滿足實際需求
在 Google Chrome 的 Windows 版本中集成原生 Arm 支持,可大大提升性能,使網(wǎng)頁瀏覽速度更快、效率更高、響應(yīng)能力更強(qiáng)。這些改進(jìn)在一般的網(wǎng)頁瀏覽和特定應(yīng)用(如包含 MobileNet 的 TensorFlow.js)中都很顯著,凸顯了 Arm 原生支持在更廣泛的計算領(lǐng)域日益增長的重要性。隨著更多公司投資適用于 Windows 的 Arm 原生應(yīng)用,用戶可以期待在各類設(shè)備和應(yīng)用上效率和性能的持續(xù)提升。
Arm 致力于推動創(chuàng)新,提供前沿技術(shù),賦能開發(fā)者并提升用戶體驗。Arm 原生支持在 Google Chrome 中的成功應(yīng)用彰顯了 Arm 架構(gòu)在塑造未來計算方面的革新潛力。
若你有興趣學(xué)習(xí)如何將應(yīng)用遷移到 Arm 平臺上,歡迎訪問 Arm Developer Hub 中的豐富教育資源。
-
微軟
+關(guān)注
關(guān)注
4文章
6590瀏覽量
104024 -
ARM
+關(guān)注
關(guān)注
134文章
9084瀏覽量
367381 -
WINDOWS
+關(guān)注
關(guān)注
3文章
3541瀏覽量
88622
原文標(biāo)題:Arm 原生 Google Chrome 增強(qiáng) Windows on Arm 性能
文章出處:【微信號:Arm社區(qū),微信公眾號:Arm社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論