Skip to main content
QUICK REVIEW

[論文レビュー] MLComp: A Methodology for Machine Learning-based Performance Estimation and Adaptive Selection of Pareto-Optimal Compiler Optimization Sequences

Alessio Colucci, Dávid Juhász|arXiv (Cornell University)|Dec 9, 2020
Parallel Computing and Optimization Techniques参考文献 54被引用数 4
ひとこと要約

MLCompは、時間のかかる動的プロファイル測定の代わりに、高速で高精度な機械学習ベースのパフォーマンス推定器を用いる強化学習に基づく手法を提案し、適応的で多目的なコンパイラ最適化シーケンシングを実現する。x86およびRISC-Vアーキテクチャにおいて、実行時間は最大12%向上、エネルギー消費は6%削減され、相対誤差は2%未満、最新のモデルと比較して学習が50倍速い。

ABSTRACT

Embedded systems have proliferated in various consumer and industrial applications with the evolution of Cyber-Physical Systems and the Internet of Things. These systems are subjected to stringent constraints so that embedded software must be optimized for multiple objectives simultaneously, namely reduced energy consumption, execution time, and code size. Compilers offer optimization phases to improve these metrics. However, proper selection and ordering of them depends on multiple factors and typically requires expert knowledge. State-of-the-art optimizers facilitate different platforms and applications case by case, and they are limited by optimizing one metric at a time, as well as requiring a time-consuming adaptation for different targets through dynamic profiling. To address these problems, we propose the novel MLComp methodology, in which optimization phases are sequenced by a Reinforcement Learning-based policy. Training of the policy is supported by Machine Learning-based analytical models for quick performance estimation, thereby drastically reducing the time spent for dynamic profiling. In our framework, different Machine Learning models are automatically tested to choose the best-fitting one. The trained Performance Estimator model is leveraged to efficiently devise Reinforcement Learning-based multi-objective policies for creating quasi-optimal phase sequences. Compared to state-of-the-art estimation models, our Performance Estimator model achieves lower relative error (<2%) with up to 50x faster training time over multiple platforms and application domains. Our Phase Selection Policy improves execution time and energy consumption of a given code by up to 12% and 6%, respectively. The Performance Estimator and the Phase Selection Policy can be trained efficiently for any target platform and application domain.

研究の動機と目的

  • 固定で単一目的の最適化ポリシーには、専門家によるチューニングと動的プロファイル測定が必要であり、その制限を解消すること。
  • 多様なプラットフォームやアプリケーション分野にわたる、迅速で自動化された最適化シーケンスの適応を可能にすること。
  • 実行時間、消費エネルギー、コードサイズの3つの目的を同時に最適化する多目的最適化フレームワークの構築。
  • 時間的に高コストな動的プロファイル測定に依存するのを減らし、高速で正確な機械学習ベースのパフォーマンス推定に置き換えること。

提案手法

  • 静的コンパイラメトリクスを用いて、実行時間、消費エネルギー、コードサイズなどの動的プログラム特徴量を予測する機械学習ベースのパフォーマンス推定器(PE)モデルを訓練する。
  • 予測精度を最大化するために、ヒューリスティックサーチによりPEモデルが自動的に最適なデータ前処理手法および機械学習アルゴリズム(例:XGBoost、LightGBM)を選択する。
  • PEモデルの予測結果を用いて、Pareto最適なコンパイラ最適化フェーズのシーケンスを推薦する強化学習(RL)ベースのフェーズ選択ポリシー(PSS)を訓練する。
  • PSSポリシーは、PEモデルの予測結果を用いたシミュレーテッド環境で訓練されるため、繰り返しの動的プロファイル測定を伴わず、迅速なポリシー適応が可能になる。
  • 最小限のプロファイルデータで新しいターゲット用にPEおよびPSSモデルを再訓練できるため、自動的かつプラットフォームに依存しない展開が可能になる。
  • この手法により、異なるコンパイラ、プラットフォーム、アプリケーション分野において、エンドツーエンドで自動的かつ再利用可能な最適化適応が実現される。

実験結果

リサーチクエスチョン

  • RQ1機械学習ベースのパフォーマンス推定器は、多様なプラットフォームやアプリケーションにおいて、最小限のプロファイルオーバーヘッドで高い精度を達成できるか?
  • RQ2強化学習ベースのポリシーは、複数の目的に対してPareto最適なコンパイラ最適化フェーズのシーケンスを効果的に選択できるか?
  • RQ3提案手法は、広範な動的プロファイル測定に依存する最新の手法と比較して、適応時間を短縮できるか?
  • RQ4PEモデルは、手動での再設定なしに、異なるコンパイラターゲットやアプリケーションワークロードにどれほど一般化できるか?
  • RQ5PSSポリシーの多目的最適化性能は、実行時間、消費エネルギー、コードサイズの観点から、単一目的の最新手法と比較してどの程度優れているか?

主な発見

  • パフォーランス推定器(PE)モデルは、実行時間、消費エネルギー、コードサイズ、命令数の各指標において、最大で2%未満の相対誤差を達成し、最新の手法(2–7%誤差)を上回る性能を示した。
  • PEモデルは、過去の研究と比較して、学習時間を最大50倍短縮し、フルモデルのトレーニングに2日間のプロファイルデータで十分であり、過去の研究では15–108日を要していた。
  • フェーズ選択ポリシー(PSS)は、標準的なコンパイラ最適化と比較して、実行時間を最大12%改善し、消費エネルギーを最大6%削減した。
  • PSSポリシーは、複数の目的を最適化する中でコードサイズを維持またはわずかに改善(0.1%向上)したが、単一目的アプローチで一般的に見られるトレードオフを回避した。
  • この手法により、x86およびRISC-Vアーキテクチャ、PARSECおよびBEEBSベンチマークといった異なるプラットフォームやアプリケーション分野において、完全に自動的で再利用可能かつ高速な最適化ポリシーの適応が可能になった。
  • フレームワークは、最小限の手動介入で新しいターゲットに展開可能であり、優れた一般化性能と効率性を示した。

より良い研究を、今すぐ始めましょう

論文設計から論文執筆まで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。