PyTorch:TokenSpeed-Kernel — マルチシリコンLLM推論のための可搬性の高いハイパフォーマンスカーネル
TokenSpeed-Kernelはオープンソースの3層カーネルサブシステムで、コードの書き直しなしにNVIDIAおよびAMD GPU上でLLM推論を最大3.6倍高速化し、すでにvLLM推論フレームワークに統合されています。
この記事はAIにより一次情報源から生成されました。
TokenSpeed-Kernelとは何か、なぜ重要なのか?
TokenSpeed-Kernelは3層のオープンソースカーネルサブシステム(LLMモデルの計算を直接管理する低レベルGPUプログラムのセット)で、コードを書き直すことなくNVIDIAとAMDシリコンの両方で等しく機能するように設計されています。PyTorchチームが長年の問題への回答として公開しました。高性能カーネルは1つのチップメーカーに縛られていたため、代替ハードウェアへのLLMシステムの移植が困難でした。
実際の高速化はどのくらいか?
AMD MI355X GPUで実行されるGPT-OSS 120Bモデルの測定値は、従来の標準的なPyTorchカーネルフレームワークであるTritonと比較して、推論の各フェーズで劇的な改善を示しています。
- Attention prefill(入力テキストの処理フェーズ):Tritonより1.4〜2.3倍速い
- MoE decode(MoEはモデルがトークンあたりパラメータの一部だけを活性化するアーキテクチャ):1.7〜2.1倍速い
- エンドツーエンドスループット(システム全体の処理能力):1.6〜3.6倍大きい
3.6倍の高速化の上限は限界的な最適化ではありません。同じハードウェアが1時間あたりはるかに多くのユーザーリクエストを処理したり、何倍も速く応答を生成したりできることを意味します。
3層アプローチはどのように機能するか?
TokenSpeed-Kernelはコードを3つのレイヤーに分割します。ハードウェアに依存しない共通インターフェース、NVIDIA専用バックエンド、AMD専用バックエンドです。プログラマーがアテンション操作またはMoEパスを呼び出すと、システムは追加のコードなしに検出されたGPUに対して自動的に正しいバックエンドを選択します。
@register_kernelプラグインメカニズムにより、企業や研究者は同じシステムへの統合によって独自の非標準シリコンアーキテクチャへのサポートを追加できます。
統合と入手可能性
TokenSpeed-Kernelは標準的なPythonパッケージ(pip install)として利用可能で、プルリクエストPR #46742を通じてすでにvLLMに統合されています。vLLMは何百もの本番システムが使用する最も広く普及したオープンソースLLMサービングフレームワークの1つです。vLLMのユーザーは独自の設定を変更することなく自動的に高速化の恩恵を受けられます。
より大きな絵:1チップの独占の終わり?
これまで高性能カーネルは実質的にNVIDIAエコシステムの独占物でした。AMDハードウェアでは動作しないCUDAプラットフォーム向けに書かれていたからです。TokenSpeed-Kernelはこのダイナミクスを変えます。推論システムは同一のコードでNVIDIAとAMD GPUの間を透過的に切り替えられるようになり、AIアクセラレータ市場の競争を高め、LLM本番インフラにおける単一ベンダーへの依存リスクを低減します。
よくある質問
- GPU推論のコンテキストにおけるカーネルとは何ですか?
- GPUカーネルは行列計算とアテンション計算を直接管理するグラフィックプロセッサ上で実行される低レベルのプログラムです。カーネルの速度がモデルが1秒あたりに生成するトークン数を直接決定します。
- TokenSpeed-KernelはNVIDIA GPUだけで動作しますか?
- いいえ。TokenSpeed-KernelはNVIDIAとAMD GPUの両方に対応した個別のバックエンドを持つマルチシリコンアプローチのために設計されており、プラグインシステム(@register_kernel)により共通コードを変更することなく新しいアーキテクチャへのサポートを追加できます。