モデル別実行レシピ

Qwen3.8-Flash-Next:DGX Spark 1台のSGLang設定

単一のSparkでもFlash-Nextが高速に動作した実行記録を見て、同じ命令を試してみたいと感じます。しかし、このパスはモデルだけを受け取るのでは終わりません。専用の圧縮バージョンとPLE SSDパッチ、MTPおよびバックエンド設定を一括で合わせる必要があります。どのようなものを再現しているかをまず確認してみます。

ハードウェア別速度チューニングおよびサーバーリシピ要約

重み、KVキャッシュ、プリフィルバッチ、同時リクエストと加速機能を分離し、バランス・速度・長い文脈プロファイルで提供します。

ハードウェア適合度推奨ランタイム運用プロフィール開始文脈トークン生成
MBP M5 Pro 48GB (41GB)メモリ超過(非対応)メモリに収まりません検証待ち4,096トークン-
Studio M5 Ultra 256GB (236GB)十分なメモリLM Studioバランス重視の設定 · プリフィル優先 · 長い文脈16,384トークン41.8 ~ 72.5 tok/s
Studio M5 Ultra 512GB (480GB)十分なメモリLM Studioバランス重視の設定 · プリフィル優先 · 長い文脈16,384トークン41.8 ~ 72.5 tok/s
RTX 4090 24GB (22.5GB)メモリ超過(非対応)メモリに収まりません検証待ち4,096トークン-
2× RTX 3090 48GB (NVLink) (45GB)メモリ超過(非対応)メモリに収まりません検証待ち4,096トークン-
RTX PRO 6000 96GB (93GB)メモリ超過(非対応)メモリに収まりません検証待ち4,096トークン-
DGX Spark 128GB (116GB)実験的な実行SGLang · GB10 パッチ構成単一Spark実測構成 · 262K 長い文脈32,768トークンコード 40.3–42.3 tok/s · 一般文 21.2–25.5 tok/s
Ryzen AI Max+ 395 128GB (116GB)十分なメモリllama.cpp (ROCm/HIP)バランス重視の設定 · プリフィル優先 · 長い文脈8,192トークン15.2 ~ 21.4 tok/s

詳細ページから、プロフィール別に実行コマンド、適用値、停止すべき条件、および測定順序を確認できます。実行コマンドは、モデルファイルと実行プログラムが確認された組み合わせにのみ表示されます。

同じモデル名だけでは同じ構成とは限りません

このパスはQwen3.8-Flash-Nextの特定のNVFP4チェックポイントを使用します。すべてのテンソルが一括で4ビットであるとは限りません。アテンションやMTPなどの部分ではより高い精度を維持しており、全体のファイルおよび実際のロードを確認する必要があります。

単一のSparkのユニファイドメモリ内において、重みをCPU側に移動するだけでは物理空間が増加しません。大きなPLEテーブルをNVMeファイルに保存し、必要な部分を検索するための専用mmapパッチが鍵です。基本的なSGLangにフラグを追加する方法とは別です。

実験ファイルおよびスクリプトは、バージョンおよび内容を確認し、正常な環境と分離して準備します。ダウンロード・変換用の一時的なスペースも必要です。以下に示した実行ブロックで約140GB以上の余裕を参照してくださいが、現在の配布ファイルに必要な総容量を再度確認してください。

32K記録を再現する出発点

報告された32K構成では、TP 1、メモリ比率0.85、プリフィルのチャンクサイズ4,096を使用しています。プリフィルはTriton、デコードはtrtllm_mhaです。MTPの設定はNEXTN、3段階、top-k 1、draft token 4個です。

コミュニティの報告値は、コードデコードの中央値で約41.5 tok/s、一般文脈で約22.8 tok/sと区別されています。この性能は、サイトが直接測定した普遍的な性能ではありません。プリフィルは約1,910 tok/sとされるものの、入力およびキャッシュ条件を確認する必要があります。他の質問にもそのような約束で適用してはなりません。

