NVIDIA Nemotron 3 Super を DGX Spark で動かしてみた

NVIDIA Nemotron 3 Super を DGX Spark で動かしてみた

2026.03.12

はじめに

こんにちは、クラスメソッド製造ビジネステクノロジー部の森茂です。

2026 年 3 月 11 日、NVIDIA から Nemotron 3 Super がリリースされました。総パラメータ 120B、アクティブパラメータ 12B のハイブリッドアーキテクチャを採用した、エージェント向けの推論モデルです。アーキテクチャの詳細や Cloudflare Workers AI での試用については大栗さんの記事で紹介しているので、そちらもあわせてご覧ください。

https://dev.classmethod.jp/articles/nvidia-nemotron-3-super-cloudflare-workers-ai/

今回はローカル実行に焦点を当てます。以前の記事では同じ Nemotron 3 ファミリーの軽量モデル Nano(30B-A3B)を DGX Spark で動かしました。今回はそこからスケールアップして、120B の Super に挑戦です。Nano との性能差も気になるので、JCommonsenseQA ベンチマークで比較してみました。

Nemotron 3 Super の概要

Nemotron 3 は NVIDIA がゼロから独自アーキテクチャで訓練した新世代のモデルファミリーです。以前の連載で扱った Nemotron Nano 9B v2 Japanese(Llama ベースのファインチューン)とは別系統になります。

モデル 総パラメータ アクティブ コンテキスト長 位置づけ
Nemotron 3 Nano 30B 3B 128K 軽量・エッジ向け
Nemotron 3 Super 120B 12B 256K〜1M 中核・エージェント向け
Nemotron 3 Ultra 未公開 大規模(2026 年前半予定)

Super は Mamba-2、Transformer Attention、Latent MoE(Mixture of Experts)の 3 種類のブロックを交互に積み重ねたハイブリッド構成です。長いコンテキストの処理、正確な参照検索、同コストで 4 倍のエキスパート活用をそれぞれが分担する設計ですね。マルチトークン予測(MTP)ヘッドも内蔵されており、外部のドラフトモデルなしでネイティブな Speculative Decoding による高速化に対応しています。

DGX Spark での実行を考える上で重要なのは、NVFP4(4 ビット浮動小数点)でゼロから事前学習されている点です。後から量子化するのではなく、最初から 4 ビット精度の制約の中で学習しているため、Blackwell アーキテクチャの NVFP4 最適化とネイティブに相性が良い設計になっています。ただし後述するとおり、2026 年 3 月時点私の環境では推論エンジン側に課題があり、今回は Ollama の GGUF 版で検証しています。

DGX Spark でセットアップする

検証環境

項目
ハードウェア NVIDIA DGX Spark(GB10 Superchip)
メモリ 128GB 統合メモリ
Driver 580.126.09
CUDA 13.0
OS Ubuntu 24.04 (aarch64)
推論エンジン Ollama 0.17.2
モデル nemotron-3-super:latest(Q4_K_M GGUF)

NVFP4 版は動かなかった

NVIDIA 公式の cookbook では vLLM 0.17.1 + NVFP4 チェックポイントでの起動方法が案内されています。しかし DGX Spark(GB10)は CUDA Compute Capability 12.1(sm_121)で、vLLM 0.17.1 が依存する torch 2.10.0+cu128 は sm_120 までしかサポートしていません。CUTLASS カーネルが実行時にクラッシュするため、現時点では NVFP4 バリアントを vLLM で動かすことはできませんでした。

NGC コンテナ(26.01、26.02)も試しましたが、26.01 は vLLM 0.13 系で Nemotron 3 Super のアーキテクチャ(nemotron_h)未対応、26.02 は vLLM 0.15 系で MIXED_PRECISION 量子化の解釈に失敗する状況でした。

TRT-LLM には公式の DGX Spark 向け設定(Config C)が用意されていますが、リリース版ではなく main ブランチからのビルドが必要とのことで、今回は見送りました。今後 NGC 26.03 以降や TRT-LLM の正式リリースで解消されることを期待したいところです。

Ollama で動かす

GGUF フォーマットであれば CUDA カーネルの互換性問題を回避できます。Ollama には Q4_K_M 量子化の nemotron-3-super が公開されており、DGX Spark 上で問題なく動作しました。

# Ollama でモデルを取得(約 87GB)
ollama pull nemotron-3-super

Nano も同様に取得できます。

# 比較用に Nano も取得(約 24GB)
ollama pull nemotron-3-nano

Ollama が起動していれば、あとは API を叩くだけです。モデルのロードには初回 1〜2 分ほどかかりますが、一度ロードされればスムーズに応答が返ってきます。

メモリ使用量

DGX Spark の統合メモリは CPU と GPU で共有されるため、nvidia-smi では正確な使用量が確認しにくい仕様です。Ollama の ps コマンドで確認したところ、Super は約 87GB、Nano は約 24GB をロードしていました。128GB の統合メモリに対して Super 単体なら余裕がありますが、両モデルを同時にロードすると合計 111GB ほどになるため、他のプロセスとの兼ね合いには注意が必要です。

推論してみる

Reasoning モード(思考あり)

Nemotron 3 Super は DeepSeek-R1 のように、推論の思考過程を出力する Reasoning モードを備えています。Ollama では think パラメータで制御できます。

