要約
ディープラーニング(DL)ワークロードは、主にGPUなどのアクセラレータで実行されます。
最近のDL量子化技術では、入力データ型が混在している新しいマトリックス乗算演算子が必要であり、GPUの最適化をさらに複雑にしています。
Tritonのような以前の高レベルのコンパイラには、これらの演算子向けの微細に粒のデータパイプラインやハードウェアに優しいメモリレイアウトなどの重要な最適化を実装する表現力がありませんが、Hidet、Graphene、Cutlassなどの低レベルのプログラミングモデルには、重要なプログラミング努力が必要です。
表現力とエンジニアリングの取り組みのバランスをとるために、共有メモリを公開し、抽象化を登録して抽象化を登録して、これらの演算子に微調整された最適化を可能にするタイルベースのプログラミング言語であるHexcuteを提案します。
さらに、HexCuteはタスクマッピングを活用してGPUプログラムをスケジュールし、プログラミングの取り組みを減らすために、新しいタイプ関税ベースのアルゴリズムでレイアウトとタスクマッピング合成を自動化します。
私たちの評価は、Hexcuteが幅広いDL演算子に一般化し、混合型演算子の既存のDLコンパイラで1.7-11.28 $ \ Times $速度を達成し、エンドツーエンド評価で最大2.91 $ \ Times $ speedupをもたらすことを示しています。
要約(オリジナル)
Deep learning (DL) workloads mainly run on accelerators like GPUs. Recent DL quantization techniques demand a new matrix multiplication operator with mixed input data types, further complicating GPU optimization. Prior high-level compilers like Triton lack the expressiveness to implement key optimizations like fine-grained data pipelines and hardware-friendly memory layouts for these operators, while low-level programming models, such as Hidet, Graphene, and CUTLASS, require significant programming efforts. To balance expressiveness with engineering effort, we propose Hexcute, a tile-based programming language that exposes shared memory and register abstractions to enable fine-grained optimization for these operators. Additionally, Hexcute leverages task mapping to schedule the GPU program, and to reduce programming efforts, it automates layout and task mapping synthesis with a novel type-inference-based algorithm. Our evaluation shows that Hexcute generalizes to a wide range of DL operators, achieves 1.7-11.28$\times$ speedup over existing DL compilers for mixed-type operators, and brings up to 2.91$\times$ speedup in the end-to-end evaluation.
arxiv情報
著者 | Xiao Zhang,Yaoyao Ding,Yang Hu,Gennady Pekhimenko |
発行日 | 2025-04-30 17:29:28+00:00 |
arxivサイト | arxiv_id(pdf) |
提供元, 利用サービス
arxiv.jp, Google