論文の概要: Im2win: An Efficient Convolution Paradigm on GPU
- arxiv url: http://arxiv.org/abs/2306.14316v1
- Date: Sun, 25 Jun 2023 19:09:56 GMT
- ステータス: 処理完了
- システム内更新日: 2023-06-27 15:33:25.787775
- Title: Im2win: An Efficient Convolution Paradigm on GPU
- Title(参考訳): Im2win: GPUの効率的な畳み込みパラダイム
- Authors: Shuai Lu and Jun Chu and Luanzheng Guo and Xu T. Liu
- Abstract要約: 本稿では、メモリフットプリントの削減だけでなく、連続的なメモリアクセスを提供するim2winと呼ばれる畳み込みベースの畳み込みに関するパラダイムを提案する。
直接畳み込みと、PyTorchのGEMMベースの畳み込みと、DNNベースの畳み込み実装の6ドルを、12の最先端ベンチマークで比較する。
- 参考スコア(独自算出の注目度): 1.9162301033784574
- License: http://creativecommons.org/licenses/by-nc-nd/4.0/
- Abstract: Convolution is the most time-consuming operation in deep neural network
operations, so its performance is critical to the overall performance of the
neural network. The commonly used methods for convolution on GPU include the
general matrix multiplication (GEMM)-based convolution and the direct
convolution. GEMM-based convolution relies on the im2col algorithm, which
results in a large memory footprint and reduced performance. Direct convolution
does not have the large memory footprint problem, but the performance is not on
par with GEMM-based approach because of the discontinuous memory access. This
paper proposes a window-order-based convolution paradigm on GPU, called im2win,
which not only reduces memory footprint but also offers continuous memory
accesses, resulting in improved performance. Furthermore, we apply a range of
optimization techniques on the convolution CUDA kernel, including shared
memory, tiling, micro-kernel, double buffer, and prefetching. We compare our
implementation with the direct convolution, and PyTorch's GEMM-based
convolution with cuBLAS and six cuDNN-based convolution implementations, with
twelve state-of-the-art DNN benchmarks. The experimental results show that our
implementation 1) uses less memory footprint by 23.1% and achieves 3.5$\times$
TFLOPS compared with cuBLAS, 2) uses less memory footprint by 32.8% and
achieves up to 1.8$\times$ TFLOPS compared with the best performant
convolutions in cuDNN, and 3) achieves up to 155$\times$ TFLOPS compared with
the direct convolution. We further perform an ablation study on the applied
optimization techniques and find that the micro-kernel has the greatest
positive impact on performance.
- Abstract(参考訳): 畳み込みはディープニューラルネットワーク操作において最も時間を要する操作であるため、その性能はニューラルネットワーク全体のパフォーマンスに不可欠である。
gpu上の畳み込みの一般的な方法は、general matrix multiplication (gemm)ベースの畳み込みとdirect convolutionである。
GEMMベースの畳み込みはim2colアルゴリズムに依存しており、結果としてメモリフットプリントが大きくなり、性能が低下する。
直接畳み込みには大きなメモリフットプリントの問題はないが、不連続なメモリアクセスのため、GEMMベースのアプローチと性能は同等ではない。
本稿では,メモリフットプリントの削減だけでなく,連続的なメモリアクセスも実現し,性能の向上を実現するため,GPU上でのウィンドウオーダーベースの畳み込みパラダイムであるim2winを提案する。
さらに,共有メモリ,タイリング,マイクロカーネル,ダブルバッファ,プリフェッチなど,コンボリューションCUDAカーネルに様々な最適化手法を適用する。
PyTorchのGEMMベースのコンボリューションとcuBLASと6つのcuDNNベースのコンボリューション実装を、12の最先端DNNベンチマークで比較した。
実験結果は 我々の実施が
1) メモリフットプリントを23.1%削減し、cuBLASと比較して3.5$\times$ TFLOPSを達成した。
2) メモリフットプリントを32.8%削減し、cuDNNの最高のパフォーマンスの畳み込みに比べて最大1.8$\times$ TFLOPSを達成する。
3) 直接畳み込みに比べて最大155$\times$ TFLOPSを達成する。
さらに, 応用最適化手法に関するアブレーション研究を行い, マイクロカーネルが性能に最も有意な影響を与えることを発見した。
関連論文リスト
- Breaking the Memory Barrier: Near Infinite Batch Size Scaling for Contrastive Loss [59.835032408496545]
本稿では, コントラスト損失計算を任意の小ブロックに分割するタイルベースの戦略を提案する。
分散システムの階層構造を活用するためのマルチレベルタイリング戦略も導入する。
SOTAメモリ効率のソリューションと比較すると、同等の速度を維持しながら、メモリの2桁の削減を実現している。
論文 参考訳(メタデータ) (2024-10-22T17:59:30Z) - High Performance Im2win and Direct Convolutions using Three Tensor Layouts on SIMD Architectures [26.146937503081876]
本稿では, NHWC, CHWN, CHWN8の3つの新しいデータレイアウトを提案する。
我々は、SIMDマシン上の最適化したim2win畳み込みとPyTorchのim2colベースの畳み込みを比較した。
最適化した im2win と direct の畳み込みは, 機械の最大性能の95% と 94% をそれぞれ達成した。
論文 参考訳(メタデータ) (2024-08-01T04:37:03Z) - vTensor: Flexible Virtual Tensor Management for Efficient LLM Serving [53.972175896814505]
大規模言語モデル(LLM)は様々なドメインで広く使われ、数百万の日次要求を処理する。
大規模言語モデル(LLM)は様々なドメインで広く使われ、数百万の日次要求を処理する。
論文 参考訳(メタデータ) (2024-07-22T14:37:58Z) - ConvBench: A Comprehensive Benchmark for 2D Convolution Primitive Evaluation [0.34952465649465553]
本稿では,畳み込みアルゴリズムの評価と比較のためのプリミティブレベルのベンチマークであるConvBenchを提案する。
1097の現実世界のディープラーニングモデルから派生した9243の畳み込み操作を評価する。
実験の結果、93.6%の畳み込みでIm2col-GEMMよりも速い結果が得られた。
論文 参考訳(メタデータ) (2024-07-15T13:58:24Z) - Im2win: Memory Efficient Convolution On SIMD Architectures [2.153650601445911]
我々は、im2winと呼ばれる新しいメモリ効率のよいデータ変換アルゴリズムを提案する。
その結果,PyTorchの畳み込み実装と比較して,メモリオーバーヘッドを平均41.6%削減できることがわかった。
論文 参考訳(メタデータ) (2023-06-25T19:21:10Z) - Distributed Out-of-Memory NMF on CPU/GPU Architectures [1.0051474951635875]
本稿では,HPCシステムに対する非負行列分解(NMF)アルゴリズムのメモリ外実装を提案する。
ベンチマークの結果、CPUベースのNMFkよりもGPUを使用した新しい実装により、32Xから76倍のスピードアップが大幅に改善された。
論文 参考訳(メタデータ) (2022-02-19T03:49:21Z) - MCUNetV2: Memory-Efficient Patch-based Inference for Tiny Deep Learning [72.80896338009579]
メモリボトルネックは畳み込みニューラルネットワーク(CNN)の設計における不均衡なメモリ分布に起因する。
本稿では,ピークメモリを大幅に削減するパッチ・バイ・パッチ・推論スケジューリングを提案する。
ニューラルアーキテクチャサーチによるプロセスを自動化し、ニューラルアーキテクチャと推論スケジューリングを共同で最適化し、MCUNetV2に導いた。
論文 参考訳(メタデータ) (2021-10-28T17:58:45Z) - Content-Aware Convolutional Neural Networks [98.97634685964819]
畳み込みニューラルネットワーク(CNN)は、畳み込み層の強力な特徴学習能力によって大きな成功を収めている。
本研究では,スムーズなウィンドウを自動的に検出し,元の大規模カーネルを置き換えるために1x1畳み込みカーネルを適用するContent-aware Convolution (CAC)を提案する。
論文 参考訳(メタデータ) (2021-06-30T03:54:35Z) - Efficient and Generic 1D Dilated Convolution Layer for Deep Learning [52.899995651639436]
幅広いパラメータをカバーする汎用的な1D畳み込み層の効率的な実装を紹介します。
特にIntel AVX-512とAVX-512 BFloat16命令を含むアーキテクチャ向けに最適化されている。
本稿では,最適化された1次元畳み込み層の性能を,実際のゲノミクスデータセットを用いたエンドツーエンドニューラルネットワークトレーニングで実証する。
論文 参考訳(メタデータ) (2021-04-16T09:54:30Z) - XSepConv: Extremely Separated Convolution [60.90871656244126]
極めて分離された畳み込みブロック(XSepConv)を提案する。
空間的に分離可能な畳み込みを奥行きの畳み込みに融合させ、大きなカーネルの計算コストとパラメータサイズの両方を削減する。
XSepConvは、大規模なカーネルサイズを持つバニラ奥行きの畳み込みの効率的な代替として設計されている。
論文 参考訳(メタデータ) (2020-02-27T11:46:17Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。