Diffusion Compiler が消費者向け GPU で Krea 2 Turbo を ComfyUI より高速に実行
拡散モデル向けのオープンソース C++20 コンパイラが、RTX 3090 Ti 上で ComfyUI より 2 倍以上の速度で Krea 2 Turbo プロンプトから PNG への処理を実行します。MiniMax H3 も進行中です。
コンパイラの最初の画像モデルターゲットである Krea 2 Turbo。ソース:Krea 2 オープンウェイト
概要
Diffusion Compiler は、モデルチェックポイントをモデル固有のフロントエンドを通じて検証済みの中間表現(DiffIR)に変換します。コンパイラは次に実行計画を立て、共有ネイティブ C++ ランタイムがその計画をインストール済みハードウェアバックエンドに変換します。NVIDIA バックエンドは CUDA Driver API、NVRTC、cuBLASLt、cuDNN、およびカスタムカーネルを使用します。コンパイルされた実行ファイルは libtorch とリンクせず、Python ワーカーも呼び出しません。
このプロジェクトは、通常の推論スタックに対して厳格な姿勢で位置づけられています。すべてのモデル導入には数値ゲート(コサイン類似度、相対 L2、非有限チェック)が必要であり、単なるビルド成功だけでなく、デコードされたアーティファクトの検査も必要です。Krea 2 Turbo デノイザーはクリエイターの軌道とビット単位で同一を維持し、VAE デコードはコサイン 0.99999339 で合格しました。
Krea 2 Turbo ベンチマーク
固定ベンチマークは、RTX 3090 Ti 上の公式 Krea 2 Turbo チェックポイントとクリエイターレシピを使用します。1024x1024 出力、BF16 演算、8 エイラーステップ、CFG 無効、両方のランで同じチェックポイント、プロンプト、シード、スケジュールです。
| 測定項目 | ネイティブコンパイル版 | ComfyUI/PyTorch BF16 |
|---|---|---|
| コールド初回デノイズステップ | 3.57 s | 28.29 s |
| ホットデノイズステップ中央値 | 2.25 s | 2.00 s |
| 8 ステップデノイズ全体 | 19.36 s | 42.32 s |
| トークナイザー+テキストエンコーダー | 2.28 s | 9.05 s |
| VAE デコード+PNG | 3.43 s | 8.31 s |
| プロンプトから PNG まで、合計 | 26.58 s | 59.14 s |
これは全体のチェーンで 2.054 倍速く、デノイズループ単独では 2.184 倍速いです。興味深い詳細は、高速化がどこから来ていないかです。ホットステップごとの時間は、ウォームアップ済みの PyTorch よりも実際にはわずかに遅い(2.25 秒対 2.00 秒)。利益は、ウォームアップオーバーヘッドの排除、より高速なテキストエンコーダーと VAE ステージ、そしてループからの Python の完全な除去によって得られます。比較対象はスタンダードな ComfyUI イーギークエグゼキューションであり、torch.compile ではありません。README によると、torch.compile は別の同等のベンチマークになるはずです。
フレームワークは、同じ DiffIR とランタイムを通じて LoRA トレーニングのスケルトンもサポートしています。逆モード自動微分、勾配累積、AdamW、およびチェックポイント/再開が含まれます。
MiniMax H3 進行中
最初の生産スケールでの実証フロントエンドは、実際には Krea 2 ではなく MiniMax H3 動画でした。現在の H3 開発チェックポイントは、正確な cuDNN アテンションを持つネイティブ ConvRot INT8 射影キャッシュを使用しており、同じカード上のストリーミング BF16 よりデノイザー評価あたり 1.717 倍速く動作します。近似アテンション候補は 2 倍のタイミング基準を超えましたが、変更なし軌道ゲートを失敗し、拒否されました。完全なプロンプトから動画への受容ランはまだ開放されているため、まだエンドツーエンドの H3 高速化は主張されていません。
日々のサマリー議論によると、H3 ConvRot INT8 サポートが次のランタイムターゲットであり、ComfyUI 統合フックが計画されています。
利用状況
コードは github.com/CodeAlexx/diffusion-compiler で公開されています。CMake 3.24+、C++20 コンパイラ、および NVIDIA バックエンド用の CUDA Toolkit と cuDNN でビルドされます。モデルチェックポイントと生成済みアーティファクトはリポジトリに配布されていません。コンパイラはローカルでダウンロードした重みに対して動作します。現在のランタイムは Krea 2 Turbo および MiniMax H3 開発パスをカバーしています。
コメント
GitHubでサインインしてディスカッションに参加しましょう。