5 分鐘內開通

TB5 80 Gbps
多機編譯叢集

$21.2 / 天起 · 物理機獨享
立即租用
TB5 並聯可選 同節點組網

雲端 Mac mini 叢集實測:Thunderbolt 5 並聯的 80 Gbps 是什麼體驗?

當 iOS 團隊把建置工作搬上雲端,常見的第一個問題是「一台 M4 夠不夠快」——多數情況下確實夠。 真正的卡點往往出現在第二階段:多台 Mac mini 要並行打不同 scheme、又要共用同一份 DerivedData, 機房之間卻只能靠 1 Gbps 公網互傳,快取同步動輒數分鐘。我們在 SpinMac 新加坡節點租用 3 台物理機, 開通 Thunderbolt 5 並聯服務後,從鏈路辨識、iperf3 跑分到 Xcode 實戰,完整量測 80 Gbps 在真實工作流裡究竟意味著什麼。

單機夠用時,什麼情境才需要 TB5?

Thunderbolt 5 並聯不是「讓 Xcode 編得更快」的魔法開關——單一 target 的全量 xcodebuild 耗時, 仍主要取決於該台 M4 的 CPU 與 16 GB 統一記憶體。TB5 解的是多機協作時的資料平面: 當瓶頸從算力轉向「把幾十 GB 的快取與產物搬到另一台機器」,千兆公網就會變成隱形稅。

以下三類工作負載,我們在測試前訪談客戶時聽得最多,也最能從 TB5 受益:

  • 編譯農場:同一 repo 要同時產出 Debug 內測包、Release 商店包與 Extension 獨立 Archive;
  • 大型 Artifact 搬運:DerivedData、.xcarchive、Core ML 權重檔在 worker 間複製,單次 20–80 GB 很常見;
  • 分散式推理或渲染:多程序分片載入模型,節點間需要接近記憶體頻寬的互聯,而非與外部流量共用 1 Gbps 出口。

若三台機器只靠各自公網 IPv4 互傳,理論上限約 125 MB/s,傳 50 GB 就要六、七分鐘, 還得與同機房其他連線搶頻寬。TB5 的價值在於:於同一 SpinMac 資料中心節點內, 以 80 Gbps 物理通道把多台 Mac mini 收成邏輯上的高速區域網路,把協作等待從「分鐘級」壓到「秒級」。

測試環境:三機物理、一條 TB5 骨幹

實測在 SpinMac 新加坡節點進行。台港澳與東南亞團隊 SSH 延遲多在 30–80 ms, 適合作為亞太區建置樞紐;另須注意 TB5 並聯要求機器位於同一節點—— 新加坡加東京這種跨節點部署無法組網。

測試環境

機器:3 × Mac mini M4 · 10 核 CPU · 16 GB 統一記憶體 · 256 GB NVMe SSD · 1 Gbps 獨享公網頻寬。
系統:macOS 15 Sequoia,Xcode 16.4,以 Homebrew 安裝 iperf3 3.17。
互聯:SpinMac Thunderbolt 5 並聯附加項(同節點 3 台鏈式拓撲:A ↔ B ↔ C)。
對照組:相同 3 台,僅經公網 IP + SSH/rsync 互傳,未啟用 TB5。
專案:SwiftUI 中型 App(約 12 萬行、3 個 Extension),另備 42 GB 壓縮 DerivedData 快照供同步測試。

3 台
M4 物理節點
80 Gbps
TB5 標稱頻寬
1 Gbps
各機公網頻寬
42 GB
同步測試包體積

從下單到鏈路就緒:開通與驗證流程

TB5 並聯並非預設能力,須在租用階段或控制台為同一訂單群組內的多台實例勾選附加項。 下列步驟完成後即可開始跑分;線材與機房布線由 SpinMac 處理,無需自行採購交換器。

  1. 01
    於下單頁租用多台並勾選 TB5

    進入配置下單頁,節點選「新加坡」,數量 3 台,週期依測試需求(我們採按週 $57.3/台)。 附加項勾選「Thunderbolt 5 多機並聯」——按週每台額外 +$4.1。 付款後約 1–5 分鐘交付,控制台訂單詳情會出現「TB5 叢集」標示。

  2. 02
    確認系統辨識 Thunderbolt Bridge

    SSH 登入後,於「系統設定 → 網路」應可見 Thunderbolt Bridge 介面與 169.254.x.x 鏈路本地位址。 以 ifconfig bridge0 核對狀態為 active。若僅單台看不到 bridge,多半是並聯佈建尚未完成, 提交工單即可;我們本次約等 8 分鐘。

  3. 03
    固定主機名與 SSH 互信

    /etc/hosts 寫入三台機器 TB5 側 IP 與別名(如 mac-amac-bmac-c), 設定 SSH 金鑰互信;後續 iperf3 與 rsync 一律走 bridge 網段,避免誤用公網 IP。

  4. 04
    冒煙測試

    在 mac-a 執行 ping -c 5 169.254.x.x(mac-b 的 bridge 位址), 延遲應穩定在 0.3–0.8 ms。再跑一輪短 iperf3,確認鏈路可用後才上正式任務。

