論文の概要: ACPO: AI-Enabled Compiler-Driven Program Optimization
- arxiv url: http://arxiv.org/abs/2312.09982v2
- Date: Mon, 11 Mar 2024 19:24:41 GMT
- ステータス: 処理完了
- システム内更新日: 2024-03-14 01:03:41.075328
- 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は、さまざまな最適化パスにMLモデルを使用することの恩恵を受けるために、LLVMにシンプルで包括的なツールを提供するフレームワークである。
LLVM の O3 最適化と比較して,Loop Unroll の ACPO モデルでは,Polybench にデプロイすると平均 4% の値が得られることを示す。
- 参考スコア(独自算出の注目度): 1.879008610342411
- License: http://creativecommons.org/licenses/by-nc-nd/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. 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: \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 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\% compared to LLVM's O3 optimization when deployed on Polybench.
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の実践的な適用が可能になった。
本稿では、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が他のパスをどのように活用して最適化できるかを説明する。
実験結果から,Loop UnrollのACPOモデルでは,Polybenchにデプロイした場合のLLVMのO3最適化に比べて平均4倍の精度が得られることがわかった。
さらに、Inlinerモデルを追加することで、ACPOはLLVMのO3最適化と比較して、PolybenchとCbenchで最大4.5\%と2.4\%を提供することができる。
関連論文リスト
- Unleashing the Potential of Large Language Models as Prompt Optimizers:
An Analogical Analysis with Gradient-based Model Optimizers [115.2038169433773]
本稿では,大規模言語モデル(LLM)に基づくプロンプトの設計について検討する。
モデルパラメータ学習における2つの重要な要素を同定する。
特に、勾配に基づく最適化から理論的な枠組みや学習手法を借用し、改良された戦略を設計する。
論文 参考訳(メタデータ) (2024-02-27T15:05:32Z) - LangProp: A code optimization framework using Language Models applied to
driving [10.510422505851194]
LangPropは、大規模言語モデル(LLM)によって生成されたコードを、教師付き/強化学習環境で反復的に最適化するフレームワークである。
我々は、LangPropが、メトリックおよびデータ駆動方式で検証および改善可能な、解釈可能かつ透明な駆動ポリシーを生成することができることを示す。
論文 参考訳(メタデータ) (2024-01-18T18:52:06Z) - CoLLiE: Collaborative Training of Large Language Models in an Efficient
Way [59.09824823710863]
CoLLiEは、大規模な言語モデルの協調トレーニングを容易にする効率的なライブラリである。
モジュール設計と包括的な機能により、CoLLiEは効率性、使いやすさ、カスタマイズのバランスのとれたブレンドを提供する。
論文 参考訳(メタデータ) (2023-12-01T08:02:16Z) - Maximize to Explore: One Objective Function Fusing Estimation, Planning,
and Exploration [87.53543137162488]
我々はtextttMEX というオンライン強化学習(オンラインRL)フレームワークを提案する。
textttMEXは、自動的に探索エクスプロイトのバランスをとりながら、見積もりと計画コンポーネントを統合する。
様々な MuJoCo 環境では,ベースラインを安定的なマージンで上回り,十分な報酬を得られる。
論文 参考訳(メタデータ) (2023-05-29T17:25:26Z) - MLGOPerf: An ML Guided Inliner to Optimize Performance [7.314201117946244]
本稿では,LLVMのML-Inlinerを用いて,パフォーマンスを最適化する初のエンドツーエンドフレームワークを提案する。
セカンダリMLモデルを使用して、リターゲット強化学習エージェントのトレーニングに使用する報酬を生成する。
分析中の関数のインライン後のスピードアップを予測し、プライマリモデルのための高速なトレーニングフレームワークを可能にする。
論文 参考訳(メタデータ) (2022-07-18T05:47:29Z) - Learning to Superoptimize Real-world Programs [79.4140991035247]
本稿では,ニューラルシークエンス・ツー・シーケンス・モデルを用いて,実世界のプログラムを最適化するフレームワークを提案する。
我々は、x86-64アセンブリでオープンソースプロジェクトから抽出された25万以上の実世界の関数からなるデータセットであるBig Assemblyベンチマークを紹介した。
論文 参考訳(メタデータ) (2021-09-28T05:33:21Z) - 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) - Designing Machine Learning Pipeline Toolkit for AutoML Surrogate
Modeling Optimization [18.82755278152806]
我々は、複雑な機械学習パイプライン構造の作成と評価を容易にするAMLPツールキットを作成する。
AMLPを使って最適なパイプラインシグネチャを見つけ、それらをデータマイニングし、これらのデータマイニング機能を使って学習と予測を高速化します。
我々は、AMLP計算時間5分未満で4時間の予算で他のAutoMLアプローチよりも優れたサロゲートモデリングを備えた2段階パイプライン最適化をAMLPで作成した。
論文 参考訳(メタデータ) (2021-07-02T20:06:40Z) - 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)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。