M4 / M5 Apple Silicon は「性能チップ」から「AI 計算プラットフォーム」へ

AI ノート  ·  2026.06.04  ·  約 10 分

Mac mini とワークステーション——M4/M5 が AI 計算プラットフォームへ

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 ワークロードがユニファイドメモリを圧迫する仕組み

人の操作 コミット、Run、PR 作成
インタラクション層 · IDE / Claude Code ローカル Mac · メモリピーク
実行層 · Runner / CI xcodebuild burst · +4–8GB
LLM バックグラウンド · Ollama 常駐 7B–14B · embedding 常時ロード
ユニファイドメモリ · 共有プール CPU / GPU / NPU 同一フロア · ボトルネックはここ
Swap · 劣化シグナル 算力不足ではなくメモリスケジューリング失敗
tok/s ↓ · CI wall time ↑ 例:37→34 tok/s · 12→19 分

正常経路(スケジューリング / ノード分割)

  • → IDE でコーディング
  • Runner は Cloud Mac で CI
  • Ollama は夜間または別マシン
  • メモリに余裕 → OK

劣化経路(3 層が同時オンライン)

  • LLM 常駐
  • Runner burst
  • メモリ使用量
  • Swap
  • CI 遅延 · 生成速度低下

要点:パフォーマンス問題はしばしばメモリスケジューリング問題——各段が同じプールに水を注ぐ。

左:イベントがユニファイドメモリを限界超えに押す流れ。右:スケジュールあり / なし。下の「アップグレード圧力」式は、この連鎖が Swap に入ったかを測る。

下の 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 ローカル
34→37
tok/s(16GB Swap vs 24GB ゼロ Swap)
12→19
分(Swap で遅くなった Runner)
1.1GB
Swap(qwen3:8b 常駐 · 16GB)

M4 の変化:より速い Mac ではなく、AI を常時回せるノード

M4 は「CPU が少し速い」ではなく、通常の開発環境でローカル推論を常駐できる初の Mac mini。16GB vs 24GB 実測

memory_pressure、Activity Monitor の Swap、Ollama footprint でCI ピークと LLM 常駐を同時に持てるかを確認できる。

実務の問いは「IDE が重いか」から、tok/sSwap の有無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/7Runner、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 test12→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。

ZavCloud

Swap と CI 時間を測ってから更新・借りを決める

専用 Mac mini M4——ローカルでもクラウドでも同じチェック。

Cloud Mac プラン
Cloud Macオンラインで借りる