SGLang量化スタックの再構築:より明確なアーキテクチャの実現

SGLang量化スタックの再構築:より明確なアーキテクチャの実現

量化は高度な機能から高スループットLLMサービスの重要な構成要素へと進化した。チェックポイント形式、モデルアーキテクチャ、ハードウェアバックエンドが増加し続けるにつれ、量化スタックの保守難易度は増している。

本稿では、SGLangのissue #15194で提案されたアーキテクチャ変更を解説する。新設計は、チェックポイント解釈・パラメータ登録・重みロード・後処理・カーネル実行を、専門化された再利用可能なコンポーネントに分割する。

1. この取り組みが重要な理由

本番レベルのサービスエンジンは、単一の低ビットカーネルに依存することができなくなっており、AWQ・GPTQ・Compressed-Tensors・ModelSlim・Quarkなど多様なチェックポイント形式、密なモデルとMoEの重み、KVキャッシュ形式、アテンションカーネル、そしてCUDA GPU・Ascend NPU・CPUなどのハードウェアバックエンドに対応しなければならない。

形式の解析・パラメータ登録・重みロード・後処理・プラットフォーム検査・カーネル実行がすべて一つのクラスに集中すると、新しい形式やバックエンドを追加するたびに結合度が高まり、コードのレビュー・テスト・再利用・拡張が困難になる。

Before and after quantization architecture

旧設計では、単一の量化メソッドがパス全体を制御していた。すなわち、パラメータの定義・重みのロード・レイアウトの変換・バックエンドの選択・カーネルの起動をすべて担っていた。新しいプラットフォームへの対応は、ハードウェアロジックを再利用できる場合でも、同一の形式指向クラスにブランチを追加することを意味していた。

量化はデプロイ規模とサービスパフォーマンスに直接影響する。低ビット重みは重みの帯域幅がボトルネックとなるシナリオ、特にデコードフェーズにおけるメモリトラフィックを削減できる。エンドツーエンドの性能向上はカーネル効率・量化オーバーヘッド・プリフィル/デコードのワークロード比率に依存する。

ModelQuant SchemeE2E(s)TTFT(ms)ITL(ms)Accuracy(%)Weights size(GB)
Qwen3-30B-A3BBF1657.122084.4126.2391.161.08
Qwen3-30B-A3BW8A854.942553.0624.6090.831.29
Qwen3-30B-A3BW4A4_W8A852.972299.5123.8489.421.59

2. スキームベースの量化アーキテクチャ

再構築では、量化パスを4つの層に分割する。

  • Quant Config:チェックポイントのメタデータを解析し、量化パスを選択する。
  • Linear/MoE Method:SGLangの層インターフェースに適合し、操作を委譲する。
  • Scheme:形式と層固有のパラメータ・形状・ロード動作を定義する。
  • Kernel:バックエンド固有の重み変換と実行を行う。
Scheme-based quantization architecture

SchemeとKernelの境界は非常に重要である。SchemeはチェックポイントがどのようにしてSGLangの層にマッピングされるかを記述し、Kernelは特定バックエンドの操作を実装する。これにより、複数のチェックポイント形式が同一のカーネルを共有でき、ハードウェア固有のロジックを形式指向のコードから分離できる。

3. 利点:開発の高速化と再利用範囲の拡大

新アーキテクチャにより、チェックポイント形式とハードウェアバックエンドを独立して進化させることができる。複数の形式が同一のハードウェアカーネルを再利用できるため、重複コードが削減される。

Multiple quantization schemes reusing shared hardware kernels
  • 変更が小さくレビューしやすい
  • テストが焦点を絞りやすい
  • コードの重複が減少する
  • MoE・アテンション・KVキャッシュなどへの拡張が可能

4. 今後の課題

ロードマップの重点項目として、Config → Method → Scheme → Kernelの再構築の完成、W8A8/W4A4/MXFPサポートの拡充、およびMXFP6などの新しい低ビット手法の評価が挙げられる。

5. 謝辞

Huawei AscendチームおよびSGLangコミュニティの貢献者に感謝する。

付録

再現コマンドは原文を参照。