論文の概要: ACPO: AI-Enabled Compiler Framework
- arxiv url: http://arxiv.org/abs/2312.09982v4
- Date: Tue, 14 Jan 2025 01:42:46 GMT
- ステータス: 翻訳完了
- システム内更新日: 2025-01-15 13:26:09.704168
- Title: ACPO: AI-Enabled Compiler Framework
- Title(参考訳): ACPO: AI対応のコンパイラフレームワーク
- Authors: Amir H. Ashouri, Muhammad Asif Manzoor, Duc Minh Vu, Raymond Zhang, Colin Toft, Ziwen Wang, Angel Zhang, Bryan Chan, Tomasz S. Czajkowski, Yaoqing Gao,
- Abstract要約: 本稿では,AI-Enabled Compiler FrameworkのACPOについて述べる。
LLVMには、さまざまな最適化パスにMLモデルを使用するメリットを享受する、シンプルで包括的なツールが提供されている。
LLVMのO3と比較すると,ACPOはPolybenchで4.5%,Cbenchで2.4%の高速化を実現している。
- 参考スコア(独自算出の注目度): 1.752593459729982
- License:
- Abstract: The key to performance optimization of a program is to decide correctly when a certain transformation should be applied by a compiler. This is an ideal opportunity to apply machine-learning models to speed up the tuning process; while this realization has been around since the late 90s, only recent advancements in ML enabled a practical application of ML to compilers as an end-to-end framework. This paper presents ACPO: An AI-Enabled Compiler Framework, a novel framework that provides LLVM with simple and comprehensive tools to benefit from employing ML models for different optimization passes. We first showcase the high-level view, class hierarchy, and functionalities of ACPO and subsequently, demonstrate \taco{a couple of use cases of ACPO by ML-enabling the Loop Unroll and Function Inlining passes used in LLVM's O3. and finally, describe how ACPO can be leveraged to optimize other passes. Experimental results reveal that the ACPO model for Loop Unroll can gain on average 4%, 3%, 5.4%, and 0.2% compared to LLVM's vanilla O3 optimization when deployed on Polybench, Coral-2, CoreMark, and Graph-500, respectively. Furthermore, by including both Function Inlining and Loop Unroll models, ACPO can provide a combined speedup of 4.5% on Polybench and 2.4% on Cbench when compared with LLVM's O3, respectively.
- Abstract(参考訳): プログラムのパフォーマンス最適化の鍵は、ある変換がコンパイラによっていつ適用されるべきかを正確に決定することである。
これは、チューニングプロセスを高速化するために機械学習モデルを適用する理想的な機会である。この実現は90年代後半からあるが、MLの最近の進歩によって、エンドツーエンドフレームワークとしてのコンパイラへのMLの実践的な適用が可能になった。
A AI-Enabled Compiler Framework(AI-Enabled Compiler Framework)は、LLVMにさまざまな最適化パスにMLモデルを使用することの恩恵を受けるための、シンプルで包括的なツールを提供する新しいフレームワークである。
LLVMのO3で使用されるLoop UnrollとFunction InliningパスをMLで実行することで、ACPOの高レベルなビュー、クラス階層、機能を示し、その後、ACPOのいくつかのユースケースを示す。
そして最後に、ACPOがどのように他のパスを最適化できるかを説明します。
実験の結果、Loop UnrollのACPOモデルは、Polybench、Coral-2、CoreMark、Graph-500にデプロイした場合のLLVMのバニラO3最適化に比べて平均4%、3%、5.4%、0.2%で向上することがわかった。
さらに、Function InliningモデルとLoop Unrollモデルの両方を含めることで、ACPOはLLVMのO3と比較して、Polybenchで4.5%、Cbenchで2.4%のスピードアップを提供することができる。
関連論文リスト
- LLM-based Optimization of Compound AI Systems: A Survey [64.39860384538338]
複合AIシステムでは、LLMコール、レトリバー、コードインタプリタ、ツールなどのコンポーネントが相互接続される。
近年の進歩により, LLM を用いたパラメータのエンドツーエンド最適化が可能となった。
本稿では,複合AIシステムのLCMに基づく最適化の原理と動向について述べる。
論文 参考訳(メタデータ) (2024-10-21T18:06:25Z) - A Reinforcement Learning Environment for Automatic Code Optimization in the MLIR Compiler [0.10923877073891444]
本稿では,MLIRコンパイラ研究の促進を目的とした,MLIRコンパイラの最初のRL環境について紹介する。
また、より単純なアクション部分空間の積として作用空間の新たな定式化を提案し、より効率的かつ効率的な最適化を可能にした。
論文 参考訳(メタデータ) (2024-09-17T10:49:45Z) - A Convex-optimization-based Layer-wise Post-training Pruner for Large Language Models [24.185245582500876]
本稿では,凸最適化モデルとアルゴリズムに基づく最初のポストトレーニングプルーナであるFISTAPrunerを紹介する。
FISTAPrunerは層内累積誤差補正機構を搭載し、並列プルーニングをサポートする。
OPT, LLaMA, LLaMA-2, LLaMA-3 などのモデルにおける FISTAPruner の評価を行った。
論文 参考訳(メタデータ) (2024-08-07T12:33:46Z) - Bypass Back-propagation: Optimization-based Structural Pruning for Large Language Models via Policy Gradient [57.9629676017527]
大規模言語モデルを用いた最適化に基づく構造解析手法を提案する。
我々は,プルーニングモデルの損失を最適化することにより,確率空間におけるプルーニングマスクを直接学習する。
A100 GPUで13Bモデルに対して約35GBのメモリで2.7時間動作させる。
論文 参考訳(メタデータ) (2024-06-15T09:31:03Z) - REBEL: Reinforcement Learning via Regressing Relative Rewards [59.68420022466047]
生成モデルの時代における最小限のRLアルゴリズムであるREBELを提案する。
理論的には、自然ポリシーグラディエントのような基本的なRLアルゴリズムはREBELの変種と見なすことができる。
我々はREBELが言語モデリングと画像生成に一貫したアプローチを提供し、PPOやDPOとより強くあるいは類似した性能を実現することを発見した。
論文 参考訳(メタデータ) (2024-04-25T17:20:45Z) - AffineQuant: Affine Transformation Quantization for Large Language Models [58.45460102764]
ポストトレーニング量子化(PTQ)は、その圧縮効率とトレーニングの文脈における費用対効果により、かなりの関心を集めている。
既存の大規模言語モデル(LLM)のPTQ手法は、事前量子化重みと後量子化重みの間の変換のスケーリングに最適化範囲を制限している。
本稿では,PTQ(AffineQuant)における等価アフィン変換を用いた直接最適化を提唱する。
論文 参考訳(メタデータ) (2024-03-19T08:40:21Z) - Extreme Compression of Large Language Models via Additive Quantization [59.3122859349777]
我々のアルゴリズムは、AQLMと呼ばれ、情報検索のための古典的な加算量子化(AQ)アプローチを一般化する。
トークン生成のためのAQLMの高速GPUおよびCPU実装を提供しており、最適化されたFP16実装を高速にマッチングまたは性能良くすることができる。
論文 参考訳(メタデータ) (2024-01-11T18:54:44Z) - MLGOPerf: An ML Guided Inliner to Optimize Performance [7.314201117946244]
本稿では,LLVMのML-Inlinerを用いて,パフォーマンスを最適化する初のエンドツーエンドフレームワークを提案する。
セカンダリMLモデルを使用して、リターゲット強化学習エージェントのトレーニングに使用する報酬を生成する。
分析中の関数のインライン後のスピードアップを予測し、プライマリモデルのための高速なトレーニングフレームワークを可能にする。
論文 参考訳(メタデータ) (2022-07-18T05:47:29Z) - A Reinforcement Learning Environment for Polyhedral Optimizations [68.8204255655161]
マルコフ決定過程(MDP)として多面体モデルにおける法的変換空間の形状に依存しない定式化を提案する。
変換を使う代わりに、定式化は可能なスケジュールの抽象空間に基づいている。
我々の総合的MDP定式化は、強化学習を用いて幅広いループで最適化ポリシーを学習することを可能にする。
論文 参考訳(メタデータ) (2021-04-28T12:41:52Z) - MLGO: a Machine Learning Guided Compiler Optimizations Framework [0.0]
この作業は、実際の設定で複雑なコンパイラパスで機械学習を初めて完全に統合した作業です。
インライン・フォー・サイズモデルのトレーニングには2つの異なるMLアルゴリズムを使用し、最大7%の削減を実現している。
同じモデルは、実世界のターゲットの多様性、そして数ヶ月のアクティブな開発の後、同じターゲットセットにうまく一般化します。
論文 参考訳(メタデータ) (2021-01-13T00:02:49Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。