MEニュース 4月7日(UTC+8)、PyTorch公式チームは最近、CuteDSLを4番目の行列乗算自動チューニングバックエンドとしてTorchInductorに統合したことを発表しました。 このバックエンドの選択基準は三つあります:過度なメンテナンス負担を増やさないこと、コンパイルやベンチマークテスト時間を遅くしないこと、そしてターゲットワークロードでより良いパフォーマンスを提供すること。 CuteDSLはNVIDIAによって積極的に開発されており、最適化されたカーネルテンプレートを提供します。 そのコンパイル時間は既存のバックエンドとほぼ同じであり、完全な \nvcc\ コンパイルを必要とするCUTLASS C++パスよりも顕著に高速です。 このバックエンドはCUTLASS C++と同じ抽象化に基づいて構築され、Pythonで書かれており、コンパイルがより速く、メンテナンスも簡単です。 FP8 GEMMとエピローグ融合において強力なパフォーマンスを示しています。 チームはTransformerモデルにおいて主要な計算負荷を占めるGEMM(行列乗算)の最適化に注力しています。 CuteDSLは手作業で最適化されたテンプレートを提供し、底層コードの生成を行います。 これにより、カーネルのゼロからの作成の複雑さを避け、スレッドやメモリ階層構造を完全に公開し、アーキテクチャ固有の機能をサポートします。(出典:InFoQ)
PyTorch TorchInductor に CuteDSL を統合し、行列乗算の自動最適化バックエンドとして使用
MEニュース 4月7日(UTC+8)、PyTorch公式チームは最近、CuteDSLを4番目の行列乗算自動チューニングバックエンドとしてTorchInductorに統合したことを発表しました。
このバックエンドの選択基準は三つあります:過度なメンテナンス負担を増やさないこと、コンパイルやベンチマークテスト時間を遅くしないこと、そしてターゲットワークロードでより良いパフォーマンスを提供すること。
CuteDSLはNVIDIAによって積極的に開発されており、最適化されたカーネルテンプレートを提供します。
そのコンパイル時間は既存のバックエンドとほぼ同じであり、完全な \nvcc\ コンパイルを必要とするCUTLASS C++パスよりも顕著に高速です。
このバックエンドはCUTLASS C++と同じ抽象化に基づいて構築され、Pythonで書かれており、コンパイルがより速く、メンテナンスも簡単です。
FP8 GEMMとエピローグ融合において強力なパフォーマンスを示しています。
チームはTransformerモデルにおいて主要な計算負荷を占めるGEMM(行列乗算)の最適化に注力しています。
CuteDSLは手作業で最適化されたテンプレートを提供し、底層コードの生成を行います。
これにより、カーネルのゼロからの作成の複雑さを避け、スレッドやメモリ階層構造を完全に公開し、アーキテクチャ固有の機能をサポートします。(出典:InFoQ)