提示

TB5 並聯僅適用同一 SpinMac 節點內的多台 Mac mini。 若已有單台實例,可於控制台訂單詳情追加並聯,無須重新下單整機。 詳細價格見定價頁附加項表

頻寬實測:80 Gbps 實際能跑多快?

80 Gbps 為物理層理論值;實際吞吐受框架開銷、CPU 軟中斷、測試工具與拓撲影響。 我們以 iperf3 單流與 8 並行流各跑 5 次取中位數,結果如下。

測試路徑 工具 / 參數 中位吞吐 說明
mac-a → mac-b(TB5) iperf3 · 8 並行流 · 30s 68.4 Gbps 約標稱 85%,鏈式拓撲首跳
mac-a → mac-c(TB5 經 B 中轉) iperf3 · 8 並行流 61.2 Gbps 多一跳,仍遠高於千兆
mac-a → mac-b(公網 IP) iperf3 · 單流 0.94 Gbps 觸頂 1 Gbps 埠,符合預期
mac-a → mac-b(公網 · scp 42GB) 實際檔案傳輸 約 112 MB/s 傳 42 GB 約 6 分 18 秒
mac-a → mac-b(TB5 · rsync 42GB) rsync -avz 首次全量 約 3.8 GB/s 峰值 全量同步約 18 秒

換算成日常語言:42 GB DerivedData 快照,走公網 scp 要六分鐘以上; 走 TB5 網段 rsync,首次全量二十秒內完成,第二次增量(僅變更的 object 檔)更可壓到 3 秒內。 對編譯農場而言,worker 拉快取的等待從「泡杯咖啡」變成「裝杯水」。

必須說清楚:TB5 優化的是節點間搬運,不會讓單機 xcodebuild 憑空變快。 若痛點是單一 target 編譯慢,應先檢視依賴圖與模組化;若痛點是多機並行加大快取共用,TB5 效益就非常明顯。

實戰:Xcode 建置與 CI 分工

跑分數字最終要回到工作流。我們設計兩組對照實驗,模擬 iOS 團隊常見做法。

實驗 A:三台並行 Archive,共用 DerivedData

主節點 mac-a 完成一次全量編譯產生 DerivedData 後,經 TB5 推送至 mac-b、mac-c; 三台同時執行不同 scheme 的 Archive(Debug 內測、Release 商店包、Notification Service Extension 獨立包)。

無 TB5(各機獨立全量編譯):三台總牆鐘時間約 47 分鐘(含各自 14–16 分鐘全量編譯)。
有 TB5(一次編譯 + 快取分發):首台全量 15 分 20 秒,快取推送 22 秒,三台並行 Archive 8 分 40 秒, 總牆鐘 24 分 22 秒,節省約 48%。若每日打三輪包,一週可拿回數十小時。

實驗 B:GitHub Actions 自託管 Runner 池

三台各註冊為 self-hosted runner,標籤 macos-m4-a/b/c。 workflow 以 matrix 拆分單元測試與 UI 測試;測試產物與 .xcresult 彙整至 mac-a 時, TB5 路徑使 6.2 GB 結果包聚合從 4 分 50 秒降至 41 秒。

Runner 安裝與簽名設定的完整步驟,見 雲端 Mac 跑 Xcode CI/CD 實戰指南。 該文聚焦單機流水線;本篇補上的是多機互聯層

踩坑紀錄:我們真實遇過的問題

並聯服務交付物理鏈路與 bridge 網路,上層應用仍須自行規劃。下列問題踩過一次就不會再犯:

注意

