依任務選擇雲端 Mac

將開發、建置與實驗任務
交給一台獨享實體 Mac

BerryVM 提供整台獨享的 Mac mini 實體節點,而非虛擬機器。你可以安裝專案相依套件、執行 Xcode 與 Swift 工具鏈、處理持續建置,或在高記憶體設定上評估 MLX 工作負載。

先確認軟體相容性、記憶體需求、任務持續時間與目標節點,再選擇 Berry M4 或 Berry M4 Pro。資料、專案憑證與簽署材料仍應依團隊安全流程管理。

服務形式
整台裝置獨享
在售設定
2 種
可選節點
5 個
WORKLOAD ACCEPTANCE 任務批次驗收台
BATCH / DEV-05
輸入 程式碼、相依套件、建置參數 待設定
執行 Xcode / Swift / Runner / MLX 獨享節點
輸出 建置產物、記錄、實驗結果 依流程交付
日常開發與輕量建置

Berry M4

晶片
M4
記憶體
16GB
儲存空間
256GB
高記憶體實驗與本機推論

Berry M4 Pro

晶片
M4 Pro
記憶體
64GB
儲存空間
2TB
目錄內節點通常可訂 實際可用狀態以控制台即時回傳為準
iOS 與 macOS 開發

將遠端 Mac 變成可重現的開發環境

適合需要完整 macOS 圖形介面與命令列、希望將本機裝置負擔轉移至遠端節點,或需要為團隊統一工具鏈版本的開發者。

開發環境

Xcode 與 Swift 專案

安裝專案指定的 Xcode 版本、命令列工具與 Swift 相依套件後,先執行一次乾淨建置。將衍生資料、套件快取與專案產物放在明確目錄,避免不同分支或工具鏈共用無法追蹤的暫存狀態。

  • 專案檢查:確認專案、工作區、Scheme、最低系統版本與建置目標。
  • 相依套件檢查:固定 Swift Package Manager、CocoaPods 或其他相依工具的版本與鎖定檔。
  • 簽署準備:只傳遞完成任務所需的簽署材料,限制檔案權限並記錄更新負責人。
  • 協作方式:透過程式碼儲存庫、產物儲存庫與去識別化記錄交接,不以聊天記錄取代變更說明。
首次驗收

交付後先核對這 5 項

裝置資訊
機型、記憶體、儲存空間與訂單一致
系統工具
終端機、Git 與基本網路可用
開發工具
Xcode 與專案版本要求一致
磁碟規劃
原始碼、快取與產物分目錄儲存
遠端工作階段
畫面、鍵盤與斷線恢復符合預期
CI/CD 建置

依佇列、快取與記錄設計建置節點

持續建置並不是安裝 Runner 就結束。節點能否穩定重複使用,取決於任務隔離、快取失效策略、記錄保留與並行擴展方式。

RUNNER CONTROL 建置批次 / IOS-RELEASE
節點就緒
QUEUE
控制同時執行的任務數量

先從單一佇列開始,記錄 CPU、記憶體、磁碟與建置時間的變化。需要並行時再增加獨立裝置,避免在同一節點中盲目堆疊任務。

先序列執行
CACHE
讓快取可識別、可失效

快取鍵至少應納入工具鏈版本、相依套件鎖定檔與目標平台。命中率下降或相依套件異常時,可以定位並清理對應批次,而不是清空整台裝置。

按鍵清理
LOGS
保留足以重現問題的記錄

儲存任務識別碼、提交版本、工具鏈版本、開始時間、結束狀態與失敗階段。上傳前移除權杖、金鑰與專案敏感欄位。

先去識別化
SCALE
用裝置擴展並行上限

當佇列等待成為瓶頸時,使用額外獨享節點承接新的 Runner。每台裝置維護獨立標籤與工作目錄,避免任務被排程至錯誤環境。

依節點擴展
React Native 打包

分開核對 JavaScript 與原生建置鏈

React Native 建置同時依賴 JavaScript 套件、原生模組、Xcode 專案與簽署設定。分層排查比反覆重裝環境更容易定位問題。

SOURCE

固定原始碼與相依套件入口

核對 Node.js、套件管理器、鎖定檔與私有相依套件的存取方式。安裝前確認工作目錄乾淨,避免本機殘留模組被誤判為可重現的相依套件。

  • 記錄 Node.js 與套件管理器版本
  • 使用已提交的相依套件鎖定檔
  • 限制私有來源憑證的讀取範圍
NATIVE

檢查原生模組

確認 Pods、Swift 套件與自訂原生模組與目標 Xcode 版本相容。升級相依套件後,分別驗證 JavaScript 層與原生層,不要將兩類錯誤混在同一次建置中。

  • 核對 iOS 部署目標
  • 檢查原生模組編譯設定
  • 記錄相依套件安裝輸出
BUILD

執行 Xcode 建置

