EdgeXpert Blog

02-inference / wave 1 / status: published / 更新日: 2026-06-15

ollamaで120Bローカル実行|gpt-oss/nemotron実測

要約

総パラメータ120B級のMoEモデル2本が、総31BのDenseモデルを生成速度で逆転した。 MSI EdgeXpert(GB10 / 128GB UMA)+ ollama 0.30.7の実機計測で、短プロンプト時の生成速度はgpt-oss:120b = 36.41 tok/s、nemotron-3-super:120b = 21.66 tok/sに対し、gemma4:31b(Dense)は10.54 tok/sにとどまった。さらに比較対象として追加計測したgemma4:26b(MoE・活性3.8B)は63.76 tok/sで最速、llama3.3:70b(Dense 70B)は4.75 tok/sで最遅となり、5モデルの生成速度は活性パラメータの小さい順に並んだ(最速と最遅で約13倍差)。「生成速度は総パラメータ数ではなく、活性パラメータ × メモリ帯域273GB/sで決まる」という原理の実証である。ollamaで120Bをローカル実行したい読者、GB10機でのMoEとDenseの速度差を実測値で確認したい読者に向けて、導入手順・運用設定・実測値(計5モデル10 run)をまとめる。

検証環境(GB10 / 128GB UMA)

項目内容
機材MSI EdgeXpert(GB10、128GB UMA、メモリ帯域 273GB/s ※公称)
OSDGX OS(ARM64)
推論エンジンollama 0.30.7
計測日2026-06-11(120B級3モデル) / 2026-06-15(比較対象2モデル追加)

主役の検証モデルは以下の3本。120B級2本が「容量勝負」、31B Denseが「速度の対照」という構図である。

モデル構造活性パラメータ量子化ollama ps の SIZE
gpt-oss:120bMoE(総117B ※1)5.1BMXFP465GB(100% GPU)
nemotron-3-super:120bLatentMoE + ハイブリッドMamba-Transformer(総120B)12BNVFP487GB(100% GPU)
gemma4:31bDense(総30.7B ※2)30.7B(=総)不明 ※223GB(100% GPU)

さらに、活性パラメータと生成速度の関係を序列の両端まで広げて確認するため、比較対象として2モデルを2026-06-15に追加計測した。gemma4:26b(同系のMoE。ollama library公称で総25.2B / 活性3.8B、Q4_K_M)と、llama3.3:70b(Dense 70B、Q4_K_M)である。前者は「活性パラメータが最小のMoE」、後者は「最大のDense」として、本記事の速度序列の両端を担う。

65GB・87GBという巨大なモデルが個別に丸ごとGPUメモリへ載るのは128GB UMAならではだが、合算152GBとなるため2本の同時常駐は不可である(公称SIZEからの単純計算)。この点は後述の運用設定で触れる。

検証内容

ollamaで120Bをローカル実行する手順

導入はNVIDIA公式Playbook記載のワンライナーで完了する(ARM64のままで動作)。OS側の準備は初期セットアップを参照されたい。

# 導入(NVIDIA公式Playbookのワンライナー)
curl -fsSL https://ollama.com/install.sh | sh

# モデル取得
ollama pull gpt-oss:120b
ollama pull nemotron-3-super:120b
ollama pull gemma4:31b

# 計測(--verbose で eval rate 等の統計を表示)
ollama run gpt-oss:120b --verbose

# ロード状況とメモリ占有の確認
ollama ps

本記事のtok/sは ollama run --verbose が表示する eval rate(生成)/ prompt eval rate(プロンプト処理)の値である。これはollama APIの公式メトリクス eval_count / eval_duration × 10^9(時間はナノ秒)と同じ定義として扱い、数値の定義はAPIメトリクスを正とする。なお --verbose フラグ自体は公式ドキュメント上の明記を確認できていない(2026-06-11時点)。

計測条件は「短プロンプト(入力19〜73トークン)」と「長プロンプト(入力7,090〜68,360トークン)」の2条件 × 5モデル。コンテキスト長はgpt-oss:120bとllama3.3:70bを131072、nemotron-3-super:120b・gemma4:31b・gemma4:26bを262144に設定した。

運用設定の要点(計測前に押さえるべき4点)

sudo sh -c 'sync; echo 3 > /proc/sys/vm/drop_caches'

また nvidia-smi のMemory-Usageが「Not Supported」と表示されるのはGB10では正常な挙動であり、ロード中モデルの占有は ollama ps で確認する。

実測結果(tok/s)

結論から示す。短・長どちらの条件でも、生成速度は「gemma4:26b > gpt-oss:120b > nemotron-3-super:120b > gemma4:31b > llama3.3:70b」と、活性パラメータの小さい順に並んだ。 最速のgemma4:26b(活性3.8B)= 63.76 tok/sと最遅のllama3.3:70b(Dense 70B)= 4.75 tok/sでは約13倍の差がついた(短プロンプト)。以下、主役の120B級3モデルに比較対象2モデルを加えた5モデルで示す(太字が生成速度)。

