メインコンテンツへスキップ
One DGX Spark handles models that fit within its 128 GB unified-memory pool. Two Sparks connected over a 200Gb/s QSFP link can run selected distributed models that do not fit on 1 node. The added network hop also adds coordination overhead, so measure throughput and latency on your exact runtime instead of assuming a 2× gain.

簡単な結論

When 1 Spark is enough

以下の条件では、128ギガバイト仕様の単体DGX Sparkが最適な選択肢となります:
  • Your model fits at a reasonable quantization. Dense models up to 70B at NVFP4 (~35 GB) or MoE models up to 120B at NVFP4 (~60 GB) load on a single node with room for KV cache.
  • You serve 1-5 concurrent users. Single-Spark inference handles small team workloads at 35B MoE. For 70B dense, plan for 5-10 users maximum.
  • モデルサイズよりもレイテンシーが重要であること。 単体Spark構成ならテンサー並列処理に伴うノード間通信のオーバーヘッドが発生しません。35B規模のMoEモデルでは単一ノードでの処理で47から50トークン/秒の速度が得られ、リアルタイムなコーディングエージェントやチャット用途に十分な速さです。
  • シンプルな操作を求めているのです。 1 マシン、1 ランタイム、そして 1 障害発生箇所。ネットワーク設定も分散デプロイもNCCLのデバッグも一切不要です。
どのモデルが対応可能かの詳細な一覧は、DGX Sparkモデル互換性マトリックスをご覧ください。

When you need 2 Sparks

Add a second Spark when any of these apply:
  • 量子化後のモデルサイズが128ギガバイトを超えるが、ランタイムやKVキャッシュ用の余裕を含めても256ギガバイト未満で収まる場合。 DeepSeek-V4-Flash-0731は公開されている162–167 GBという重み下限値を持つモデルの一例です。
  • 分散処理向けに検証済みのモデルにおいて、KVキャッシュ容量や同時接続数を増やしたい場合。 テンサー並列処理によりメモリ負荷を分散できますが、スループットが比例して向上するとは限りません。
  • ネットワーク接続されたランタイムのベンチマーク準備は整いました。 通信オーバーヘッドとモデル構造が結果を左右します。
A 405B dense model at FP8 needs roughly 405 GB for weights alone. It does not fit in 2 Sparks’ 256 GB combined memory. For a tested 2-Spark DeepSeek route and context guidance, see DeepSeek V4 Flash local hardware.
二台のDGX Sparkを 200ギガビット/秒 のQSFPケーブルで直接接続でき、スイッチは不要です。NVIDIAではこの構成向けに公式の「Connect Two Sparks Playbook」も公開しています。
1

QSFPケーブルを接続する

各DGX SparkのQSFPポートに200Gb/s対応のQSFPケーブルを差し込みます。このリンクは直接のポイントツーポイント接続であり、ネットワークスイッチを経由しません。
2

リンク状態を確認する

両方のSparks上で、リンクが全速力で稼働していることを確認してください。
Look for the QSFP interface showing UP state. Verify the speed:
You should see 200000Mb/s (200 Gb/s).
3

IPアドレスを設定する

QSFPリンク用サブネットに静的IPアドレスを割り当てます。まずはSpark A側で設定します。
Spark Bにおいて:
接続性のテストを行う:
4

NCCL環境変数を設定する

NCCL(NVIDIA Collective Communications Library)はノード間のGPU通信を管理します。vLLMを起動する前に、両方のSpark上でこれらの設定を行ってください:
これらの変数によりNCCLは通信にQSFPリンクを利用し、最も低いレイテンシを実現するためにGPU Direct RDMAも有効化されます。

Tensor parallelism across 2 Sparks

vLLMは分散型テンサー並列処理をサポートしており、各Sparkがモデル重みの一部を保持し、推論時にはQSFPリンクを通じて相互通信を行います。

分散型モデルを起動する

Spark A(ヘッドノード)上で、分散モード用にvLLMを起動します:
vLLMではRayを用いて二つのSparkを連携させている。Spark Aがモデルのシャードの半分を読み込み、Spark Bが残りの半分を読み込み、両者はQSFPリンク上でNCCLを通じて同期を取る。
テンサー並列処理は、二つのSparkノードに最適な並列化戦略です。パイプライン並列処理ではレイヤーを順次分割するためパイプラインブラブルが生じ、小規模なクラスターでは計算リソースが無駄になります。一方テンサー並列処理では各レイヤーの計算を両GPUに分散させることで、2ノード構成においてもリソースをより効率的に活用できます。

