Centrala begrepp
コンパイラの最適化パスの選択と順序付けを、大規模データセットを用いた強化学習によって学習し、未知のプログラムに対しても高い最適化性能を発揮する。
Sammanfattning
本研究では、コンパイラの最適化問題をマルコフ決定過程として定式化し、大規模で多様性のある学習データセットと、サンプル効率の高いモデルベース強化学習手法を用いて、コンパイラの最適化エージェントを開発した。
学習データセットには、競技プログラミングの解答、AIによって生成されたプログラム、オープンソースプロジェクトのプログラムなどを含み、プログラムの自然性、多様性、高品質を確保した。
モデルベース強化学習手法では、コンパイラ環境のモデルを学習し、シミュレーションを通じて効率的に最適化ポリシーを学習する。この手法により、未知のプログラムに対しても高い最適化性能を発揮できる。
評価実験では、ベンチマークスイートやオープンソースプロジェクトのプログラムに対して、既存の最適化手法を上回る性能を示した。特に、コードサイズの最適化において顕著な結果が得られた。
本研究は、機械学習技術をコード最適化に適用する上での重要な一歩となり、コンパイラの最適化性能向上に貢献する可能性がある。今後の展開として、最適化目的の多様化、より大規模なモデルの活用、専門知識の組み込みなどが考えられる。
Statistik
プログラムの基本ブロック数は0.131から0.152の範囲にある。
プログラムの分岐数は0.206から0.250の範囲にある。
プログラムの総ブロック数は0.237から0.267の範囲にある。
Citat
"コンパイラの最適化は、コンピュータおよびソフトウェア工学において中心的な役割を果たしている。"
"ユーザーの介入なしにコンパイラが最適化空間を自動的に検索できるようにすることは、標準的な実践ではない。"
"我々のアプローチは、機械学習技術をコード最適化の分野に適用する上での重要な一歩となる。"