短プロンプト(入力19〜73トークン)

モデル構造(活性)量子化ctxprompt tok/s生成 tok/sメモリ使用量
gemma4:26bMoE(3.8B)Q4_K_M2621449.0063.7631.55GB
gpt-oss:120bMoE(5.1B)MXFP413107286.1636.4177.18GB
nemotron-3-super:120bLatentMoE(12B)NVFP426214437.3921.6693.76GB
gemma4:31bDense(31B)不明26214479.9510.5452.3GB
llama3.3:70bDense(70B)Q4_K_M1310723.484.7590.64GB

短プロンプト実行中のDGX Dashboard(System Memory)

gemma4:26b 短プロンプト実行中のDGX Dashboard。System Memory 31.55GB / 128GB
gemma4:26b / 31.55GB
gpt-oss:120b 短プロンプト実行中のDGX Dashboard。System Memory 77.18GB / 128GB
gpt-oss:120b / 77.18GB
nemotron-3-super:120b 短プロンプト実行中のDGX Dashboard。System Memory 93.76GB / 128GB
nemotron-3-super:120b / 93.76GB
gemma4:31b 短プロンプト実行中のDGX Dashboard。System Memory 52.30GB / 128GB
gemma4:31b / 52.30GB
llama3.3:70b 短プロンプト実行中のDGX Dashboard。System Memory 90.64GB / 128GB
llama3.3:70b / 90.64GB

長プロンプト(入力7,090〜68,360トークン)

モデル構造(活性)量子化ctxprompt tok/s生成 tok/sメモリ使用量
gemma4:26bMoE(3.8B)Q4_K_M2621442684.8054.5232.58GB
gpt-oss:120bMoE(5.1B)MXFP41310721589.6826.8276.29GB
nemotron-3-super:120bLatentMoE(12B)NVFP4262144529.1719.1894.02GB
gemma4:31bDense(31B)不明262144452.877.7554.11GB
llama3.3:70bDense(70B)Q4_K_M131072405.704.4290.89GB

長プロンプトの入力トークン数はモデル間で異なる(gemma4:26b=7,090 / gpt-oss:120b=58,426 / nemotron-3-super:120b=68,360 / gemma4:31b=53,331 / llama3.3:70b=7,668)。prompt tok/s(prefill)はこの入力長差の影響を強く受けるため横比較は参考程度とし、本記事では主に生成tok/sを比較する。

長プロンプト実行中のDGX Dashboard(System Memory)

gemma4:26b 長プロンプト実行中のDGX Dashboard。System Memory 32.58GB / 128GB
gemma4:26b / 32.58GB
gpt-oss:120b 長プロンプト実行中のDGX Dashboard。System Memory 76.29GB / 128GB
gpt-oss:120b / 76.29GB
nemotron-3-super:120b 長プロンプト実行中のDGX Dashboard。System Memory 94.02GB / 128GB
nemotron-3-super:120b / 94.02GB
gemma4:31b 長プロンプト実行中のDGX Dashboard。System Memory 54.11GB / 128GB
gemma4:31b / 54.11GB
llama3.3:70b 長プロンプト実行中のDGX Dashboard。System Memory 90.89GB / 128GB
llama3.3:70b / 90.89GB

gpt-oss:120bは58,426トークンの入力を含むrunでも合計3m29.9sで完了しており、長文のプロンプト処理(prefill)は実用的な速度だった。なお短プロンプト時のprompt tok/sは入力が20〜73トークンと極小のため、オーバーヘッドの影響が大きい参考値と思われる。

表の注記:

  1. メモリ使用量は、推論実行中にDGX Dashboardの System Memory に表示された値を記録した(システム全体のメモリ使用量であり、ollamaプロセス単体の値ではない)。
  2. ollama ps のSIZE(65GB / 87GB / 23GB)はモデル本体のGPU占有、上表のメモリ使用量はシステム全体の値である。差はKVキャッシュやOS・常駐プロセスの使用分を含むためと思われる(内訳は未確認)。なお比較対象のgemma4:26b / llama3.3:70bは ollama ps のSIZEを取得していない。
  3. 比較対象2モデルの量子化はQ4_K_M(ollama show で確認)。主役3モデルとは量子化フォーマットが異なるため、生成速度の比較は「活性パラメータ × 量子化ビット幅」の両者を踏まえて読む必要がある(いずれも約4bit級)。
  4. nemotron-3-superの長プロンプト時のみload durationが6m8.144711858sと突出していた(他の5 runはいずれも1秒未満: 217.979946ms〜409.904843ms)。原因は未特定。

考察

生成速度は「活性パラメータ × 帯域273GB/s」で決まる

