Luce DFlash:単一RTX 3090で最大2倍のスループットを目指すQwen3.6-27B

Reddit r/LocalLLaMA / 2026/4/28

📰 ニュースDeveloper Stack & InfrastructureSignals & Early TrendsTools & Practical UsageModels & Research

要点

  • Luce DFlashは、GGUF向けに作られたスタンドアロンのC++/CUDA実装で、推測デコーディングにより単一の24GB RTX 3090上でQwen3.6-27Bを動かし、最大約2倍のスループットをうたっています。
  • 同プロジェクトは再学習なしでの性能向上を報告しており、HumanEval、GSM8K、Math500でQwen3.6を対象にマッチしたQwen3.6-DFlash draftを用いることで平均約1.98×の速度向上を示しています。
  • 推論面ではKVキャッシュの圧縮(TQ3_0)、24GBで最大256Kのロングコンテキストを可能にするリングバッファ設計、プリフェイルのバッチ増加(16→192、長いプロンプト向け)、およびスライディングウィンドウのflash attentionによる大コンテキスト時のデコード速度維持などの最適化を行っています。
  • ビルドと実行はCMakeとHugging Faceからのダウンロード手順で行え、OpenAI互換のHTTPエンドポイントとして提供することも、ローカルのチャットREPLとして使うこともできます。
Luce DFlash: Qwen3.6-27B at up to 2x throughput on a single RTX 3090

皆さん、Llamas仲間よ。時間は貴重なので手短にいきます。

私たちはDFlashの推論(speculative decoding)のGGUF移植版を作りました。ggmlの上に構築したスタンドアロンのC++/CUDAスタックで、24 GBの単一RTX 3090上で動作し、新しいQwen3.6-27Bをホストします。

それがLuce DFlash(https://github.com/Luce-Org/lucebox-hub; MIT)です。

Qwen3.6におけるHumanEval / GSM8K / Math500で、自己回帰(autoregressive)平均に対して約1.98x(再学習なし)。z-labは2026-04-26に、対応するQwen3.6-DFlashドラフトを公開しました(まだ訓練中なので、ALは今後も伸び続けるはずです)。

CUDA 12+ と NVIDIA GPU(RTX 3090 / 4090 / 5090、DGX Spark、その他Blackwell、またはCUDA 13+のJetson AGX Thor)があるなら、必要なのは以下だけです。

# リポジトリをクローン(最初のコメントにリンクあり)した後:

cd lucebox-hub/dflash

cmake -B build -S . -DCMAKE_BUILD_TYPE=Release

cmake --build build --target test_dflash -j

# 対象を取得(約16 GB)

huggingface-cli download unsloth/Qwen3.6-27B-GGUF Qwen3.6-27B-Q4_K_M.gguf --local-dir models/

# 対応する3.6ドラフトは制限あり:termsを受諾+まずHF_TOKENを設定

huggingface-cli download z-lab/Qwen3.6-27B-DFlash --local-dir models/draft/

# 実行

DFLASH_TARGET=models/Qwen3.6-27B-Q4_K_M.gguf python3 scripts/run.py --prompt "def fibonacci(n):"

以上です。エンジン内にPythonランタイムは不要、llama.cppのインストール不要、vLLM不要、SGLang不要。バイナリはlibggml*.aにリンクされ、libllamaには一切リンクしません。

Luce DFlashは以下を行います。

  • Qwen3.6-27BのQ4_K_Mターゲット重み(約16 GB)と、対応するDFlash bf16ドラフト(約3.46 GB)をロードし、DDTreeによるツリー検証(tree-verify)付きの推論(speculative decoding)を実行します(ブロックサイズ16、デフォルト予算22、greedy検証)。
  • KVキャッシュをTQ3_0に圧縮(3.5 bpv、F16に対して約9.7x)し、4096スロットのtarget_featリングをロールして、256Kコンテキストが24 GBに収まるようにします。Q4_0は従来の手順で、上限はおよそ128Kです。
  • 2048トークンを超えるプロンプトでは、prefillのubatchを16から192へ自動で引き上げます(13Kプロンプトで約913 tok/sのprefill)。
  • デコード時にスライディングウィンドウのフラッシュアテンションを適用します(デフォルトは2048トークンのウィンドウ、推論の受理率は100%維持)。そのため、60Kコンテキストでも25.8 tok/sではなく89.7 tok/sでデコードできます。
  • OpenAI互換のHTTPエンドポイント、またはローカルのチャットREPLで提供します。

RTX 3090上で、Qwen3.6-27B UD-Q4_K_XL(unsloth Dynamic 2.0)ターゲット、データセット10プロンプト、n_gen=256での結果:

Bench AR tok/s DFlash tok/s AL Speedup

HumanEval 34.90 78.16 5.94 2.24x

Math500 35.13 69.77 5.15 1.99x

GSM8K 34.89 59.65 4.43 1.71x

Mean 34.97 69.19 5.17 1.98x

ご覧のとおり、スピードアップは論文の数字ではなく、一般的な消費者向けハードウェアで実際に得られています。ターゲットグラフはARモードにおける自己回帰とビット単位で同一の出力を生成します。ドラフトグラフは、cos sim 0.999812でz-labのPyTorchリファレンスと一致しています。Q4_0のKVコストは短いコンテキストではALを約3%しか増やしません(8.56→8.33)。そしてF16がそもそも収まらない長いコンテキストでは勝ちます。

制約:CUDAのみ、greedy verifyのみ(OpenAIサーバー上のtemperature/top_pは受け付けられますが無視されます)。Metal / ROCm / マルチGPUは不可。リポジトリは当初単一3090対応で始め、最近のコミュニティPRでRTX 5090、DGX Spark / GB10、その他Blackwellカード、Jetson AGX Thor(sm_110 + CUDA 13)への対応が追加されました。

フィードバック大歓迎です!

submitted by /u/sandropuppo
[link] [comments]