Back to Headlines

NVIDIA CUDA対応VC-6で視覚AIパイプラインの高速化を実現

14日前

NVIDIAとV-Novaの共同開発によるCUDA加速型VC-6コーデックは、高性能な視覚AIパイプラインの構築に向けた画期的なソリューションを提供している。AIモデルの学習や推論では、GPUの処理能力が飛躍的に向上している一方、データの読み込みや変換処理(I/O、PCIe転送、CPUでのデコード・リサイズなど)がその性能を引き出せない「GPUスターヴェーション」が課題となっている。この問題を解決するため、VC-6はGPUの並列処理特性に最適化された構造を持つ国際標準コーデックとして注目されている。 VC-6は、画像を1つのフラットなピクセルデータではなく、階層的な多解像度構造(エシェロン)で表現する。元画像を再帰的にダウンサンプリングし、最小の低解像度(ローフォーカス品質:LoQ)をエンコード。その後、各レベルで下位の解像度をアップサンプリングし、差分(残差)を計算して蓄積することで、効率的な圧縮を実現。この構造により、特定の解像度や領域(RoI)、色平面だけを独立して読み出し・デコードできる。これにより、AIモデルに必要なデータを「必要な分だけ」迅速に供給可能となる。 特にCUDA版の実装では、GPUのSIMT(単一命令複数スレッド)モデルと完全に整合。VC-6の並列性をGPUのスレッドブロックに直接マッピングすることで、CPUやOpenCL版に比べて大幅な性能向上を実現。DIV2Kデータセットでのベンチマークでは、CUDA版がCPUやOpenCL版を大きく上回る速度を発揮。特に部分的な解像度や領域のデコードでは、従来のフルファイル読み込みに比べてI/O量が最大72%削減され、ネットワークやメモリ帯域の負荷が大幅に軽減される。 さらに、CUDA版ではデコード結果をGPUメモリ上に直接出力可能。__cuda_array_interface__を介してPyTorchやCuPyなどのAIフレームワークと直接連携でき、CPUコピーの不要な高速処理が可能。また、非同期デコーダーと組み合わせることで、複数画像の並列処理も効率的に行える。 NVIDIA Nsightによるプロファイリングでは、アップサンプリングの連鎖処理やグリッドサイズの小ささがGPU利用率の低下を引き起こす課題が明らかになったが、CUDAグラフやカーネルフュージョンといった最適化により、さらなる性能向上が期待される。現在はα版ながら、ネイティブバッチ処理やカスタムカーネル最適化の開発が進行中。 このVC-6 CUDA実装は、AIデータパイプラインにおける「データ供給の遅延」を解消する実用的なツール。特にマルチモーダルAIや大規模学習システムを構築する開発者にとって、データの効率的供給とGPUの最大限活用を実現する鍵となる。

Related Links