日本語版
最新ニュース
科学&テクノロジー

フーリエニューラルオペレーターはターボブーストを得ました:UCリバーサイドの研究者は、Pytorchを超えて最大150%のスピードアップを達成する完全に融合したFFT-GEMM-IFFTカーネルであるTurbofnoを紹介します。

フーリエニューラル演算子(FNO)は、部分微分方程式式ソリューション演算子を学習するための強力なツールですが、フーリエ層がFFT、フィルタリング、GEMM、ゼロパディング、およびIFFTを別々の段階として実行し、複数のカーネルの打ち上げと過剰なグローバルメモリトラフィックをもたらすアーキテクチャ対象の最適化がありません。 fft - > gemm-> ifft計算パターンは、GPUカーネルの融合とメモリレイアウトの最適化に関して不十分な注意を払っています。 Quantum Espresso、Octopus、CP2Kなどの現在の方法は、FFTおよびBLASルーチンに個別の呼び出しを行います。ただし、3つの制限があります。追加のメモリコピー操作による部分周波数利用、Cufftのネイティブ周波数フィルタリング機能の欠如、および処理段階間の過剰なメモリトランザクションです。 FNOは、入力機能マップの前方FFTから始まり、スペクトルフィルタリングを適用し、逆FFTを介して出力を再構築するパイプラインを実装します。このプロセスには、周波数ドメインの切り捨てとゼロパッジングステップが必要です。これは、Pytorchのような現在のフレームワークが、ネイティブの入出力トリミングサポートにおけるCufftの制限により、個別のメモリコピーカーネルとして実行されます。 CufftやVKFFTなどの主要なFFTライブラリには、組み込みのデータ切り捨て機能がありません。従来の2D FFTは、空間寸法に沿って両方の1D-FFT段階を適用しますが、FNOはチャネル寸法にスペクトル重みを適用し、最初の1D FFTを空間軸に沿って2番目のFFTステージを非表示に留めながら、FFT段階を切り離す機会を示唆しています。 カリフォルニア大学、米国カリフォルニア州リバーサイド校の研究者は、FFT最適化を組み込んだ最初の完全に融合したFFT-GEMM-IFFT GPUカーネルであるTurbofnoを提案しました。このアプローチは、クローズドソースの最先端のCublasおよびCufftに匹敵する、または速いパフォーマンスを実現するFFTおよびGEMMカーネルをゼロから開発することから始まります。 FFTバリアントが導入され、FFTとGEMMのワークロードを効果的に融合させ、単一のスレッドブロックが隠されたディメンションを繰り返し、GEMMのKループに合わせます。さらに、FFT出力をGEMMに転送し、IFFTが共有メモリから直接GEMM結果を取得できるようにするときに、2つの共有メモリスウィズリングパターンが100%メモリバンクの使用率を達成するように設計されています。 TurbofNoは、FFTおよびCGEMMカーネルの最適化された実装を統合して、効果的な融合と組み込みのFFT最適化を可能にします。 Turbofnoのカーネル融合戦略は、FFT-GEMM融合、GEMM-IFFT Fusion、および完全なFFT-GEMM-IFFT Fusionの3つのレベルを進めます。各段階では、FFTワークフローをGEMMと整列させ、データレイアウトの不一致を解決し、共有メモリバンクの競合を排除します。重要な手法には、GEMMの入力形式に一致するFFT出力レイアウトの変更、競合のない共有メモリアクセスのためにスレッドスウィズリングを適用し、逆FFTをCGEMMのエピローグ段階として統合して、中間のグローバルメモリメモリを書き、メモリのローカリティを書き、強化することが含まれます。 Turbofnoは、1Dおよび2D FNO評価の両方で優れたパフォーマンスを示しています。 1D FNOテストでは、最適化されたFFT-CGEMM-IFFTワークフローは、Pytorchよりも最大100%のスピードアップを達成し、平均50%改善します。これらの利益は、FFT剪定から得られ、計算が25%〜67.5%減少します。完全に融合したFFT-CGEMM-IFFTカーネルは、Pytorchよりも最大150%のスピードアップを提供し、部分的な融合戦略よりもさらに10%〜20%の改善を提供します。同様に、2D FNOでは、最適化されたワークフローは、平均スピードアップが50%を超え、最大の改善が100%に達するPytorchを上回ります。 2D完全融合カーネルは、FFTワークロードレイアウトをCGEMMデータフローに合わせて追加のオーバーヘッドにもかかわらず、パフォーマンスの劣化なしにPytorchよりも50%-105%のスピードアップを達成します。 この論文では、研究者は、FFT、CGEMM、およびIFFTを統合する最初の完全に融合したGPUカーネルであるTurbofNoを導入しました。彼らは、過度のカーネルの発売やグローバルメモリトラフィックなど、従来のFNO実装における非効率性を克服するための一連のアーキテクチャ対象の最適化を開発しました。これらには、組み込みの周波数フィルタリングとゼロパディングを備えたカスタムFFTカーネル、Kループの動作を模倣するGEMM互換のFFTバリアント、および25%から100%の銀行の使用率を改善するメモリスウィズリング戦略を共有することが含まれます。 Turbofnoは最大150%のスピードアップを達成し、すべてのテストされた構成で平均67%のパフォーマンス増加を維持します。 これが次のとおりです 紙。 また、私たちをフォローすることを忘れないでください ツイッター そして私たちに参加してください 電報チャンネル そして LinkedIn grOUP。私たちに参加することを忘れないでください 90k+ ml…