使用明確的專案、Scheme、Configuration 與匯出參數。將建置記錄與產物目錄關聯至同一任務識別碼,失敗時即可回溯準確階段。

  • 區分偵錯與發布設定
  • 保留失敗階段的去識別化記錄
  • 對產物執行完整性檢查
DELIVERY

交付產物與記錄

將建置產物上傳至團隊認可的產物位置,並附上提交版本、工具鏈版本與建置結果。不要將長期憑證寫入產物或一般記錄。

  • 產生可追蹤的產物名稱
  • 關聯提交版本與建置批次
  • 依內部規則清理中間檔案
MLX 與 AI 實驗

先計算記憶體需求,再選擇高記憶體設定

高記憶體方案配備 M4 Pro、64GB 記憶體與 2TB 儲存空間,更適合評估記憶體需求較高的本機推論、模型載入與實驗任務,但是否適用仍取決於模型、精度、上下文長度與並行方式。

高記憶體任務

Berry M4 Pro 適合優先評估的任務

模型載入驗證

確認模型格式、量化方式、相依版本與實際記憶體用量。

本機推論實驗

記錄提示輸入、上下文長度、批次設定與輸出結果,建立可重複的實驗。

資料預處理

分開儲存原始資料、中間檔案與模型快取,避免磁碟空間被不可見的暫存檔案占滿。

多輪參數比較

每輪只變更明確變數,並記錄峰值記憶體、完成狀態與例外資訊。

下單前評估

不要用機型取代容量計算

先在小型樣本上驗證執行流程,再根據實際峰值記憶體與磁碟用量決定租期。模型檔案、資料集、快取與輸出結果都要納入容量規劃。

模型參數
記錄版本、格式與量化方式
執行上下文
確認長度、批次與並行設定
峰值記憶體
以實際任務取樣為準
磁碟容量
同時計算模型、資料與快取
結果交付
提前規劃匯出與清理路徑
查看 Berry M4 Pro 設定
遠端偵錯準備

雲端 Mac 與外部測試裝置各守一條界線

雲端 Mac 可以執行開發工具、建置專案與收集主機端記錄;外部測試裝置的接入、網路可達性與裝置端操作,仍由你的測試環境負責。

網路路徑

先確認兩端能穩定通訊

記錄雲端節點、外部裝置所在網路、必要連接埠與連線方向。先進行基本連通性與工作階段穩定性測試,再進入應用層偵錯。

憑證與簽署

只交付任務所需權限

金鑰、權杖與簽署材料應依專案隔離,限制讀取範圍並明確更新責任。不要將憑證寫入程式碼儲存庫、建置腳本輸出或一般支援請求。

記錄安全

保留上下文,不保留秘密

記錄應包含任務識別碼、時間、重現步驟與錯誤階段。提交給支援團隊前,移除存取憑證、私人位址、使用者資料與無關專案內容。

場景與設定對照

依記憶體、磁碟與任務持續時間選擇

兩種設定都是整台獨享的 Mac mini 實體節點。輕量建置與日常開發優先評估 Berry M4;高記憶體實驗、本機推論與較大工作集優先評估 Berry M4 Pro。

BerryVM 工作負載與兩種設定選擇建議
工作負載 優先評估 目錄規格 選擇理由 下單前核對
Swift 日常開發與專案維護 Berry M4 M4 / 16GB / 256GB 適合工具鏈初始化、程式碼編輯、一般編譯與單一任務驗證。 專案大小、相依套件快取與衍生資料用量。
輕量 iOS 與 macOS 建置 Berry M4 M4 / 16GB / 256GB 適合先建立可重現的流程,再依佇列壓力增加獨立節點。 峰值記憶體、快取策略與建置佇列長度。
React Native 雲端打包 Berry M4 M4 / 16GB / 256GB 適合核對 JavaScript 相依套件、原生模組與 Xcode 建置鏈。 原生模組數量、產物大小與並行任務數。
高記憶體 Xcode 工作區 Berry M4 Pro M4 Pro / 64GB / 2TB 更大的記憶體與儲存空間適合較大工作集、快取與產物目錄。 實際峰值記憶體、磁碟增長與租用週期。
MLX 本機推論與實驗 Berry M4 Pro M4 Pro / 64GB / 2TB 優先承接模型載入、較高記憶體需求與多輪實驗記錄。 模型格式、量化方式、上下文長度與峰值記憶體。
先選 Berry M4

任務界線明確,工作集較輕

適合日常開發、輕量建置、相依套件遷移與單一佇列 Runner。若持續觀察到記憶體或磁碟成為瓶頸,再轉向更高階設定。

先選 Berry M4 Pro

記憶體需求較高,工作集較大

適合較大的 Xcode 工作區、MLX 實驗、本機推論與較大的快取目錄。仍應依實際模型與任務參數驗證容量。

開始任務前最後核對

設定、週期、節點與資料路徑都確認了嗎?

依天、週、月或季選擇實際需要的租期。下單前核對 Berry M4 或 Berry M4 Pro、候選節點、附加儲存空間、任務峰值記憶體,以及建置產物與實驗資料的交付方式。