前回・前々回と、Windowsのミニデスクトップで統合メモリ(内蔵GPU)と専用GPUを比べてきました。その流れで、ずっと気になっていたことがあります。
Macのゲームの回で「Apple Siliconの統合メモリは速い」と書いたのですが、Windows側にも同じ"統合メモリ"の内蔵GPU(Radeon 780M)があるわけです。どちらもCPUにGPUを内蔵し、メインメモリを共有する——構造としては同じはず。
だとしたら、同じAIモデルを走らせたら、速度も同じくらいになるのか? 手元にMac(Apple M4)とミニPC(Radeon 780M)の両方があるので、確かめてみました😊
・同じLLMを同じ条件でM4と780Mに走らせた実測値
・★M4が約1.5倍速い。でも帯域の差は1.34倍しかない
・帯域だけでは説明できない差の正体(両者のGPU設計を並べて解説)
・MLXというApple専用の飛び道具
・★条件は完全には揃わない——そこに正直に向き合う
同じ「統合メモリ」なのに
今回の2台は、どちらも「CPUの中にGPUがあって、メインメモリを分け合う」という同じ作りです。
- Mac:Apple M4 / メモリ32GB(LPDDR5X)
- ミニPC:Ryzen 7 7840HS 内蔵の Radeon 780M / メモリ32GB(DDR5-5600)
専用のグラフィックボードは使いません。純粋に「統合メモリ機どうしの対決」です。以前の推論エンジン対決ではMac内部での比較でしたが、今回はMacとWindowsをまたいで、同じ土俵の構成で殴り合わせます。
用語集
| 用語 | 意味 |
|---|---|
| 統合メモリ | CPUとGPUが同じメモリを分け合う作り。内蔵GPUはこの形。専用VRAMを持ちません |
| メモリ帯域 | メモリとの間で1秒あたり何GB運べるか。AIの文章生成はここで速度が決まります |
| tg(生成) | 返事を1文字ずつ書く速度(tok/s)。体感速度に直結。メモリ帯域が主役の処理 |
| pp(読解) | 読ませた文章をまとめて処理する速度。演算力が主役 |
| Metal | AppleのGPUを動かす窓口。統合メモリを前提に設計されています |
| MLX | Appleが自社チップ専用に作ったAI用の枠組み。M系チップに特化しているぶん速い |
| RDNA 3 | AMDのGPU設計。Radeonのグラフィックボードと同じ系譜で、780Mはこれを内蔵GPU用に縮めたもの |
| タイル方式/ 即時方式 | GPUの描き方。タイル方式は処理を小さく区切ってチップ内で完結させるのでメモリへの往復が少ない。即時方式は素直に処理して都度メモリへ書く。太い専用メモリがある前提の作り |
| Vulkan | 特定メーカーに依存しないGPUの窓口。AMDでもNVIDIAでも動く。今回Windows側で使用 |
| 量子化(Q4) | モデルの数値を粗くして容量を減らすこと。今回は両者ともQ4(4ビット相当)で揃えています |
対戦カードと、条件の揃え方
比較で一番大事なのは条件を揃えることです。今回はここを守りました。
- 同じモデル:Qwen2.5-Coder の 7B と 14B
- 同じ量子化:Q4(4ビット相当)
- 同じ測定条件:プロンプト512トークン/生成128トークン/3回平均/ウォームアップ1回を破棄
Mac側は llama.cpp(Metal) と、Apple専用の MLX の2通り。Windows側は前回の検証で測った llama.cpp(Vulkan) の値を使います。
・Apple M4:120 GB/s(LPDDR5X-7500)
・Radeon 780M:89.6 GB/s(DDR5-5600・デュアルチャネル)
帯域だけ見ると M4は780Mの約1.34倍。この数字を覚えておいてください。
実測結果
まず数字を並べます。tg(生成速度)が体感に効く数字です。
| 構成 | エンジン | 7B tg | 14B tg |
|---|---|---|---|
| Apple M4 (120 GB/s) | llama.cpp (Metal) | 19.55 | 10.69 |
| MLX (Apple専用) | 22.60 | — | |
| Radeon 780M (89.6 GB/s) | llama.cpp (Vulkan) | 13.37 | 6.72 |
同じ土俵(llama.cpp どうし)で比べると、こうなります。
| モデル | M4 (Metal) | 780M (Vulkan) | M4は何倍 |
|---|---|---|---|
| 7B | 19.55 | 13.37 | 1.46倍 |
| 14B | 10.69 | 6.72 | 1.59倍 |
予想どおりM4のほうが速いです。ですが、この倍率をよく見ると引っかかります。
帯域だけでは説明できない
ここが今回のいちばん面白いところでした。数字が合わないのです。
tg(生成)はメモリ帯域で決まる——これはエッジAIチップの回から何度も確かめてきた原則です。それが正しいなら、速度の差は帯域の差(1.34倍)とだいたい一致するはずです。
ところが実際は7Bで1.46倍、14Bで1.59倍。帯域の差を上回っています。しかも大きいモデル(14B)ほど差が開いている。帯域以外に、M4を速くしている何かがあるということです。
差の正体①:GPUの設計思想が違う
ひとつめの答えはGPUの成り立ちの違いです。両者はまったく別の出自を持っています。
| 項目 | Apple M4 GPU | Radeon 780M(RDNA 3) |
|---|---|---|
| 出自 | iPhone・iPadから発展 =電池で動く前提 | デスクトップのグラボから縮小 =コンセントに挿す前提 |
| 描き方 | タイル方式(処理を小さく区切る) | 即時方式が基本 (近年はタイル的な工夫も併用) |
| メモリの前提 | 細い帯域でも成り立つ設計 | 太い専用メモリがある前提の設計 |
| 規模 | 10コアGPU | 12基の演算ユニット(最大3.0GHz) |
Apple側:もともと細い帯域で戦ってきた
Apple GPUはMacゲームの回でも触れたiPhone由来のタイル方式です。処理を小さく区切り、チップ内蔵の高速な作業場で完結させてからまとめてメモリに書き出すので、メモリへの往復が少なくて済みます。
スマートフォンは電池で動くので、メモリを何度も読み書きする余裕がありません。その制約の中で磨かれた設計が、そのままMacに載っている——というのがApple側の事情です。
AMD側:本来は「太いメモリ」とセットの設計
一方のRDNA 3は、Radeonのグラフィックボードと同じ系譜です。デスクトップ向けに作られたものを、CPUに載るサイズまで縮めたのが780Mにあたります。
ここに構造的な難しさがあります。グラボ用のRDNAは、GDDR6のような太い専用メモリと組み合わせる前提で設計されています。実際、上位のグラボには大きなキャッシュを積んで帯域不足を補う仕組みも載っています。
ところが内蔵GPUになると、その太いメモリも大きなキャッシュも使えません。DDR5のメインメモリをCPUと分け合うことになります。「太いメモリありき」で設計されたものを、細いメモリで動かしている——この噛み合わせの悪さが効いてくる、という構図です。
・Apple:細い帯域で戦う前提の設計を、そのまま持ち込んだ
・AMD:太い帯域が前提の設計を、細い帯域で動かしている
どちらが良い悪いではなく、今回の土俵(統合メモリ)がApple側の得意分野だったということです。
14Bで差がさらに開いたのも、これで説明がつきます。モデルが大きいほどメモリのやり取りが増えるので、「往復が少ない」利点が効いてくるわけです。
逆に言えば、780Mに専用の太いメモリを与えれば話は変わります。実際前回で見たとおり、同じRDNA系ではなくNVIDIA製ですが、専用VRAMを持つRTX 3060は780Mの4倍以上速かった。内蔵GPUという土俵そのものが、AMDの設計には不利だったと言えます。
差の正体②:MLXという飛び道具
ふたつめは、Mac側だけが持っているMLXです。
最初の表を見ると、MLXは7Bで22.60 tok/s。llama.cpp(Metal)の19.55より、さらに16%速いです。780M(13.37)と比べると1.69倍にまで差が開きます。
MLXはAppleが自社チップ専用に作ったAIの枠組みで、汎用のllama.cppよりM系チップに深く最適化されています。「専用に作れば、まだ速くできる」という余地が、Mac側にはあるわけです。
ただし裏返すと、MLXはAppleでしか動きません。Windows側にはこれに当たるものがなく(AMD専用のROCmはあるものの、今回のような手軽さはありません)、llama.cppで戦うしかないのが実情です。
正直な話:条件は完全には揃っていない
ここまで「M4が速い」と書いてきましたが、この比較には限界があります。正直に書いておきます。
| 揃っているもの | 揃っていないもの |
|---|---|
| モデル(Qwen2.5-Coder) | 推論エンジン(Metal/MLX 対 Vulkan) |
| 量子化(Q4) | OS(macOS 対 Windows) |
| 測定条件(512/128・3回平均) | 量子化の中身(Q4でも実装が微妙に違う) |
とくにエンジンが違うのは大きいです。同じ「llama.cpp」でも、Metal版とVulkan版は別々に書かれた実装で、それぞれの最適化度合いが違います。「M4が速い」の一部は、Metal版llama.cppの出来の良さかもしれない——という可能性は否定できません。
これは推論エンジン対決の回でも書いた話で、異なるプラットフォームをまたぐ比較は、どうしても完全な同一条件にはなりません。今回の数字は「実際に使ったときにどれだけ速いか」という実用の比較であって、チップの理論性能を厳密に比べたものではない、と受け取ってください。
それでも言えること
限界はあるものの、実用の観点でははっきりしたこともあります。
- 同じ"統合メモリ"でも、速度は同じにならない。M4は780Mの約1.5倍速かった
- その差は帯域だけでは説明できない。帯域1.34倍に対し速度1.46〜1.59倍。GPU設計の出自による効率の差が上乗せされている
- Mac側にはMLXという伸びしろがある。専用に最適化された分だけ、さらに速い
- 大きいモデルほどMacが有利。メモリのやり取りが増えるほど、往復の少なさが効く
逆に780Mの名誉のために書いておくと、13.37 tok/s(7B)は実用として十分な速度です。人が読む速さより速いので、「Macほどではないが、普通に使える」のが正しい評価だと思います。しかも前回見たとおり、780MはメモリをBIOSの設定に縛られず大きいモデルも載せられる柔軟さがあります。
まとめ
- どちらも統合メモリ機のM4と780Mで、同じQwen2.5-Coderを同じ条件で実測
- ★M4がtgで約1.5倍速い(7B: 19.55 vs 13.37、14B: 10.69 vs 6.72)。MLXなら1.69倍まで開く
- ★帯域の差(1.34倍)を上回る速度差。帯域だけでは説明できない
- 差の正体はGPUの出自:AppleはiPhone由来=細い帯域で戦う前提のタイル方式、AMDのRDNA 3はグラボ由来=太い専用メモリが前提の設計。統合メモリという土俵がApple側の得意分野だった。大きいモデルほど効く
- MLXという伸びしろがMac側にはある。ただしApple専用
- ★ただしエンジンもOSも違う。これは理論性能ではなく実用速度の比較だと受け取るべき
調べる前は「統合メモリなんだから、帯域なりの差でしょ」と思っていました。実際は帯域以上の差が出て、しかもモデルが大きいほど開いた。同じ"統合メモリ"という言葉でくくっても、中の設計思想でここまで変わるのか、というのが面白い発見でした😊
そして毎回のことですが、結局また「メモリの効率」の話に行き着いたのも印象的です。エッジAIチップから前回のeGPUまで、AIの速度を追いかけると、いつもメモリが主役になる——それが一本の筋として見えてきました。
それでは、今回はここまで。最後までありがとうございました😊
【実測環境】Mac: Apple M4 / macOS 26.5.2 / RAM 32GB(LPDDR5X-7500・120GB/s)/llama-cpp-python 0.3.31(Metal, n_gpu_layers=-1)・mlx-lm 0.31.3。Windows(参考値・p960で取得): Ryzen 7 7840HS 内蔵 Radeon 780M / RAM 32GB(DDR5-5600・89.6GB/s)/llama.cpp Vulkan。モデルは Qwen2.5-Coder-7B/14B-Instruct Q4_K_M(MLXは同7B 4bit)。計測は prompt 512トークン・生成128トークン・3回平均(ウォームアップ1回を破棄)。メモリ帯域は各社の公称値に基づく理論値(Apple M4はLPDDR5X-7500で120GB/s、Ryzen 7 7840HSはDDR5-5600デュアルチャネルで89.6GB/s)。GPU仕様はAMD公式のRyzen 7 7840HS製品ページ(Radeon 780M=RDNA 3・12基の演算ユニット)等を参照。エンジン・OSが異なるため、理論性能ではなく実用速度の比較です。数値は2026年7月時点の実測で、版により変わる可能性があります。