これは昨夜私が作成した投稿のフォローアップです。新しいノートPCでのいくつかのテスト結果を投稿しました。皆さんのフィードバックを受け取り、懸念点に対処できるよう、追加のベンチマークテストを実施するために道具を再設計しました。助言と提案を適用し、方法論を適切に調整しています。
この取り組みを進めるにあたり、私はダニング=クルーガー曲線の右側にいることを自覚していますが、ここにいる皆さんの研究の上に立つという計り知れない恩恵を受けており、絶望の谷に長時間はまり込まないようにしています。
第2ラウンドはこちらです。
Apple M5 Max LLM ベンチマーク結果(v2)
コミュニティのフィードバックに対応したフォローアップベンチマーク r/LocalLLaMAより。
v1 からの変更:
- 追加されたプロンプト処理(PP)速度 — M5 の最大の改善点
- 公正な量子化比較 — Q4 vs Q4, Q6 vs Q6
- Q8_0 量子化テストを追加
- 標準化された測定のためにllama-benchを使用
- MoE モデル(35B-A3B)を追加
システム仕様
| 構成要素 | 仕様 |
|---|---|
| チップ | Apple M5 Max |
| CPU | 18コア (12P + 6E) |
| GPU | 40コア Metal (MTLGPUFamilyApple10, Metal4) |
| ニューラルエンジン | 16コア |
| メモリ | 128GB ユニファイドメモリ |
| メモリ帯域幅 | 614 GB/s |
| GPU メモリ割り当て | 128,849 MB (sysctl による全割り当て) |
| ストレージ | 4TB NVMe SSD |
| OS | macOS 26.3.1 |
| llama.cpp | v8420 (ggml 0.9.8, ビルド 7f2cbd9a4) |
| MLX | v0.31.1 + mlx-lm v0.31.1 |
| ベンチマークツール | llama-bench(テストあたり3回の繰り返し) |
結果:プロンプト処理(PP)— M5 の実際の優位性
これが人々が求めていたものです。PP速度は、M5 Max が M4 よりも輝く点です。
| モデル | サイズ | 量子化 | PP 512 (トークン/秒) | PP 2048 (トークン/秒) | PP 8192 (トークン/秒) |
|---|---|---|---|---|---|
| Qwen 3.5 35B-A3B MoE | 28.0 GiB | Q6_K | 2,845 | 2,265 | 2,063 |
| DeepSeek-R1 8B | 6.3 GiB | Q6_K | 1,919 | 1,775 | 1,186 |
| Qwen 3.5 122B-A10B MoE | 69.1 GiB | Q4_K_M | 1,011 | 926 | 749 |
| Qwen 3.5 27B | 26.7 GiB | Q8_0 | 557 | 450 | 398 |
| Qwen 3.5 27B | 21.5 GiB | Q6_K | 513 | 410 | 373 |
| Qwen 3.5 27B | 15.9 GiB | Q4_K_M | 439 | 433 | 411 |
| Gemma 3 27B | 20.6 GiB | Q6_K | 409 | 420 | 391 |
| Qwen 2.5 72B | 59.9 GiB | Q6_K | 145 | 140 | — |
主な発見: 35B-A3B MoE モデルは 2,845 トークン/秒 PP を実現します — 同じ量子化レベルの密結合27Bと比べて約5.5倍の速度です。MoE + M5 Max の計算は、プロンプト処理における強力な組み合わせです。
結果:トークン生成(TG)— 帯域幅依存
| 順位 | モデル | サイズ | 量子化 | エンジン | TG 128 (トークン/秒) |
|---|---|---|---|---|---|
| 1 | Qwen 3.5 35B-A3B MoE | 28.0 GiB | Q6_K | llama.cpp | 92.2 |
| 2 | DeepSeek-R1 8B | 6.3 GiB | Q6_K | llama.cpp | 68.2 |
| 3 | Qwen 3.5 122B-A10B MoE | 69.1 GiB | Q4_K_M | llama.cpp | 41.5 |
| 4 | MLX Qwen 3.5 27B | ~16 GiB | 4bit | MLX | 31.6 |
| 4 | Qwen 3.5 27B | 15.9 GiB | Q4_K_M | llama.cpp | 24.3 |
| 5 | Gemma 3 27B | 20.6 GiB | Q6_K | llama.cpp | 20.0 |
| 6 | Qwen 3.5 27B | 21.5 GiB | Q6_K | llama.cpp | 19.0 |
| 7 | Qwen 3.5 27B | 26.7 GiB | Q8_0 | llama.cpp | 17.1 |
| 8 | Qwen 2.5 72B | 59.9 GiB | Q6_K | llama.cpp | 7.9 |
公正な MLX 対 llama.cpp の比較(修正済み)
v1 では MLX の 4-bit を llama.cpp の Q6_K と誤って比較していました。等価な量子化での修正済み比較は以下のとおりです:
| Engine | Quant | Model Size | TG tok/s | PP 512 tok/s |
|---|---|---|---|---|
| MLX | 4-bit | ~16 GiB | 31.6 | — |
| llama.cpp | Q4_K_M | 15.9 GiB | 24.3 | 439 |
| llama.cpp | Q6_K | 21.5 GiB | 19.0 | 513 |
| llama.cpp | Q8_0 | 26.7 GiB | 17.1 | 557 |
訂正済みの結論: MLX は 同等の 4-bit 量子化において llama.cpp より 30% 高速 です(31.6 vs 24.3 トークン/秒)。元の v1 の「92% 高速」という主張は、異なる量子化レベル(4-bit 対 6-bit)を比較しており、 不公平で誤解を招くものでした。お詫びします。
注意: MLX の 4-bit 量子化品質は GGUF Q4_K_M と異なる場合があります。GGUF の K-量子は混合精度を使用します(重要な層は高精度のまま維持)、一方で MLX の 4-bit はより均一です。コミュニティの総意では、同程度のファイルサイズで GGUF Q4_K_M の方が MLX 4-bit より品質の良い出力を生成する可能性があると考えられています。
Quantization Impact on Qwen 3.5 27B
同一モデル、異なる量子化 — 量子化レベルの影響を分離するために:
| 量子化 | サイズ | TG トークン/秒 | PP 512 | PP 8192 | 品質 |
|---|---|---|---|---|---|
| Q4_K_M | 15.9 GiB | 24.3 | 439 | 411 | 良好 |
| Q6_K | 21.5 GiB | 19.0 | 513 | 373 | とても良い |
| Q8_0 | 26.7 GiB | 17.1 | 557 | 398 | ほぼロスレス |
観察: TG速度はモデルサイズと反比例してスケールします(帯域幅制約)。PP速度は興味深いです — 短いプロンプトでは Q8_0 が最速ですが、長いプロンプトでは Q4_K_M がより安定して動作します(メモリプレッシャーが少ない)。
MoE Performance: The Standout Result
Qwen 3.5 35B-A3B MoE モデルは驚きのパフォーマンスを発揮します:
| 指標 | 35B-A3B MoE (Q6_K) | 27B Dense (Q6_K) | MoE の優位性 |
|---|---|---|---|
| PP 512 | 2,845 トークン/秒 | 513 トークン/秒 | 5.5x |
| PP 8192 | 2,063 トークン/秒 | 373 トークン/秒 | 5.5x |
| TG 128 | 92.2 トークン/秒 | 19.0 トークン/秒 | 4.8x |
| Model size | 28.0 GiB | 21.5 GiB | 1.3x larger |
ディスク上で 30% 大きいにもかかわらず、MoE モデルはほぼ 5 倍速くなります。トークンあたりアクティブなパラメータが 3B のみだからです。統一メモリでは、エキスパート選択のための PCIe ボトルネックはなく、すべてのエキスパートは等しくアクセス可能です。Apple Silicon の統一メモリアーキテクチャが MoE モデルで真価を発揮するのはここです。
Memory Bandwidth Efficiency
TG速度は bandwidth / model_size に比例します:
| モデル | サイズ (GiB) | 理論値 (トークン/秒) | 実測値 (トークン/秒) | 効率 |
|---|---|---|---|---|
| DeepSeek-R1 8B Q6_K | 6.3 | 97.5 | 68.2 | 70% |
| Qwen 3.5 27B Q4_K_M | 15.9 | 38.6 | 24.3 | 63% |
| Qwen 3.5 27B Q6_K | 21.5 | 28.6 | 19.0 | 66% |
| Qwen 3.5 27B Q8_0 | 26.7 | 23.0 | 17.1 | 74% |
| Gemma 3 27B Q6_K | 20.6 | 29.8 | 20.0 | 67% |
| Qwen 2.5 72B Q6_K | 59.9 | 10.2 | 7.9 | 77% |
| Qwen 3.5 35B-A3B MoE* | 28.0 (3B active) | ~204 | 92.2 | 45%** |
*MoE の実効メモリ読み出しは総モデルサイズよりも小さい
**MoE の効率計算は異なる — アクティブなパラメータが帯域幅の式を推進します、総モデルサイズではありません
Comparison with Other Apple Silicon
Using llama-bench standardized measurements (Qwen 3.5 27B Q6_K, PP 512):
| Chip | GPU Cores | Bandwidth | PP 512 (tok/s) | TG 128 (tok/s) | Source |
|---|---|---|---|---|---|
| M1 Max | 32 | 400 GB/s | ~200 (est.) | ~14 | コミュニティ |
| M4 Max | 40 | 546 GB/s | ~350 (est.) | ~19 | コミュニティ |
| M5 Max | 40 | 614 GB/s | 513 | 19.0 | This benchmark |
TG 改善 M4→M5 は控えめです(約 10%、帯域幅の増加に比例)。PP の改善は報告上ははるかに大きく、(M4 から約 3 倍、計算性能の向上によるもの)ただし、標準化された M4 の PP 数値を直接比較できるデータはありません。
方法論
- Tool:
llama-bench(3 repetitions, mean +/- std reported) - Config:
-ngl 99 -fa 1(full GPU offload, flash attention on) - PP tests: 512, 2048, 8192 token prompts
- TG test: 128 token generation
- MLX: Custom Python benchmark (5 prompt types, 300 max tokens)
- Each model loaded fresh (cold start, no prompt caching)
- All GGUF from bartowski (imatrix quantizations) except DeepSeek (unsloth)
122B-A10B MoE Results
The community's most requested test. 122B parameters, 10B active per token, Q4_K_M quantization, 69GB on disk.
| 指標 | 122B-A10B MoE (Q4_K_M) | 35B-A3B MoE (Q6_K) | 27B Dense (Q6_K) | 72B Dense (Q6_K) |
|---|---|---|---|---|
| PP 512 | 1,011 トークン/秒 | 2,845 トークン/秒 | 513 トークン/秒 | 145 トークン/秒 |
| PP 2048 | 926 トークン/秒 | 2,265 トークン/秒 | 410 トークン/秒 | 140 トークン/秒 |
| PP 8192 | 749 トークン/秒 | 2,063 トークン/秒 | 373 トークン/秒 | — |
| TG 128 | 41.5 トークン/秒 | 92.2 トークン/秒 | 19.0 トークン/秒 | 7.9 トークン/秒 |
| モデルサイズ | 69.1 GiB | 28.0 GiB | 21.5 GiB | 59.9 GiB |
| 総パラメータ | 122B | 35B | 27B | 72B |
| 有効パラメータ | 10B | 3B | 27B | 72B |
要点: ノートパソコン上で41.5 トークン/秒で動作する122Bモデル。総パラメータが4.5x多いにもかかわらず、密結合の27B(19 トークン/秒)より速いです。MoEと統一メモリの組み合わせがApple Siliconには決定打です。
122B対72B密結合: 122B MoEは、トークン生成時の速度で72B密結合モデルより5.3倍速く(41.5対7.9)、プロンプト処理では7倍速く(1,011対145)、ディスクサイズはわずか15%大きいだけです(69対60 GiB)。そしてほとんどのタスクでベンチマークは72B密結合モデルより優れています。
今後
- BF16 27B テスト(ベースライン品質の参照)
- コンテキスト長スケーリングテスト(8K → 32K → 128K)
- 同時リクエストのベンチマーク
- MLX PP 測定(別のツールが必要)
- Strix Halo との比較(コミュニティの要望)
日付
2026-03-21
v1 投稿: r/LocalLLaMA — この v2 を可能にしたフィードバックに感謝します。
[リンク] [コメント]
