論文の概要: Should AI Optimize Your Code? A Comparative Study of Current Large Language Models Versus Classical Optimizing Compilers
- arxiv url: http://arxiv.org/abs/2406.12146v1
- Date: Mon, 17 Jun 2024 23:26:41 GMT
- ステータス: 処理完了
- システム内更新日: 2024-06-19 23:28:06.628405
- Title: Should AI Optimize Your Code? A Comparative Study of Current Large Language Models Versus Classical Optimizing Compilers
- Title(参考訳): AIはコードを最適化すべきか? 現在の大規模言語モデルと古典的最適化コンパイラの比較研究
- Authors: Miguel Romero Rosas, Miguel Torres Sanchez, Rudolf Eigenmann,
- Abstract要約: 大規模言語モデル(LLM)は、コード最適化方法論に革命をもたらすAI駆動アプローチの可能性に関する興味深い疑問を提起する。
本稿では、GPT-4.0とCodeLlama-70Bの2つの最先端大言語モデルと従来の最適化コンパイラの比較分析を行う。
- 参考スコア(独自算出の注目度): 0.0
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: In the contemporary landscape of computer architecture, the demand for efficient parallel programming persists, needing robust optimization techniques. Traditional optimizing compilers have historically been pivotal in this endeavor, adapting to the evolving complexities of modern software systems. The emergence of Large Language Models (LLMs) raises intriguing questions about the potential for AI-driven approaches to revolutionize code optimization methodologies. This paper presents a comparative analysis between two state-of-the-art Large Language Models, GPT-4.0 and CodeLlama-70B, and traditional optimizing compilers, assessing their respective abilities and limitations in optimizing code for maximum efficiency. Additionally, we introduce a benchmark suite of challenging optimization patterns and an automatic mechanism for evaluating performance and correctness of the code generated by such tools. We used two different prompting methodologies to assess the performance of the LLMs -- Chain of Thought (CoT) and Instruction Prompting (IP). We then compared these results with three traditional optimizing compilers, CETUS, PLUTO and ROSE, across a range of real-world use cases. A key finding is that while LLMs have the potential to outperform current optimizing compilers, they often generate incorrect code on large code sizes, calling for automated verification methods. Our extensive evaluation across 3 different benchmarks suites shows CodeLlama-70B as the superior optimizer among the two LLMs, capable of achieving speedups of up to 2.1x. Additionally, CETUS is the best among the optimizing compilers, achieving a maximum speedup of 1.9x. We also found no significant difference between the two prompting methods: Chain of Thought (Cot) and Instructing prompting (IP).
- Abstract(参考訳): 現代のコンピュータアーキテクチャの状況では、効率的な並列プログラミングの需要は持続し、堅牢な最適化技術を必要としている。
従来の最適化コンパイラはこの取り組みにおいて歴史的に重要な役割を担い、現代のソフトウェアシステムの複雑さの進化に適応してきた。
大規模言語モデル(LLM)の出現は、コード最適化方法論に革命をもたらすAI駆動アプローチの可能性に関する興味深い疑問を提起する。
本稿では、GPT-4.0とCodeLlama-70Bの2つの最先端大言語モデルと従来の最適化コンパイラの比較分析を行い、最適化の能力と限界を最大効率のために評価する。
さらに,これらのツールが生成するコードのパフォーマンスと正確性を評価するための,難易度の高い最適化パターンと自動メカニズムのベンチマークスイートも導入する。
思考の連鎖(CoT)とインストラクション・プロンプト(IP)の2つの異なるプロンプト手法を用いてLCMの性能を評価した。
次に、これらの結果をCETUS、PLUTO、ROSEの3つの従来の最適化コンパイラと比較した。
重要な発見は、LLMが現在の最適化コンパイラを上回る性能を持つ一方で、大規模なコードサイズで間違ったコードを生成し、自動検証メソッドを呼び出すことがしばしばあることである。
3つのベンチマークスイートで広範囲に評価したところ、CodeLlama-70Bは2.1倍のスピードアップを達成できる2つのLLMの中で、優れたオプティマイザであることがわかった。
さらに、CETUSは最適化コンパイラの中でも最高であり、最大1.9倍のスピードアップを実現している。
また,思考の連鎖 (Cot) とインストラクション・プロンプト (IP) の2つの方法の間に有意な差は認められなかった。
関連論文リスト
- Iterative or Innovative? A Problem-Oriented Perspective for Code Optimization [81.88668100203913]
大規模言語モデル(LLM)は、幅広いプログラミングタスクを解く上で強力な能力を示している。
本稿では,パフォーマンス向上に着目したコード最適化について検討する。
論文 参考訳(メタデータ) (2024-06-17T16:10:10Z) - Learning to optimize: A tutorial for continuous and mixed-integer optimization [41.29549467082292]
Learning to Optimize (L2O)は、従来の最適化と機械学習の交差点に立っている。
このチュートリアルでは、L2Oテクニックを深く掘り下げて、最適化アルゴリズムの高速化、ソリューションの見積の迅速化、あるいは最適化問題自体の作り直しなどを紹介している。
論文 参考訳(メタデータ) (2024-05-24T06:21:01Z) - Supercompiler Code Optimization with Zero-Shot Reinforcement Learning [63.164423329052404]
エージェントの1回の試行において,各プログラムの効率的な最適化戦略を即時に生成するために,大規模データで広範囲に訓練された人工知能エージェントであるCodeZeroを提示する。
われわれの手法は、人工知能の工学的潜在能力を生かし、コード最適化の領域で機械学習技術をスケールする方法を開拓する。
論文 参考訳(メタデータ) (2024-04-24T09:20:33Z) - Large Language Models for Compiler Optimization [22.52765975286403]
コードサイズに対してLLVMアセンブリを最適化するために,スクラッチからトレーニングしたトランスフォーマーモデルを提案する。
最適化前後の命令数と最適化コード自体を予測する。
提案手法は,コンパイラよりも命令数の削減が3.0%向上する。
論文 参考訳(メタデータ) (2023-09-11T22:11:46Z) - Large Language Models as Optimizers [106.52386531624532]
本稿では,大規模言語モデル (LLM) をプロンプトとして活用するためのシンプルで効果的な手法である Prompting (OPRO) を提案する。
各最適化ステップにおいて、LLMは、前述した値を含むプロンプトから新しい解を生成する。
OPROにより最適化された最良のプロンプトは、GSM8Kで最大8%、Big-Bench Hardタスクで最大50%向上することを示した。
論文 参考訳(メタデータ) (2023-09-07T00:07:15Z) - Learning Performance-Improving Code Edits [107.21538852090208]
本稿では,大規模言語モデル(LLM)を高レベルプログラム最適化に適用するためのフレームワークを提案する。
まず、競争力のある77,000以上のC++プログラミングサブミッションペアによる、人間のプログラマによるパフォーマンス改善編集のデータセットをキュレートする。
提案手法は,検索をベースとした少数ショットプロンプトとチェーン・オブ・シンクレットを提案し,その微調整には,自己再生に基づく性能条件付き生成と合成データ拡張が含まれる。
論文 参考訳(メタデータ) (2023-02-15T18:59:21Z) - Learning to Superoptimize Real-world Programs [79.4140991035247]
本稿では,ニューラルシークエンス・ツー・シーケンス・モデルを用いて,実世界のプログラムを最適化するフレームワークを提案する。
我々は、x86-64アセンブリでオープンソースプロジェクトから抽出された25万以上の実世界の関数からなるデータセットであるBig Assemblyベンチマークを紹介した。
論文 参考訳(メタデータ) (2021-09-28T05:33:21Z) - Learning to Optimize: A Primer and A Benchmark [94.29436694770953]
最適化への学習(L2O)は、機械学習を活用して最適化方法を開発する新しいアプローチです。
この記事では、継続的最適化のためのL2Oの総合的な調査とベンチマークを行う。
論文 参考訳(メタデータ) (2021-03-23T20:46:20Z) - Static Neural Compiler Optimization via Deep Reinforcement Learning [1.458855293397494]
本稿では,位相整合問題に対する深層強化学習手法を用いる。
LLVMのO3シークエンスを構成するサブシーケンスを用いて、エージェントはトレーニングに使用するソースコードのセット上でO3シークエンスより優れていることを学習する。
我々は、我々のアプローチを用いて訓練されたモデルは、ニューラル最適化エージェントとして現代のコンパイラに統合できると考えている。
論文 参考訳(メタデータ) (2020-08-20T13:16:29Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。