因為看到了 MacでWebKitのビルド時間を計測してみる 這篇文章,想說拿一下身邊有的機器測試一下 build WebKit 需要多久。
用 WebKit 做測試有幾個好處:第一個是它夠大,編譯需要不少時間,另外無論是 ARM 還是 x86 它都可以原生編譯,比較不會有跨平台編譯性能損耗的問題。
方法:
git clone --depth 1 https://github.com/WebKit/WebKit.git WebKit cd ./WebKit ./Tools/Scripts/build-webkit --debug
我測試的 commit 是 a8903d18d4
,如果要用同一個 commit 測試的話需要把上面指令的 --depth 1
拿掉才能 checkout branch。用 --debug
因為沒有最佳化編譯,會比不加這個指令還要快一些。
需注意的是 ARM 機器編譯的時候,一開始請留意終端機有沒有顯示
Build settings from command line: ARCHS = arm64
如果顯示 x86_64 的話,檢查一下終端機是不是勾選到使用 Rosetta 打開的選項。ARM 的機器如果用到 Rosetta 編譯速度會慢差不多一倍,需注意。
機器 | CPU | RAM | 花費時間 |
---|---|---|---|
MacBook Pro 15-inch 2018 | 2.6 GHz 6核心 Intel Core i7 | 32 GB 2400 MHz DDR4 | 1h00m56s |
Mac Pro 2013 | 2.7 GHz 12 核心 Intel Xeon E5 | 64 GB 1866 MHz DDR3 | 53m29s |
MacBook Pro 14-inch 2021 | M1 Pro 10 核心 | 32 GB | 18m53s |
Mac Studio 2022 | M1 Ultra | 64 GB | 11m58s |
結論:雖然 M1 Ultra 最快,但是多花了這些錢,速度卻未比 M1 Pro 快一倍,如果是比較在意 CP 值的使用者可以衡量一下是否選擇 M1 Max 版本就夠了。
附註:
- MacBook Pro 14-inch 2021 不是我的機器,請朋友測試的
- 系統版本皆為 macOS 12.4,Xcode 13.4.1
- MacBook Pro 2018 有改過散熱貼片,所以可以全速執行
這篇文章 用 Mac Studio M1 Ultra 編譯 WebKit 有多快 最早出現於 Hiraku Dev。