トークン生成(decode)は1トークンごとに活性な重みをすべてメモリから読み出すため、メモリ帯域が律速になる。Denseのgemma4:31bは毎トークン全パラメータを読む。モデル占有は ollama ps で23GBなので、公称帯域からの単純試算では 273GB/s ÷ 23GB ≒ 11.9 tok/s が理論上限となり、実測10.54 tok/s(上限の約89%)はこれとよく整合する。この試算は公称帯域とモデル重みの読み出しのみを想定しており、KVキャッシュの読み出しや実効帯域は考慮していない点に注意されたい。

一方MoEは毎トークン活性分しか読まない。gpt-oss:120bの活性は5.1B(MXFP4)で、総パラメータがgemma4の約3.8倍でも毎トークンの読み出し量ははるかに小さい。実測の序列 36.41 > 21.66 > 10.54 が活性 5.1B < 12B < 30.7B の順とそのまま一致したことは、この原理の実証といえる。原理の詳細はなぜ31Bが120Bより遅いのかで掘り下げる。

nemotron-3-superは活性12B + MTPでもgpt-ossに届かず

NVIDIA公称では、nemotron-3-superはMTP(Multi-Token Prediction)による投機的デコードで「構造化生成において最大3倍」、スループットは「GPT-OSS-120B比2.2倍」とされる(ただし公称の計測ハードはGB10ではない)。しかし今回のGB10 + ollama 0.30.7では逆に gpt-oss:120b が上回った(36.41 vs 21.66 tok/s)。この条件下では活性パラメータの差(5.1B vs 12B)が支配的だった、というのが事実ベースの結論である。なおollama配布版でMTPが有効に働いているかは未確認であり、公称比との乖離の一因である可能性は否定できない(未検証)。また、ollama配布版(87GB)とHugging FaceのNVFP4チェックポイント(約67GB)はサイズが異なり、量子化の内訳も未確認である。NVFP4量子化フォーマット自体の挙動はNVFP4 on Blackwellの量子化フォーマット実測比較で扱う。同モデルの導入詳細はnemotron-3-superをEdgeXpertで動かすを参照。

長プロンプトではprefill高速・生成は低下

prefill(プロンプト処理)は入力トークンを並列処理できるため演算律速となり、帯域律速のdecodeとは挙動が異なる。実測でも長プロンプト時のprompt tok/sはgpt-ossで1589.68 tok/sに達した。一方、生成速度は3モデルとも短プロンプト時から低下した(gpt-oss 36.41→26.82、nemotron 21.66→19.18、gemma4 10.54→7.75)。コンテキスト蓄積に伴うKVキャッシュ参照の増加の影響と思われる(未検証)。低下率はnemotronが約11%と最小(他2モデルは約26%)で、attention層が一部に限られるハイブリッドMamba-Transformer構造によりKVキャッシュへの依存が小さいためと思われる(未検証)。

ollama公式のDGX Spark実測との比較は条件差に注意

ollama公式ブログ(2025-10-23、v0.12.6)のDGX Spark実測では、gpt-oss:120bのdecodeは41.14 tok/s(各テスト10回・temperature 0・出力500トークン・キャッシュ無効)だった。今回の36.41 tok/sより高い値だが、エンジンのバージョン(0.12.6 vs 0.30.7)・出力長・コンテキスト設定・キャッシュ条件がすべて異なるため単純比較はできない。同一条件でのエンジン間比較は推論エンジン横断ベンチで扱う。

gemma4:31bのsegfault(Issue #15318)は0.30.7で再現せず

DGX Spark(ARM64 + GB10)でgemma4:26b/31bがロード時にsegfaultするという報告(ollama Issue #15318、0.20.0時点の報告、2026-06-11現在もopen)があるが、今回のollama 0.30.7では再現せず、5万トークン超の長プロンプトを含めて正常に動作した。同一構成で再現に悩む場合は、まずollamaのバージョン更新を確認する価値がある。

まとめ

次に読む: 同一条件でollama以外のエンジンと比較する推論エンジン横断ベンチ、今回最速だったMoEの対抗馬を深掘りするnemotron-3-superをEdgeXpertで動かす

取材メモ

(2026-06-11 調査。特記なきものは当日 WebFetch で本文確認済み。「initial-setup 調査で確認済み」と付記したものは同サイト initial-setup 記事の調査(同日)で確認済みのため再フェッチせず転記)

1. ollama の運用設定(コンテキスト長・ロード/アンロード・環境変数)

2. gpt-oss:120b の一次情報(OpenAI)

3. nemotron-3-super:120b の一次情報(NVIDIA)

4. GB10 / DGX Spark 固有(メモリ・性能・既知の不具合)

GB10 公称固定値(照合用・誤記防止)

未確認事項(sources 非掲載 or 要実測)