今年的 NVIDIA GTC Taipei 大會老黃推出 RTX Spark,準備第四次搶灘 Windows on Arm,結局如何還不得而知,但又燃起我對 ARM 的興趣。

兩年前簡單試玩過 Windows on Arm (WoA),當時用 Chocolatey 把 WoA 當一般 x86 Windows 用,無痛安裝 Notepad++、7-Zip、Git、VSCode 的 x86/x64 版本,透過 Prism 模擬器可順跑無誤。另外實測 .NET 程式分別編譯成 win-x64 或 win-arm64 都沒問題,但執行效能有 40% 的差距。

基於好奇,我決定弄台 WoA VM 再試玩一下,從程式開發者的視角,看看是否兩年後 WoA 生態是否比當年更成熟。

首先,Notepad++、7-Zip 等常用工具及主要開發語言對 ARM64 的支援腳步,比我想像快很多。

  • Notepad++ 早從 v8.0 (2021-06) 便開始提供 ARM64 版。
  • 7-Zip 則從 2023 年 v23.* 開始支援 ARM64
  • Git for Windows 從 v2.47.0 (2024-10) 開始支援 ARM64
  • .NET 從 .NET 5 (2020-11) 支援 win-arm64 (Linux ARM64 從 .NET Core 3.0 就有)
  • 進入養老模式的 .NET Framework 居然也跟上了,從 4.8.1 版(2022-08) 加入 ARM64 原生支援
  • VSCode 從 v1.47 (2020-07) 開始提供 ARM64 版本(但 Extension 部分就難說了)
  • Python 自 3.11 (2022-10) 開始支援 WoA
  • Golang 從 1.17 (2021-08) 起支援 Windows ARM 版
  • Node.js 20.0 (2023-04) 開始支援 WoA
  • Rust 比較晚,1.9.1 (2025-11) 才將 Windows ARM 維入支援,小試在 Windows 編譯 ARM64 版 Rust 程式,完全沒問題:
  • VLC Player 也已經有原生 ARM 版本了,播放沒問題。但這部分硬體解壓縮支援也是重點,VM 沒法測。

上回玩 WoA 是 2024-06 的事,其實像 Notepad++、7-Zip、VSCode 都已有 ARM64 版,但我用 Chocolatey 安裝,社群套件庫大部分都是為 x86/x64 設計,只會安裝 x64 版本。若改用 winget,基本上都會偵測 Windows 處理器架構,優先安裝 ARM64 版本,支援度更好。

另外,我找到一些網站可以查詢某軟體是否支援 WoA,例如:Works on WoA

Windows ARM software 提供已支援 Windows on Arm 的軟體清單目錄式瀏覽:

還有一個據說資料更完整的 Windows ARM Software & News,但網頁的廣告多到爆炸,查起來有點痛苦,不推。

隨時時間推移,活躍中的 Windows 軟體有在逐步補齊對 Windows on Arm 的支援,未來使用起來的應會更順暢。

最後用一個小小效能測試當成結尾。用「壓縮 3.2GB Visual Studio 安裝程式資料夾」實測 7-Zip x64 跟 ARM64 版本壓縮時間差異。

實測結果,ARM64 原生版耗時 168s,x64 版跑模擬器 206s,多花 22% 時間,比刻版印象中的三成少一些。

【心得】

  • 不涉及作業系統底層的 x64 程式基本上可在 Windows on Arm 用模擬器跑,但效能會有些損耗(幅度比我預期的小一點),這點維持不變
  • 為 Windows on Arm 開發原生版的程式語言、開發工具大致都有,餘下便是等 Windows 軟體廠商及開發者把「提供 ARM64 版本」視為發行軟體時的必要條件
  • winget 比 Chocolatey 更適合 WoA
  • 有網站可以查詢各軟體對 WoA 支援的情況,原生支援或模擬器相容
  • Windows 軟體支援 ARM64 的比例已比我原本預期高,待成為業界全面共識,WoA 時代才會真正來臨


Comments

# by yoyo

想看7-Zip內建的效能測試的差異~

# by RaymondLHW

用過數年 Surface Pro X (2020 年左右) 一般軟件的兼容性沒問題, 沒認真到做 benchmark 但速度不覺得有問題 但一碰到 network/audio/graphic driver 就全滅 ... 當年剛疫情 要 wireguard, 當年不支援 ARM (已解決) OBS 沒 virtual camera driver, 不知解決了沒 (剛看到 6/2025 Windows on ARM experimental) 要 AirPlay 上 AppleTV, 用 Airparrot 黑屏, 好像現在還不行 還有一兩個問題不過我忘了 Surface Pro X 是好東西, 但剛好這些問題都給我遇到了 ...

Post a comment