AI・機械学習
ユニファイドメモリ解説:なぜミニPCは70Bモデルを実行でき、大型GPUはできないのか
Unified Memory, Explained: Why Mini PCs Can Run 70B Models a Big GPU Can't (vettedconsumer.com)
要約
ミニPCに搭載されるユニファイドメモリは、CPU、GPU、NPUが単一のメモリプールを共有する仕組みです。これにより、GPU単体ではVRAM容量の限界で実行できない大規模なAIモデルをミニPCで読み込めるようになります。しかし、この構造はメモリ帯域幅を犠牲にするため、モデルの応答速度は大型GPUに比べて遅くなります。
全文翻訳
デスク上にそれぞれ約2,000ドルのマシンを2台置きます。1台はNVIDIA RTX 5090を搭載したタワー型で、32GBの最速コンシューマーメモリ(毎秒1,792GB)を備えています。もう1台は、ペーパーバックサイズのミニPCで、AMD Ryzen AI Max+ 395 "Strix Halo"ボックスで、約256GB/sの速度を持つ128GBのハンダ付けされたメモリを搭載しています。ここで、それぞれに700億パラメータのモデルを実行するように依頼します。RTX 5090は実行できません。妥当な4ビット量子化での70Bモデルには約40GBが必要ですが、32GBには収まりません。小さなミニPCは文句なしでそれをロードし、遅い読書家のペースで応答します。そのパラドックスは、ミニPCカテゴリ全体を1つの画像で表しています。これらのボックスは、はるかに高速なGPUができないモデルを保持でき、その代償として速度を支払います。その理由を理解するには、1つのアイデア、ユニファイドメモリ、そして反対方向に引っ張る2つの数値に帰着します。私たちはこれらのボックスを独自にベンチマークしていません。以下は、ベンダー仕様、推論文献、およびオーナー測定数値を統合したもので、すべて末尾にリンクされています。
ユニファイドメモリとは
通常のデスクトップでは、CPUは独自のシステムRAMを持ち、グラフィックスカードは独自のVRAMを持ち、データはPCIeバスを介してそれらの間で転送されます。モデルはGPUで実行するためにGPUのVRAMに収まる必要があるため、24GBカードは、いくらシステムRAMを追加しても、常に24GBのハード上限が設定されます。
ユニファイドメモリマシンは、その分割を排除します。CPU、統合GPU、NPUはすべて、ハンダ付けされたLPDDR5Xメモリの単一のプールを共有します。個別のVRAMがないため、ほぼすべてのプールをモデルに割り当てることができます。128GB構成を購入すると、約1つのミッドレンジグラフィックスカードの価格で、モデルが格納できる128GBに近い「VRAM」が得られます。Appleは何年も前からMacをこのように構築してきました。AMDのStrix Halo、NVIDIAのDGX Spark、IntelのCore Ultra、QualcommのSnapdragon Xはすべて現在同様のことを行っています。それが、ミニPCがローカルLLMの会話に突然参入した理由です。容量、安価に。
すべてを決定する2つの数値
ローカルLLMのマシン適性は、人々が常に混同している2つの仕様にかかっています。容量(メモリが何GBあるか):モデルがロードされるかどうかを決定します。ユニファイドメモリミニPCが勝利する場所です。メモリ帯域幅(毎秒何GBか):ロードされた後のテキスト生成速度を決定します。ミニPCがリアルGPUに大きく劣る場所です。
現在の状況を以下に示します。帯域幅の数値は理論上のピーク値です(実際の配信帯域幅は低くなります。この点については後述します)。容量は、トップで利用可能なユニファイド構成です。
マシン(SoC)
メモリバス
ピーク帯域幅
最大ユニファイドメモリ
Intel "Lunar Lake" (Core Ultra 200V)
128-bit LPDDR5X-8533
~137 GB/s
32 GB
Qualcomm Snapdragon X2 Elite
128-bit LPDDR5X
~152 GB/s
最大128 GB
Intel "Panther Lake" (Core Ultra X)
128-bit LPDDR5X-9600
~154 GB/s
96 GB
Qualcomm Snapdragon X2 Elite Extreme
192-bit LPDDR5X
~228 GB/s
最大128 GB
AMD Ryzen AI Max+ 395 "Strix Halo"
256-bit LPDDR5X-8000
256 GB/s
128 GB
NVIDIA DGX Spark (GB10)
256-bit LPDDR5X-8533
273 GB/s
128 GB
Apple M4 (Mac mini)
128-bit
120 GB/s
32 GB
Apple M4 Pro (Mac mini)
256-bit
273 GB/s
64 GB
Apple M4 Max (Mac Studio)
384 to 512-bit
410 to 546 GB/s
128 GB
Apple M3 Ultra (Mac Studio)
1024-bit
819 GB/s
最大512 GB
比較用:ディスクリートGPU(はるかに高速、はるかに少ない容量)
RTX 3090 / 4090
384-bit GDDR6X
936 / 1,008 GB/s
24 GB
RTX 5090
512-bit GDDR7
1,792 GB/s
32 GB
RTX PRO 6000 Blackwell (~$8,500)
512-bit GDDR7
1,792 GB/s
96 GB
出典:ベンダー仕様書、Chips and Cheese、NotebookCheck、TechPowerUp。帯域幅 = 理論上のピーク値。
この表は2つの物語として読み取れます。ミニPCの行を下に進むと、容量は128GB(およびM3 Ultraでは512GB)まで増加しますが、帯域幅は約120〜270 GB/sのままです。GPUの行を下に進むと、逆になります。帯域幅は900〜1,800 GB/sですが、8,500ドルのワークステーションカードに達するまで容量は24〜32GBに制限されます。ミニPCと中古のRTX 3090は、1つのスケール上の2つの点ではありません。それらは反対です。
速度を設定するのは帯域幅であり、コンピューティングではない理由
高速GPUと広々としたミニPCがこれほど異なる動作をする理由を理解するには、パフォーマンスについて推論する標準的な方法であるルーフラインモデル(Williams, Waterman, and Patterson, 2009)が必要です。これは、ワークロードがチップの計算速度か、メモリからデータを移動する速度のいずれかによって制限されることを示しています。どちらが影響するかは、読み取るバイトあたりの計算量がどれだけ多いかによって異なります。
テキスト生成は、バイトあたりの計算量が非常に少ないです。1つのトークンを生成するために、マシンは基本的にモデル全体をメモリから一度読み出し、それに少量の算術演算を行います。したがって、クロックは帯域幅によって設定され、コンピューティング能力によって設定されるわけではありません。Apple自身の機械学習チームは、MLXのドキュメントで次のように明確に述べています。「後続のトークンを生成することは、コンピューティング能力ではなく、メモリ帯域幅によって制限されます。」学術的なバージョンも同様です。Popeらの「Efficiently Scaling Transformer Inference」(2022)は、生成レイテンシをメモリから重みをストリーミングする時間によって支配されるとモデル化しています。
これにより、あらゆるマシンの大まかな速度制限が得られます。デコードトークン/秒 ≈ メモリ帯域幅 ÷ トークンあたりのバイト数
256 GB/sのStrix Haloボックスで、4ビット(トークンあたり約40GB読み取り)の密な70Bモデルの場合、256 ÷ 40となり、上限で約6トークン/秒、実際にはそれ以下です。819 GB/sのM3 Ultraでは、同じモデルで819 ÷ 40となり、約20です。1,792 GB/sのRTX 5090では、上限は約45になりますが、モデルがまったく収まりません。ミニPCの遅さは、ドライバーの問題や弱いチップではありません。それは帯域幅の数値に対する算術演算です。
知っておく価値のある大きな例外が1つあります。それはミニPCの最大のトリックだからです。それは、Mixture-of-Expertsモデルです。Qwen3-30B-A3BのようなMoEは30Bパラメータを保持しますが、トークンあたり約3Bしかアクティブにしないため、40GBではなく約2GBをトークンあたり読み取ります。同じStrix Haloボックスで、密な70Bを5トークン/秒でクロールするのに対し、オーナーはMoEを約72で測定しています。ミニPCを高速に感じさせたい場合は、MoEモデルを実行してください。
誰も箱に記載しない注意点:プロンプト処理
デコード速度は、誰もが引用する数値です。ミニPCで体験を台無しにする数値は、もう1つです。プロンプト処理、またはプリフィルとも呼ばれ、最初の単語が返ってくる前に、入力を読み取る時間です。
プリフィルはデコードの反対です。プロンプト全体を並列で処理するため、生のコンピューティングに負荷がかかり、帯域幅ではなくチップのFLOPSによって制限されます。Splitwise論文(Patel et al., 2023)は、線をきれいに引いています。LLM推論は「コンピューティング集約型のプロンプト計算と、メモリ集約型のトークン生成」です。2つのフェーズ、2つの異なるボトルネック。
これはまさにミニPCが苦戦するところです。なぜなら、それらの統合GPUは、ディスクリートカードのコンピューティング能力のほんの一部しか持たないからです。プリフィルが崩壊している間、デコードは許容範囲に見えることがあります。Strix Haloでllama.cppを使用したオーナーベンチマークは、その分割を示しています(単一実行、平均化なし、ドライバーバージョンに敏感):
Strix Halo上のモデル(Q4)
プロンプト処理
テキスト生成
Llama 2 7B
1,014 tok/s
45.8 tok/s
Qwen3 30B-A3B (MoE)
605 tok/s
72.0 tok/s
Shisa V2 70B (dense)
94.7 tok/s
5.0 tok/s
オーナー測定、Level1Techsフォーラムベンチマークスレッド。単一実行。方向性として扱ってください。
密な70B行を見てください。プロンプト処理が95 tok/sということは、4,000トークンのドキュメント(長いメールスレッド、コードファイル、数ページのメモ)は、モデルが何も言う前に約40秒かかるということです。Registerのハンズオン比較でも同じパターンが見られ、コンテキストウィンドウが大きくなるにつれて「ギャップは大幅に広がる。なぜなら、プロンプト処理はコンピューティングバウンドになるからだ」と指摘しています。ユースケースが長いドキュメントや大きなコードベースの場合、これはトークン/秒ではなく、あなたがぶつかる壁です。
NPUはほとんどがまやかし
これらのチップはすべて、大きなNPU TOPS数でマーケティングされており、購入者は合理的にNPUがAIを実行していると想定します。ローカルLLMチャットでは、ほとんどの場合そうではありません。理由は2つあります。
第一に、NPUは他のすべてのものと同じメモリを共有します。デコードはメモリ帯域幅によって制限されるため、作業をNPUに移動しても上限は上がりません。単に同じボトルネックが移動するだけです。これらのチップの特性評価研究(Chen et al., 2025)では、シングルストリームデコードはメモリ帯域幅によって制限されることがわかりました。