越境で Mac mini M4 をレンタルし バッチ推論するとき、支配的なのは ユニファイドメモリと、待ちと計算を分けるキューです。MPS/MLX の切り分け、メモリ帯、タイムアウトと降格、リージョンを短く整理し、パラメータ表で締めます。ホーム・料金・ヘルプはログイン不要です。
算力選定(レンタル M4 のメモリ帯と前提)
スループットとロード/コンパイルの尾を分け、Apple Silicon の単一メモリプール前提で見積もります。16GBは主セッション+OS 余裕が取れる構成、24GBは並行・広いマイクロバッチ・降格用小型モデル向きです。感覚は Blender・統合メモリマトリクス、データ面は 重み/DL リージョン稿と併読。
MPS と MLX の適用シーン
MPS:既存 torch・演算子資産・CUDA 寄りからの推論切り出し向き。MLX:MLX へ寄せられるエクスポートと、安定形状のバッチループ向き。いずれも長命ワーカー推奨。LLM 併置は OpenClaw×Ollama 批推論参照。
対比
| 観点 | PyTorch MPS | MLX |
|---|---|---|
| チーム適合 | 既存 torch 人材、サードパーティ依存が大きい | Apple 優先のエクスポート/実装に慣れたチーム |
| バッチループ | DataLoader 型の定石が豊富 | 軽量な制御フローで MLX に寄せやすい |
| 運用フットプリント | 常駐が大きめ・並行時は枠の明示が必須 | 相対的に薄いが、メモリ規律は同様に必要 |
バッチサイズ・同時セッションとユニファイドメモリのピーク
バッチ・系列長・並行セッションは同一プールを争います。ウォームアップ後にバッチを増やし、常駐とステップ時間の崖を記録。16GB は主 1 本+薄い監督、24GB も上限を数値化できるときだけ並行。過剰割当はジッター→クライアントタイムアウト。深さよりキューとキャップ。
キュー・タイムアウトと降格
待ちと計算のタイムアウトを分離。降格はバッチ縮小・文脈短縮・小型モデル・部分結果+再試行。DLQ は DLQ/Webhook 稿参照。HTTP 期限はサーバ上限+RTT。遠隔 SSH 逐次より Mac 上ローカルプル。
リージョン・ノードと遅延の勘所
オンノードは SKU でほぼ固定、差は重み・I/O のRTT/帯域。主ストレージ側へノード。TCO は リージョン・買い vs レンタル。対話=制御面 RTT、夜間=イングレスと空き容量。
パラメータ対照マトリクス
Runbook に貼り、記号を計測値へ。単位(秒・トークン・行)を明記。
| シナリオのつまみ | 記号 | 16GB M4 の出発点 | 24GB M4 の出発点 | 方針メモ |
|---|---|---|---|---|
| 最大マイクロバッチ(行/フレーム) | B | OS 余裕のあと常駐がおおよそ 11〜12GB 以下になる B | 並行前に常駐がおおよそ 18〜20GB 以下になる B | B 増加はウォームアップ後の定常計測のあとだけ |
| 同時 GPU セッション数 | S | S=1 本の主セッション(+任意の薄い監督) | 上限が独立に言えるなら S=1〜2 | 無謀なセッション扇よりキュー深さ |
| キュー待ちタイムアウト | Wq | 対話 30〜120 秒、夜間 5〜15 分のオーダー | 同順;オーケストラの再試行枠で伸縮 | 載せ替え可能なら Wq は短め |
| 1 バッチ計算タイムアウト | Wc | p95 ステップの 2 倍+コンパイル余裕 | 同様;B が大きいほど余裕を足す | Wq と Wc は必ず分離 |
| DLQ までの最大再試行 | R | R=3、指数バックオフ+ジッター | WAN アップロードが不安定なら R=3〜5 | 総試行に上限;無限ループ禁止 |
| スタック選択 | F | torch 経路があれば F=MPS、なければエクスポート可なら MLX | 同様;24GB は B か S をわずかに拡げやすい | モデル版ごとに F を記録 |
記号は生きたパラメータ。torch 更新・系列分布・リージョン変更のたびに再スイープ。
内部リンクとサイトマップ(公開担当向け)
内部リンクと sitemap。 索引カードは frontend/ja/blog/assets/data/blog.json。クローラ向けに frontend/ja/blog/sitemap.xml に本 URL と lastmod を追加。ルート索引が https://maccompute.com/ja/blog/sitemap.xml を参照すること。slug:2026-remote-mac-m4-pytorch-mps-mlx-inference-matrix.html。hreflang は EN と突き合わせ。
FAQ
混在は? 可。セッション別にメモリ枠を切る。VRAM 分割とは思わない。
学習時の演算子は MPS で全部? 限界あり。推論パスを実機 torch/macOS で検証。
リージョン誤りの兆候? GPU が忙しくなる前に転送だけで時間消費。先にステージング。