curl -s http://localhost:11434/api/chat -d '{
  "model": "nemotron-3-super",
  "messages": [
    {"role": "user", "content": "Explain the key innovations of Mixture of Experts architecture in 3 sentences."}
  ],
  "stream": false
}' | jq '{model, eval_count, eval_duration_ns: .eval_duration,
         tok_per_sec: (.eval_count / (.eval_duration / 1e9))}'

デフォルトでは Reasoning ON(思考あり)で動作し、内部で思考過程を展開してから回答を生成します。生成トークン数が多くなる分、レイテンシは長くなりますが、複雑な推論タスクでは精度が向上します。

思考なし(nothink)モード

思考過程を省略して直接回答を得たい場合は、think: false を指定します。

curl -s http://localhost:11434/api/chat -d '{
  "model": "nemotron-3-super",
  "messages": [
    {"role": "user", "content": "What is 2+2?"}
  ],
  "think": false,
  "stream": false
}'

ベンチマークや分類タスクなど、短い回答が求められる場面ではこちらのモードが向いています。

スループット計測

同じプロンプトで Nano と Super のスループットを比較しました。

モデル パラメータ 量子化 モデルサイズ Prompt 処理 生成速度 生成トークン
Nemotron 3 Nano 30B(3B) Q4_K_M 24GB 361.0 tok/s 72.3 tok/s 170
Nemotron 3 Super 120B(12B) Q4_K_M 87GB 112.4 tok/s 17.9 tok/s 424

Nano が生成速度で約 4 倍速いのは、アクティブパラメータが 3B と 12B で 4 倍の差があることとほぼ一致しています。一方、Super は Reasoning モードで長い思考過程を含むため生成トークン数が多く、回答の質に差が出ます。

JCommonsenseQA ベンチマーク

なぜこのベンチマークなのか

JCommonsenseQA は日本語の常識推論を問う 5 択問題のデータセットです。以前の連載で Nemotron Nano 9B v2 Japanese(旧世代)を同じ DGX Spark 上で検証しており、比較のベースラインがあります。Nemotron 3 世代は英語メインの訓練データで学習されているため、日本語タスクでどの程度戦えるかの目安にもなります。

計測条件

項目
データセット JCommonsenseQA v1.1(検証セット、1,119 問)
プロンプト 3-shot、回答はアルファベット 1 文字
思考モード nothink(思考なし)
temperature 0
バックエンド Ollama(DGX Spark ローカル)

結果

モデル 世代 量子化 正答率 平均レイテンシ 平均生成速度
Nemotron Nano 9B v2 JP(参考) 旧世代 BF16 91.2% 0.98s/問
Nemotron 3 Nano(30B-A3B) Nemotron 3 Q4_K_M 87.0% 0.30s/問 118.5 tok/s
Nemotron 3 Super(120B-A12B) Nemotron 3 Q4_K_M 94.4% 0.92s/問 35.6 tok/s

Nemotron 3 Super が 94.4% で最も高い正答率を記録しました。旧世代の 9B v2 Japanese(日本語特化ファインチューン済み)が 91.2% だったので、日本語専用の訓練なしで上回ったのはちょっと驚きです。アクティブパラメータ 12B の推論力がそのまま反映されている印象ですね。

Nano も 87.0% と健闘しています。レイテンシでは Nano が 0.30s/問と圧倒的に速く、Super の 0.92s/問と比べて 3 倍高速です。ただし Super でも 1 問 1 秒を切っているので、体感としてはストレスなく使える範囲でした。

精度では Super、速度では Nano。用途に応じた使い分けがはっきり出ていますね。

vLLM + NVFP4 と MTP への期待

今回は Ollama + GGUF で検証しましたが、NVIDIA 公式の推奨構成は vLLM 0.17.1 + NVFP4 チェックポイントです。DGX Spark 向けには TRT-LLM の Config C も用意されています。

さらに Nemotron 3 Super にはマルチトークン予測(MTP)ヘッドがチェックポイントに組み込まれており、外部のドラフトモデルなしでネイティブな Speculative Decoding が使えます。vLLM では --speculative-config オプションを追加するだけで有効化でき、公式では構造化生成タスクで最大 3 倍の高速化を謳っています。

# MTP を有効化する場合(vLLM)
vllm serve $MODEL_CKPT \
  --speculative-config '{"method": "nemotron_h_mtp", "num_speculative_tokens": 5}'

DGX Spark で vLLM + NVFP4 が動作するようになれば、GGUF 版よりも高いスループットが期待できますし、MTP による高速化も試せます。NGC コンテナの次期バージョンや TRT-LLM の正式リリースに期待したいところですね。

まとめ

120B パラメータのモデルをデスクトップ 1 台で動かせるのは、やはりインパクトがあります。日本語専用ファインチューンなしで JCommonsenseQA 94.4% という結果は、ベースの日本語能力の高さを感じますね。

速度の Nano、精度の Super と、使い分けがはっきりしているのも面白いところです。DGX Spark なら両方をロードして用途に応じて切り替えられます。

今回は sm_121 の互換性問題から NVFP4 版は動作しませんでしたが、Ollama + GGUF であれば十分に実用的な速度で推論できました。NVFP4 ネイティブ対応が進めば、MTP による高速化も含めてさらなるパフォーマンス向上が見込めます。

GTC 2026(3/16-19)での Nemotron 3 ファミリーの続報にも注目していきたいところです。

参考リンク

この記事をシェアする

FacebookHatena blogX

関連記事