論文の概要: ACPO: AI-Enabled Compiler-Driven Program Optimization
- arxiv url: http://arxiv.org/abs/2312.09982v1
- Date: Fri, 15 Dec 2023 17:49:24 GMT
- ステータス: 処理完了
- システム内更新日: 2023-12-18 14:43:06.297280
- Title: ACPO: AI-Enabled Compiler-Driven Program Optimization
- Title(参考訳): acpo:aiによるコンパイラ駆動プログラム最適化
- Authors: Amir H. Ashouri, Muhammad Asif Manzoor, Duc Minh Vu, Raymond Zhang,
Ziwen Wang, Angel Zhang, Bryan Chan, Tomasz S. Czajkowski and Yaoqing Gao
- Abstract要約: 本稿では, ACPO: textbfunderlineAI-Enabled textbfunderlineCompiler-driven textbfunderlineProgram textbfunderlineOptimizationについて述べる。
- 参考スコア(独自算出の注目度): 1.879008610342411
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: The key to performance optimization of a program is to decide correctly when
a certain transformation should be applied by a compiler. Traditionally, such
profitability decisions are made by hand-coded algorithms tuned for a very
small number of benchmarks, usually requiring a great deal of effort to be
retuned when the benchmark suite changes. 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. Even so,
seamless integration of ML into the compiler would require constant rebuilding
of the compiler when models are updated.
This paper presents ACPO: \textbf{\underline{A}}I-Enabled
\textbf{\underline{C}}ompiler-driven \textbf{\underline{P}}rogram
\textbf{\underline{O}}ptimization; a novel framework to provide 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 and describe how ACPO can be leveraged to optimize other
passes. Experimental results reveal that ACPO model for Loop Unroll is able to
gain on average 4\% and 3\%, 5.4\%, 0.2\% compared to LLVM's O3 optimization
when deployed on Polybench, Coral-2, CoreMark, and Graph-500, respectively.
Furthermore, by adding the Inliner model as well, ACPO is able to provide up to
4.5\% and 2.4\% on Polybench and Cbench compared with LLVM's O3 optimization,
respectively.
- Abstract(参考訳): プログラムのパフォーマンス最適化の鍵は、ある変換がコンパイラによって適用されるタイミングを正確に決定することだ。
伝統的に、このような収益性の決定は、非常に少数のベンチマークのために調整された手書きのアルゴリズムによって行われ、通常、ベンチマークスイートが変更される際には、非常に多くの作業が必要になる。
これは、チューニングプロセスを高速化するために機械学習モデルを適用する理想的な機会である。この実現は90年代後半からあるが、MLの最近の進歩によって、エンドツーエンドフレームワークとしてのコンパイラへのMLの実践的な適用が可能になった。
それでも、MLをコンパイラにシームレスに統合するには、モデルが更新されたとき、コンパイラを継続的に再構築する必要がある。
本稿では、ACPO: \textbf{\underline{A}}I-Enabled \textbf{\underline{C}}ompiler-driven \textbf{\underline{P}}rogram \textbf{\underline{O}}ptimization; LLVMをシンプルで包括的なツールで提供し、異なる最適化パスにMLモデルを使うことの恩恵を受ける新しいフレームワークについて述べる。
まず、ACPOの高レベルなビュー、クラス階層、機能を示し、次に、MLでLoop UnrollとFunctionを呼び出し、ACPOのいくつかのユースケースを示し、ACPOが他のパスを最適化するためにどのように活用できるかを説明します。
実験の結果,Polybench,Coral-2,CoreMark,Graph-500にデプロイした場合のLLVMのO3最適化と比較して,Loop UnrollのACPOモデルは平均4\%,3\%,5.4\%,0.2\%が得られることがわかった。
さらに、Inlinerモデルを追加することで、ACPOはLLVMのO3最適化と比較して、PolybenchとCbenchで最大4.5\%と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)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。