Model examples for 2 Sparks

パイプライン並列化の適用タイミング

パイプライン並列化では各スパークに異なるレイヤーを割り当てる。設定は簡単だが、2ノード環境では効率が低下する。なぜなら最初のスパークが各トークンの初期レイヤーを処理している間、二番目のスパークは待機状態になるからだ。 以下の場合にのみパイプライン並列化を利用すべきだ:
  • モデル構造がテンサー並列化に対応していない場合
  • You are chaining more than 2 Sparks and want to reduce communication overhead per hop.

複数のスパーク間で必要となるネットワーク要件

QSFPコネクターはこの構成向けに特別に設計されているが、ネットワーク経路もパフォーマンスに大きく影響する:
Do not use a standard Ethernet switch between two Sparks for tensor parallelism. A 10GbE or even 100GbE switch adds latency that bottlenecks the decode phase. The 200Gb/s direct QSFP link is the supported and tested configuration.

コスト対効果の分析

二番目のスパークが効果を発揮する時

  • 測定済みの重み情報およびKVキャッシュ計画を持つ分散型モデルが必要です。 例えば、DeepSeek-V4-Flash-0731では 2ノードが必要で、コミュニティで検証済みの構成として利用可能です。
  • You serve a team on a model whose distributed runtime increases your measured throughput or concurrency enough to justify the second unit.
  • You run latency-sensitive workloads on 120B models. The extra KV cache headroom from two Sparks lets you use longer context or serve more users without hitting the memory wall.

そうでないケース

  • Your model is ≤70B and your team is small. One Spark at 47-50 tok/s on a 35B MoE model is already faster than most people type. A second Spark adds cost and complexity for no user-visible improvement.
  • You run MoE models that already fit. GLM-4.5-Air, Qwen3.5-122B, and Nemotron-3-Super-120B all fit on one Spark at NVFP4. Splitting them across two nodes introduces communication overhead that may not recover the parallelism gain.

Set up a 2-Spark cluster

1

QSFPリンクの接続と検証を行う

上記の 200Gb/sリンク設定 手順に従ってください。両方のSparkで200Gb/sのリンク速度および双方向のping通信が正常に行われることを確認してください。
2

両方のSparkにvLLMをインストールする

両ノードで同一のvLLM環境を構築する必要があります。各ユニットで DGX Spark上のvLLM ガイドに従ってインストール作業を行ってください。
3

両方のSparkにRayをインストールする

vLLMは分散処理の調整にRayを利用しています:
Spark A上でRayのヘッドノードを起動します:
Spark BをRayクラスターに参加させます:
両ノードがクラスター内に認識されていることを確認します:
4

両方のSparkでNCCL環境変数を設定します

5

Spark A上で分散モード用にvLLMを起動する

vLLMが自動的にモデルシェードを両方のSpark間で分散させる
6

分散型サービスが正常に動作しているか確認する

どちらかのSparkからエンドポイントをテストする

Tokiosを通じて両方のSparkにサービスを提供する

複数のSparkを単一のTokiosエンドポイント下に集約可能だ。各Sparkにコネクターをインストールし、それぞれを個別のデプロイとして登録した上で モデルルーティング を用いてトラフィックを振り分ける vLLMがSpark A上で実行され、内部でSpark Bと連携する2-Sparkテンサー並列構成の場合、コネクターはSpark A側にのみ設置すれば十分です。vLLMの/v1エンドポイントがすでに統合クラスターを表しているからです。
Tokiosのダッシュボードに分散デプロイを登録すれば、クライアントは基盤となるトポロジーを意識せずに https://api.tokios.com 経由で両方のSparkにアクセス可能となる

DGX Spark上でのvLLM利用方法

単一ノード用のvLLMのインストールおよび起動コマンド

モデルの互換性に関する情報

どのモデルが 1 および 2 のスパークスに適合するかを確認してください。

メモリのチューニング方法

どちらの構成においても必要となるKVキャッシュの計算方法およびチューニングパラメーター

DGX Sparkの利用事例

DGX Spark向けのTokiosコネクターの完全なセットアップ手順