Apple Silicon は「個人用 PC」から「スケジュール可能な AI ノード」へ移行している。 M4/M5 の本質は Geekbench ではなくワークロードの積み方——同一 Mac mini で Ollama、Claude Code、GitHub Runner がユニファイドメモリを奪い合う。
M4 では繰り返し同じパターン:Swap 開始で Ollama が約 37→34 tok/s、自前 Runner の xcodebuild test が 12→19 分——CPU は未飽和でもメモリ圧力は黄。以下、3 つの選定質問と簡易圧力式で M4 更新 / M5 待ち / Cloud Mac 借りを判断。
一枚でわかる:AI ワークロードがユニファイドメモリを圧迫する仕組み
xcodebuild burst · +4–8GB
正常経路(スケジューリング / ノード分割)
- 人 → IDE でコーディング
- Runner は Cloud Mac で CI
- Ollama は夜間または別マシン
- メモリに余裕 → OK
劣化経路(3 層が同時オンライン)
- LLM 常駐 ↑
- Runner burst ↑
- メモリ使用量 ↑
- Swap ↑
- CI 遅延 · 生成速度低下
要点:パフォーマンス問題はしばしばメモリスケジューリング問題——各段が同じプールに水を注ぐ。
下の 3 つの選定質問は、実質「この連鎖が Swap に入り始めたか」を問うている。
質問から記事を選ぶ
本篇は選び方。ボトルネックが分かれば直接ジャンプ:
| 聞きたいこと | おすすめ |
|---|---|
| M4/M5 世代差・更新タイミング・ワークロード分割 | 本篇 |
| Ollama 7B/14B の速度・Swap の影響は? | M4 Ollama 実測 · 16GB vs 24GB |
| Ollama + Runner 同時で重い——排班は? | スケジューリング runbook |
| Cloud Mac で検証か M5 待ちか | Cloud Mac vs M5 · Cloud Mac vs ローカル |
M4 の変化:より速い Mac ではなく、AI を常時回せるノード
M4 は「CPU が少し速い」ではなく、通常の開発環境でローカル推論を常駐できる初の Mac mini。(16GB vs 24GB 実測)
memory_pressure、Activity Monitor の Swap、Ollama footprint でCI ピークと LLM 常駐を同時に持てるかを確認できる。
実務の問いは「IDE が重いか」から、tok/s・Swap の有無・CI wall time の漂移へ。
3 つの選定質問(ベンチだけ見ない)
M1→M5 をベンチラダーと見ると買い間違い。因果連鎖の各段で Swap が出たかを問う。
| 軸 | 問い | M4 での確認 |
|---|---|---|
| 算力 | tok/s は足りるか | 16GB Swap 時 ~34;24GB ゼロ Swap ~37 |
| メモリ | Swap は出るか | 16GB 常駐 8B:Swap 1.1GB;24GB:0 |
| 並行 | Runner と LLM 同時か | xcodebuild + Ollama で Swap(スケジュール runbook) |
世代差は Swap がいつ出るか——算力は足りても Swap 多発なら遅く感じる。
アップグレードすべきか:簡易圧力式
実測値を入れる(1–5 の粗いスケールで可):
アップグレード圧力 ≈
( Swap の頻度 × CI 遅延への影響 )
+ ( 常駐モデル数 × 各モデルのメモリ )
− ( 残りメモリ余裕 )
因果連鎖の底——ユニファイドメモリが Swap 支配になると全層が遅れる。
結果の読み方:
- 明確に > 0 — 24GB、CI 前の Ollama 停止、Cloud Mac で Runner / 推論を分離。
- ≈ 0 — 現状維持、数値を記録、数週間後に再測。
- < 0 だが tok/s 不足 — 純算力寄り。Swap が残るうちは M5 待ちにしない。
16GB:Swap 1.1GB、Runner 12→19 分 → 圧力 > 0。同档 M4 16GB では不足。
ローカル Mac と Cloud Mac の分担
Cloud Mac はリモートデスクトップではなく、24/7 ビルドと推論の macOS ノード。
| 配置 | 稼働 | 典型タスク |
|---|---|---|
| ローカル Mac | ノート / デスク | コード、レビュー、Claude Code |
| Cloud Mac | 専用 Mac mini 24/7 | Runner、Xcode、署名、TestFlight |
| Cloud Mac / オフピーク | 夜間 / 専用 | Ollama、embedding バッチ |
AI 開発:Cloud Mac vs M5 待ち · Cloud Mac 上の Ollama
30 秒セルフチェック
評価対象の Mac で実行し、結果を記録:
# Chip and unified memory
sysctl -n machdep.cpu.brand_string
system_profiler SPHardwareDataType | grep "Memory:"
# Swap and Ollama footprint
ollama ps
memory_pressure
vm_stat | grep "Pageouts"
# Runner latency (CI log or local timer)
# xcodebuild test wall time: 12 min before swap → 19 min after (same repo)
任意 tok/s(16GB vs 24GB 記事と同スクリプト):
python3 -m mlx_lm.generate \
--model mlx-community/Meta-Llama-3.1-8B-Instruct-4bit \
--prompt "Summarize Apple Silicon unified memory in 3 bullets." \
--max-tokens 128
# Record: tok/s, Memory Used, Swap Used
Ollama 常駐中に Pageouts が増え Runner が >30% 漂移なら、まずスケジュールと RAM 段。
M5 は待つ価値があるか
M5 はまだ主流在庫ではない。業界はより大きなユニファイドメモリへ——出荷後に同コマンドで再測を。
M5 実機まで M4 の tok/s / Swap / Runner で判断。2026–2027 は M4 で AI 開発が現実的(M4 vs GPU クラウド)。
落とし穴:性能は足りるがスケジュール不足
M2 16GB で Claude Code + Runner 後、M4 16GB に更新。夜間 Ollama embedding で xcodebuild test が 12→19 分。
覚えておく
チップが遅いのではなく、タスクが重なった。
24GB またはマシン / 時間帯分割(並行スケジュール)。
FAQ
M4 更新か M5 待ち? Swap と Runner を先に。
Mac mini は AI 開発向き? 7B–14B、Core ML、Agent + CI 向き。70B は GPU クラウド。
Cloud Mac vs 購入? 日常コーディングは実機、24/7 Runner は Cloud Mac。