# CUDAGraph ## 定義 CUDAGraph とは、多数のカーネル起動やメモリ転送といった GPU 操作をあらかじめ「グラフ」として記述し、その後まとめて実行・再利用できる CUDA の機能である。GPU へのカーネル呼び出しやデータコピーはホスト側から API を呼び出すたびにオーバーヘッドが発生するが、一度グラフをキャプチャしておけば全工程をまとめて走らせられるため、カーネル起動・メモリコピーのオーバーヘッドと CPU 側の Python 起因オーバーヘッドを大幅に削減できる。(Source: [[@2026__SpeakerDeck__LLM高速化(勉強会)]]) ## 横断的知見 - **最適化されていない LLM 推論の最大のボトルネックは演算そのものではなく起動オーバーヘッドである**: Nsight Systems で最適化前の torch 推論を計測すると、GPU カーネル間に約 100 μs のギャップが繰り返し現れ、これは GPU の実行速度に CPU が追いつけていない状態を示す。FlashAttention や量子化のような演算内容そのものの高速化とは異なる層の問題であり、CUDAGraph はこの「CPU 律速」を直接解消する対処である。(Source: [[@2026__SpeakerDeck__LLM高速化(勉強会)]]) ## 未解決の問い - CUDAGraph によるキャプチャは動的な入力形状(可変長シーケンス、Continual Batching での動的バッチサイズ)とどこまで両立するか。vLLM の ModelExecutor は CUDAGraph キャプチャを担うとされるが、Chunked Prefill や Preemption による動的なリクエスト構成変化にどう対応しているか。 ## 関連 - 隣接 concept: [[GPU最適化]] / [[カーネルフュージョン]] / [[LLM推論]] - 関連 entity: [[vLLM]] - ソース: [[@2026__SpeakerDeck__LLM高速化(勉強会)]] ## 出典 - [[@2026__SpeakerDeck__LLM高速化(勉強会)]] — CUDAGraph の仕組み、Nsight Systems によるボトルネック観測例