論文の概要: Static Neural Compiler Optimization via Deep Reinforcement Learning
- arxiv url: http://arxiv.org/abs/2008.08951v3
- Date: Fri, 16 Oct 2020 11:31:38 GMT
- ステータス: 処理完了
- システム内更新日: 2022-10-27 03:06:23.927950
- Title: Static Neural Compiler Optimization via Deep Reinforcement Learning
- Title(参考訳): 深部強化学習による静的ニューラルネットワーク最適化
- Authors: Rahim Mammadli, Ali Jannesari and Felix Wolf
- Abstract要約: 本稿では,位相整合問題に対する深層強化学習手法を用いる。
LLVMのO3シークエンスを構成するサブシーケンスを用いて、エージェントはトレーニングに使用するソースコードのセット上でO3シークエンスより優れていることを学習する。
我々は、我々のアプローチを用いて訓練されたモデルは、ニューラル最適化エージェントとして現代のコンパイラに統合できると考えている。
- 参考スコア(独自算出の注目度): 1.458855293397494
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: The phase-ordering problem of modern compilers has received a lot of
attention from the research community over the years, yet remains largely
unsolved. Various optimization sequences exposed to the user are manually
designed by compiler developers. In designing such a sequence developers have
to choose the set of optimization passes, their parameters and ordering within
a sequence. Resulting sequences usually fall short of achieving optimal runtime
for a given source code and may sometimes even degrade the performance when
compared to unoptimized version. In this paper, we employ a deep reinforcement
learning approach to the phase-ordering problem. Provided with sub-sequences
constituting LLVM's O3 sequence, our agent learns to outperform the O3 sequence
on the set of source codes used for training and achieves competitive
performance on the validation set, gaining up to 1.32x speedup on
previously-unseen programs. Notably, our approach differs from autotuning
methods by not depending on one or more test runs of the program for making
successful optimization decisions. It has no dependence on any dynamic feature,
but only on the statically-attainable intermediate representation of the source
code. We believe that the models trained using our approach can be integrated
into modern compilers as neural optimization agents, at first to complement,
and eventually replace the hand-crafted optimization sequences.
- Abstract(参考訳): 現代のコンパイラのフェーズオーダリング問題は、長年にわたって研究コミュニティから多くの注目を集めてきたが、ほとんど解決されていない。
ユーザに公開される様々な最適化シーケンスは、コンパイラ開発者が手動で設計する。
このようなシーケンスを設計するには、最適化パスのセット、パラメータ、シーケンス内の順序を選択する必要がある。
結果のシーケンスは通常、与えられたソースコードの最適なランタイムの達成に至らず、最適化されていないバージョンと比較してパフォーマンスが低下することもある。
本稿では,位相順序付け問題に対して,深い強化学習手法を適用する。
LLVMのO3シークエンスを構成するサブシーケンスを用いて,トレーニングに使用するソースコードセット上でO3シークエンスを上回り,検証セット上での競合性能を最大1.32倍に向上させる。
特に我々のアプローチは、最適化決定を成功させるためにプログラムの1つ以上のテスト実行に依存せず、自動チューニング方法とは異なる。
動的機能には依存しないが、静的に許容可能なソースコードの中間表現にのみ依存する。
このアプローチでトレーニングされたモデルは、まずはニューラルネットワーク最適化エージェントとして現代のコンパイラに統合され、最終的には手作りの最適化シーケンスを置き換えることができると考えています。
関連論文リスト
- Should AI Optimize Your Code? A Comparative Study of Current Large Language Models Versus Classical Optimizing Compilers [0.0]
大規模言語モデル(LLM)は、コード最適化方法論に革命をもたらすAI駆動アプローチの可能性に関する興味深い疑問を提起する。
本稿では、GPT-4.0とCodeLlama-70Bの2つの最先端大言語モデルと従来の最適化コンパイラの比較分析を行う。
論文 参考訳(メタデータ) (2024-06-17T23:26:41Z) - Two Optimizers Are Better Than One: LLM Catalyst Empowers Gradient-Based Optimization for Prompt Tuning [69.95292905263393]
我々は,勾配に基づく最適化と大規模言語モデル(MsLL)が相互補完的であることを示し,協調的な最適化手法を提案する。
私たちのコードはhttps://www.guozix.com/guozix/LLM-catalystでリリースされています。
論文 参考訳(メタデータ) (2024-05-30T06:24:14Z) - CompilerDream: Learning a Compiler World Model for General Code Optimization [58.87557583347996]
汎用コード最適化のためのモデルベース強化学習手法であるCompilerDreamを紹介する。
最適化パスの固有の特性を正確にシミュレートするコンパイラの世界モデルと、このモデルで訓練されたエージェントから、効率的な最適化戦略を生成する。
さまざまなデータセットを網羅し、LLVMのビルトイン最適化や、値予測とエンドツーエンドコード最適化の両方の設定における最先端メソッドを超越している。
論文 参考訳(メタデータ) (2024-04-24T09:20:33Z) - Large Language Models for Compiler Optimization [22.52765975286403]
コードサイズに対してLLVMアセンブリを最適化するために,スクラッチからトレーニングしたトランスフォーマーモデルを提案する。
最適化前後の命令数と最適化コード自体を予測する。
提案手法は,コンパイラよりも命令数の削減が3.0%向上する。
論文 参考訳(メタデータ) (2023-09-11T22:11:46Z) - Learning Performance-Improving Code Edits [107.21538852090208]
本稿では,大規模言語モデル(LLM)を高レベルプログラム最適化に適用するためのフレームワークを提案する。
まず、競争力のある77,000以上のC++プログラミングサブミッションペアによる、人間のプログラマによるパフォーマンス改善編集のデータセットをキュレートする。
提案手法は,検索をベースとした少数ショットプロンプトとチェーン・オブ・シンクレットを提案し,その微調整には,自己再生に基づく性能条件付き生成と合成データ拡張が含まれる。
論文 参考訳(メタデータ) (2023-02-15T18:59:21Z) - An Empirical Evaluation of Zeroth-Order Optimization Methods on
AI-driven Molecule Optimization [78.36413169647408]
分子目的を最適化するための様々なZO最適化手法の有効性について検討する。
ZO符号に基づく勾配降下(ZO-signGD)の利点を示す。
本稿では,Guurcamol スイートから広く使用されているベンチマークタスクに対して,ZO 最適化手法の有効性を示す。
論文 参考訳(メタデータ) (2022-10-27T01:58:10Z) - ALT: Breaking the Wall between Graph and Operator Level Optimizations
for Deep Learning Compilation [38.8918502461244]
ALTはディープモデルのためのグラフと演算子レベルの共同最適化を行うコンパイラである。
JOGは、単一の演算子の性能とエンドツーエンドの推論性能の両方の観点から、最先端のコンパイラ(例えばAnsor)よりも大幅に優れている。
論文 参考訳(メタデータ) (2022-10-22T11:09:36Z) - Learning to Superoptimize Real-world Programs [79.4140991035247]
本稿では,ニューラルシークエンス・ツー・シーケンス・モデルを用いて,実世界のプログラムを最適化するフレームワークを提案する。
我々は、x86-64アセンブリでオープンソースプロジェクトから抽出された25万以上の実世界の関数からなるデータセットであるBig Assemblyベンチマークを紹介した。
論文 参考訳(メタデータ) (2021-09-28T05:33:21Z) - A Primer on Zeroth-Order Optimization in Signal Processing and Machine
Learning [95.85269649177336]
ZO最適化は、勾配推定、降下方向、ソリューション更新の3つの主要なステップを反復的に実行する。
我々は,ブラックボックス深層学習モデルによる説明文の評価や生成,効率的なオンラインセンサ管理など,ZO最適化の有望な応用を実証する。
論文 参考訳(メタデータ) (2020-06-11T06:50:35Z) - AutoPhase: Juggling HLS Phase Orderings in Random Forests with Deep
Reinforcement Learning [17.584552398664737]
AutoPhaseは、プログラムを受け取り、深い強化学習を使用して、実行時間を最小限にするコンパイルパスのシーケンスを見つけるフレームワークである。
本稿では,-O3コンパイラフラグを使用する場合と比較して,AutoPhaseは回路性能を28%向上することを示す。
既存の最先端のソリューションとは異なり、我々の深層強化学習ソリューションは、実際のベンチマークを一般化する有望な結果を示している。
論文 参考訳(メタデータ) (2020-03-02T05:35:32Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。