論文の概要: Towards a high-performance AI compiler with upstream MLIR
- arxiv url: http://arxiv.org/abs/2404.15204v1
- Date: Mon, 15 Apr 2024 10:35:50 GMT
- ステータス: 処理完了
- システム内更新日: 2024-04-28 11:06:36.870796
- Title: Towards a high-performance AI compiler with upstream MLIR
- Title(参考訳): 上流MLIRを用いた高性能AIコンパイラの実現に向けて
- Authors: Renato Golin, Lorenzo Chelini, Adam Siemieniuk, Kavitha Madhu, Niranjan Hasabnis, Hans Pabst, Evangelos Georganas, Alexander Heinecke,
- Abstract要約: 本研究では,オープンソースのコンパイラパスを用いたコンパイルフローを提案し,忍者パフォーマンスを実現するためのフレームワークを構築する。
この流れを,Packing と PyTorch の Linalg-on-Tensor における入射IR を用いた概念実証 MLIR プロジェクトで実証する。
- 参考スコア(独自算出の注目度): 34.89141656581549
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: This work proposes a compilation flow using open-source compiler passes to build a framework to achieve ninja performance from a generic linear algebra high-level abstraction. We demonstrate this flow with a proof-of-concept MLIR project that uses input IR in Linalg-on-Tensor from TensorFlow and PyTorch, performs cache-level optimizations and lowering to micro-kernels for efficient vectorization, achieving over 90% of the performance of ninja-written equivalent programs. The contributions of this work include: (1) Packing primitives on the tensor dialect and passes for cache-aware distribution of tensors (single and multi-core) and type-aware instructions (VNNI, BFDOT, BFMMLA), including propagation of shapes across the entire function; (2) A linear algebra pipeline, including tile, fuse and bufferization strategies to get model-level IR into hardware friendly tile calls; (3) A mechanism for micro-kernel lowering to an open source library that supports various CPUs.
- Abstract(参考訳): 本研究では,オープンソースのコンパイラパスを用いたコンパイルフローを提案し,汎用線形代数の高レベル抽象から忍者性能を実現するためのフレームワークを構築する。
我々は、TensorFlowとPyTorchのLinalg-on-Tensorの入力IRを使用し、キャッシュレベルの最適化を行い、効率的なベクトル化のためにマイクロカーネルにダウンし、忍者相当プログラムのパフォーマンスの90%以上を達成する概念実証MLIRプロジェクトでこの流れを実証する。
本研究の貢献は,(1)テンソル弁にプリミティブをパッケージし,テンソル(シングルコアとマルチコア)とタイプアウェア命令(VNNI, BFDOT, BFMMLA)のキャッシュ対応分布をパスすること,(2) タイル,ヒューズ,バッファライゼーションを含む線形代数パイプラインをハードウェアフレンドリーなタイルコールに組み込むこと,(3) 様々なCPUをサポートするオープンソースライブラリにマイクロカーネルをダウンさせる機構,などである。
関連論文リスト
- Tackling the Matrix Multiplication Micro-kernel Generation with Exo [0.5517652814152908]
新しいハードウェアごとに専用のマイクロカーネルを生成するためのステップバイステップの手順を提案する。
ハードウェアターゲットは、その命令の簡潔なライブラリベースの記述によって完全に指定されるため、生成したコードの移植性も向上する。
論文 参考訳(メタデータ) (2023-10-26T14:09:57Z) - INR-Arch: A Dataflow Architecture and Compiler for Arbitrary-Order
Gradient Computations in Implicit Neural Representation Processing [66.00729477511219]
計算グラフとして表される関数を考えると、従来のアーキテクチャはn階勾配を効率的に計算する上で困難に直面している。
InR-Archは,n階勾配の計算グラフをハードウェア最適化データフローアーキテクチャに変換するフレームワークである。
1.8-4.8x と 1.5-3.6x の高速化を CPU と GPU のベースラインと比較した結果を示す。
論文 参考訳(メタデータ) (2023-08-11T04:24:39Z) - Harnessing Deep Learning and HPC Kernels via High-Level Loop and Tensor Abstractions on CPU Architectures [67.47328776279204]
この研究は、効率的でポータブルなDeep LearningとHigh Performance Computingカーネルを開発するためのフレームワークを導入している。
1)プロセッシングプリミティブ(TPP)を用いた計算コアの表現と,2)高レベルな宣言的手法でTPPのまわりの論理ループの表現の2つのステップでカーネルの開発を分解する。
我々は、スタンドアロンカーネルと、さまざまなCPUプラットフォームにおける最先端実装よりも優れたエンドツーエンドワークロードを使用して、このアプローチの有効性を実証する。
論文 参考訳(メタデータ) (2023-04-25T05:04:44Z) - ParaGraph: Weighted Graph Representation for Performance Optimization of
HPC Kernels [1.304892050913381]
抽象構文木を拡張した並列アプリケーションのためのグラフベースの新しいプログラム表現を提案する。
提案した表現は,OpenMPコード領域のランタイムを予測するために,グラフニューラルネットワーク(GNN)をトレーニングすることで評価する。
その結果,本手法は実効性があり,実行時予測では 0.004 から 0.01 に RMSE を正規化していることがわかった。
論文 参考訳(メタデータ) (2023-04-07T05:52:59Z) - Tensor Slicing and Optimization for Multicore NPUs [2.670309629218727]
本稿では,Slicing Optimization (TSO) と呼ばれるマルチコアNPUに対するコンパイラ最適化パスを提案する。
TSOは、一連のCNNモデルの実行時間を最小化する最高のテンソルスライシングを特定する。
その結果、TSOは一連のCNNモデルの実行時間を最小化する最適なテンソルスライシングを識別できることがわかった。
論文 参考訳(メタデータ) (2023-04-06T12:03:03Z) - Benchmarking the Linear Algebra Awareness of TensorFlow and PyTorch [1.1470070927586016]
我々は、TFとPyTの線形代数最適化能力を調べるためのベンチマークを開発する。
本研究では、TFおよびPyTにおける線形代数計算に焦点を当てる。
論文 参考訳(メタデータ) (2022-02-20T18:51:00Z) - Enabling Retargetable Optimizing Compilers for Quantum Accelerators via
a Multi-Level Intermediate Representation [78.8942067357231]
我々は、最適化され、再ターゲット可能で、事前コンパイルが可能なマルチレベル量子古典中間表現(IR)を提案する。
ゲートベースのOpenQASM 3言語全体をサポートし、共通量子プログラミングパターンのカスタム拡張と構文の改善を提供します。
私たちの研究は、通常のPythonのアプローチよりも1000倍高速で、スタンドアロンの量子言語コンパイラよりも5~10倍高速なコンパイル時間を実現しています。
論文 参考訳(メタデータ) (2021-09-01T17:29:47Z) - Tensor Relational Algebra for Machine Learning System Design [7.764107702934616]
本稿では、リレーショナルテンソル代数(TRA)と呼ばれる別の実装抽象化を提案する。
TRA は、リレーショナル代数に基づく集合基底代数である。
我々の実証研究は、最適化されたTRAベースのバックエンドが、分散クラスタでMLを実行する際の選択肢を大幅に上回っていることを示している。
論文 参考訳(メタデータ) (2020-09-01T15:51:24Z) - Minimal Filtering Algorithms for Convolutional Neural Networks [82.24592140096622]
我々は,M=3,5,7,9,11の基本的なフィルタリング操作を実装するための完全並列ハードウェア指向アルゴリズムを開発した。
各ケースにおける提案アルゴリズムの完全な並列ハードウェア実装は、組込み乗算器の数を約30%削減する。
論文 参考訳(メタデータ) (2020-04-12T13:18:25Z) - PolyScientist: Automatic Loop Transformations Combined with Microkernels
for Optimization of Deep Learning Primitives [55.79741270235602]
深層学習カーネル開発のためのハイブリッドソリューションを開発する。
我々は、高度な多面体技術を用いて、パフォーマンスのために外部ループを自動的に調整する。
論文 参考訳(メタデータ) (2020-02-06T08:02:34Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。