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