プリフィルスクリプトおよび検証を通過した後、実際のリクエストは1つずつ送信され、基準を残します。サーバーの最大リクエスト許容値と、測定中に同時に送信されたリクエスト数は異なります。Dockerの外のポートが127.0.0.1にのみ公開されているかを確認してください。

単一DGX Spark 32K実行

git clone https://github.com/hashd1ve/qwen38-flash-next-one-dgx-spark.git
cd qwen38-flash-next-one-dgx-spark

./scripts/download.sh
./scripts/prepare.sh
sed -i.bak 's/-p "$PORT":30000/-p "127.0.0.1:$PORT:30000"/' scripts/serve.sh
MEMFRAC=0.85 PREFILL=4096 CTX=32768 ./scripts/serve.sh
python3 verify.py

Dockerおよび約140GB以上のNVMeの余裕空間が必要です。

実際の速度を変化させた核心となるSGLangオプション

# Docker 포트는 127.0.0.1:30000에만 게시
--tp-size 1
--prefill-attention-backend triton
--decode-attention-backend trtllm_mha
--quantization modelopt_fp4
--ple-offload-embedding
--mamba-radix-cache-strategy extra_buffer
--mem-fraction-static 0.85
--chunked-prefill-size 4096
--max-running-requests 4
--speculative-algorithm NEXTN
--speculative-num-steps 3
--speculative-eagle-topk 1
--speculative-num-draft-tokens 4
--speculative-draft-model-quantization unquant

PLE mmap パッチのない stock SGLangに、このフラグだけをコピーしても同じメモリバッチにはなりません。

コンテキスト長だけを増やせばよいわけではない

長い文脈パスでは、メモリ比率を0.79に下げ、プリフィルチャンクを1,024に減らして一時的なスペースを残します。262,144の設定が許容されるという事実と、その長さの内訳が安定的に処理されたという事実とは異なります。

まず、小さな入力から正常動作を確認したのち、8K・32K・128Kのように段階的に増やします。各長さで、正解を知っている文を途中にも挿入して実際に検出されるか確認してください。他のGPUタスクを減らし、1つのリクエスト条件でメモリと最初のトークン時間を見比べます。

チャンクを減らしてメモリの制限を下げる場合、短い入力の処理量は低下する可能性があります。長い文脈が不要であれば、最も大きな設定を維持する必要はありません。通常の長さの結果に戻って、どのプロフィールを残すかを決定してください。

単一DGX Spark 262K実行

# 서버 주소: http://127.0.0.1:30000
cd qwen38-flash-next-one-dgx-spark
MEMFRAC=0.79 PREFILL=1024 CTX=262144 ./scripts/serve.sh
python3 verify.py

プリフィルチャンクを減らすのではなく、短い入力の処理量は低下する可能性があります。

相手の数字よりも遅いときの確認順序

チェックポイントおよびパッチ・コンテナバージョンをまず確認し、PLEファイルが実際のNVMeパスに存在するかを確認します。次に、ログからプリフィル・デコードバックエンドおよびMTP重みの精度が意図された通りに選択されているかを確認します。候補ステップから急に増やさないでください。

最初のディスクアクセスとページキャッシュの有無を区別し、準備直後の値と、複数のアプリを既に起動した状態での値は異なる可能性があります。MTPをOFFおよびONの状態で、コードおよび一般文脈において同じ条件で記録します。

実行が頻繁に失敗する場合は、速度よりも安定性を基準にまず復元します。ポートが外部に開いている場合はアクセス範囲を制限し、共有サーバーに変更する際には別途認証およびファイアウォールを準備すべきです。

このレシピで、どんな結果を得たいのか

特殊なパッチを使って大きなモデルを1台に搭載することは有意義な実験です。しかし、設定を再現できたことと、毎日便利に使えるツールを得たこととは必ずしも一致しません。実際に必要なドキュメントとコードを完璧に処理してみてください。

もしすでに1台で安定した設定で望む仕事に適応できているなら、2台を購入する必要は減ります。より長い文脈や複数のリクエストが必要な場合に限り、その条件に基づいて2台と比較してください。記録された最高速度よりも、自らの環境で繰り返される結果を購入判断に使用してください。