フーリエニューラルオペレーターはターボブーストを得ました:UCリバーサイドの研究者は、Pytorchを超えて最大150%のスピードアップを達成する完全に融合したFFT-GEMM-IFFTカーネルであるTurbofnoを紹介します。

フーリエニューラル演算子(FNO)は、部分微分方程式式ソリューション演算子を学習するための強力なツールですが、フーリエ層がFFT、フィルタリング、GEMM、ゼロパディング、およびIFFTを別々の段階として実行し、複数のカーネルの打ち上げと過剰なグローバルメモリトラフィックをもたらすアーキテクチャ対象の最適化がありません。 fft – > gemm-> ifft計算パターンは、GPUカーネルの融合とメモリレイアウトの最適化に関して不十分な注意を払っています。 Quantum Espresso、Octopus、CP2Kなどの現在の方法は、FFTおよびBLASルーチンに個別の呼び出しを行います。ただし、3つの制限があります。追加のメモリコピー操作による部分周波数利用、Cufftのネイティブ周波数フィルタリング機能の欠如、および処理段階間の過剰なメモリトランザクションです。

FNOは、入力機能マップの前方FFTから始まり、スペクトルフィルタリングを適用し、逆FFTを介して出力を再構築するパイプラインを実装します。このプロセスには、周波数ドメインの切り捨てとゼロパッジングステップが必要です。これは、Pytorchのような現在のフレームワークが、ネイティブの入出力トリミングサポートにおけるCufftの制限により、個別のメモリコピーカーネルとして実行されます。 CufftやVKFFTなどの主要なFFTライブラリには、組み込みのデータ切り捨て機能がありません。従来の2D FFTは、空間寸法に沿って両方の1D-FFT段階を適用しますが、FNOはチャネル寸法にスペクトル重みを適用し、最初の1D FFTを空間軸に沿って2番目のFFTステージを非表示に留めながら、FFT段階を切り離す機会を示唆しています。

カリフォルニア大学、米国カリフォルニア州リバーサイド校の研究者は、FFT最適化を組み込んだ最初の完全に融合したFFT-GEMM-IFFT GPUカーネルであるTurbofnoを提案しました。このアプローチは、クローズドソースの最先端のCublasおよびCufftに匹敵する、または速いパフォーマンスを実現するFFTおよびGEMMカーネルをゼロから開発することから始まります。 FFTバリアントが導入され、FFTとGEMMのワークロードを効果的に融合させ、単一のスレッドブロックが隠されたディメンションを繰り返し、GEMMのKループに合わせます。さらに、FFT出力をGEMMに転送し、IFFTが共有メモリから直接GEMM結果を取得できるようにするときに、2つの共有メモリスウィズリングパターンが100%メモリバンクの使用率を達成するように設計されています。