勿讓 rsync / NFS 誤走公網 IP。我們曾把 RSYNC_HOST 留成公網位址, 42 GB 傳了六分鐘才發覺——執行 route get 169.254.x.x 可事先避開。

  • 鏈式拓撲的中轉損耗:三台 A–B–C 鏈式連接時,A 到 C 頻寬略低於 A 到 B。 對延遲敏感的全量同步,建議把「快取源」固定在拓撲中心(本次即 mac-b)。
  • 磁碟仍是瓶頸:256 GB 系統碟同時塞三份 DerivedData 會吃緊。 大型 repo 建議至少為一台 worker 勾選 +1 TB SSD 擴容(按月 +$12.5),快取與 Archive 分碟存放。
  • 簽名憑證部署策略:若各機並行 Archive,每台鑰匙圈都須有 Distribution 憑證; 或採「主節點簽名、子節點只跑測試」分工,縮小金鑰擴散面。
  • TB5 不取代公網接入:筆電仍經 SSH/VNC 連各機公網 IP 操作; TB5 網段為機房內部資料平面,不暴露至網際網路,屬安全設計而非缺陷。

成本試算:什麼時候值得加購 TB5?

基礎租用依 SpinMac 統一定價:按日 $21.2、按週 $57.3、按月 $106.1、按季 $288.6,五節點同價。 TB5 並聯附加項按台計費:按日 +$1.5、按週 +$4.1、按月 +$7.5、按季 +$20.4。 以本次 3 台、按週為例:

機器租金:3 × $57.3 = $171.9/週
TB5 附加:3 × $4.1 = $12.3/週(約占機器租金 7%)
合計約 $184.2/週,折合每天 $26.3 擁有三台可互聯的 M4 編譯節點。

對比自建:採購 3 台 Mac mini M4 硬體約 $1,800 起,再加 TB5 線材、機架與電費,前期成本高且閒時無法縮容。 對比「三台各跑各的、走公網互傳」:機器費相同,但若每週發生十次以上 40 GB 級同步, 工程師空等傳輸的時間成本,往往遠超 $12.3 的附加項差價。

建議加購 TB5 的訊號:同節點 ≥2 台、且每日有大體積 Artifact 或快取同步; 或 CI matrix 經常並行 3 路以上 macOS job。反之,長期僅單台、或機器分散在不同城市節點做災備, 則不必開通——跨節點無法 TB5,應改以物件儲存做建置快取(S3 相容層),屬另一條架構路徑。

尚未租用任何機器者,可於下單頁一次選好多台與 TB5 附加項; 已有單台者,於控制台追加並聯即可,無須遷移資料。

結論:80 Gbps 改變的是協作摩擦,不是單機峰值

回到標題——Thunderbolt 5 並聯的 80 Gbps 是什麼體驗? 一句話:它讓多台 Mac mini 在資料面上像同一機架上的伺服器那樣通訊。 iperf3 實測 60–68 Gbps 量級,大檔同步從分鐘壓到秒;但單台 Xcode 全量編譯該多久仍多久, 叢集價值在並行與快取複用,而非取代更快的晶片。

對 SpinMac 使用者,TB5 附加項的意義是:在已選擇雲端物理 Mac 的前提下,把多機協作的摩擦降到夠低—— 無須自購線材、無須與機房協調布線,同節點勾選即可。若團隊正卡在「編譯農場構想有了,機房傳檔太慢」, 本篇數字與流程可直接當 PoC 檢查清單使用。

你的情境 建議
個人單 App,偶爾 Archive 單台 M4 足夠,不必 TB5
每日多 scheme / 多包並行 同節點 2–4 台 + TB5,共用 DerivedData
大型模型分片推理、影片渲染流水線 TB5 + 按需 SSD 擴容,注意鏈式拓撲中心節點
多地域災備 各節點獨立機器,TB5 無效,改物件儲存同步
物理機獨享 · TB5 可選

組一台屬於你的雲端 Mac mini 編譯叢集

SpinMac 同節點多台 Mac mini M4 支援 Thunderbolt 5 並聯,80 Gbps 物理互聯; 按天 $21.2 起租,TB5 附加項按日 $1.5 起,付款後 1–5 分鐘交付,全球五節點可選。

$21.2 / 天起
晶片Apple M4
CPU10 核獨享
記憶體16 GB 統一
互聯TB5 80 Gbps
SLA99.9%
交付1–5 分鐘