TurbofNoは、FFTおよびCGEMMカーネルの最適化された実装を統合して、効果的な融合と組み込みのFFT最適化を可能にします。 Turbofnoのカーネル融合戦略は、FFT-GEMM融合、GEMM-IFFT Fusion、および完全なFFT-GEMM-IFFT Fusionの3つのレベルを進めます。各段階では、FFTワークフローをGEMMと整列させ、データレイアウトの不一致を解決し、共有メモリバンクの競合を排除します。重要な手法には、GEMMの入力形式に一致するFFT出力レイアウトの変更、競合のない共有メモリアクセスのためにスレッドスウィズリングを適用し、逆FFTをCGEMMのエピローグ段階として統合して、中間のグローバルメモリメモリを書き、メモリのローカリティを書き、強化することが含まれます。

Turbofnoは、1Dおよび2D FNO評価の両方で優れたパフォーマンスを示しています。 1D FNOテストでは、最適化されたFFT-CGEMM-IFFTワークフローは、Pytorchよりも最大100%のスピードアップを達成し、平均50%改善します。これらの利益は、FFT剪定から得られ、計算が25%〜67.5%減少します。完全に融合したFFT-CGEMM-IFFTカーネルは、Pytorchよりも最大150%のスピードアップを提供し、部分的な融合戦略よりもさらに10%〜20%の改善を提供します。同様に、2D FNOでは、最適化されたワークフローは、平均スピードアップが50%を超え、最大の改善が100%に達するPytorchを上回ります。 2D完全融合カーネルは、FFTワークロードレイアウトをCGEMMデータフローに合わせて追加のオーバーヘッドにもかかわらず、パフォーマンスの劣化なしにPytorchよりも50%-105%のスピードアップを達成します。

この論文では、研究者は、FFT、CGEMM、およびIFFTを統合する最初の完全に融合したGPUカーネルであるTurbofNoを導入しました。彼らは、過度のカーネルの発売やグローバルメモリトラフィックなど、従来のFNO実装における非効率性を克服するための一連のアーキテクチャ対象の最適化を開発しました。これらには、組み込みの周波数フィルタリングとゼロパディングを備えたカスタムFFTカーネル、Kループの動作を模倣するGEMM互換のFFTバリアント、および25%から100%の銀行の使用率を改善するメモリスウィズリング戦略を共有することが含まれます。 Turbofnoは最大150%のスピードアップを達成し、すべてのテストされた構成で平均67%のパフォーマンス増加を維持します。

これが次のとおりです また、私たちをフォローすることを忘れないでください ツイッター そして私たちに参加してください 電報チャンネル そして LinkedIn grOUP。私たちに参加することを忘れないでください 90k+ ml subreddit

🔥 [Register Now] エージェントAIに関するミニコンバーチャル会議:無料登録 +出席証明書 + 4時間短いイベント(5月21日、午前9時から午後1時まで) +ハンドオンワークショップ

Sajjad Ansariは、IIT Kharagpurの最終学年です。テクノロジー愛好家として、彼はAIテクノロジーの影響とその現実世界の意味を理解することに焦点を当てて、AIの実際的なアプリケーションを掘り下げています。彼は、複雑なAIの概念を明確でアクセスしやすい方法で明確にすることを目指しています。


#フーリエニューラルオペレーターはターボブーストを得ましたUCリバーサイドの研究者はPytorchを超えて最大150のスピードアップを達成する完全に融合したFFTGEMMIFFTカーネルであるTurbofnoを紹介します

執筆者について: nipponese

Nipponese News編集部は、国内外のニュースを日本語で分かりやすくお届けします。