Litcius/Paper detail

Work-in-Progress: MLGOPerf: An ML Guided Inliner to Optimize Performance

Amir H. Ashouri, Mostafa Elhoushi, Yuzhe Hua, Xiang Wang, Muhammad Asif Manzoor, Bryan Chan, Yaoqing Gao

202211 citationsDOI

Abstract

This paper presents MLGOPerf; the first end-to-end framework capable of optimizing performance using LLVM’s ML-Inliner. It employs a secondary ML model to generate rewards used for training a retargeted Reinforcement learning agent, previously used as the primary model by MLGO. It does so by predicting the post-inlining speedup of a function under analysis and it enables a fast training framework for the primary model which otherwise wouldn’t be practical. The experimental results show MLGOPerf is able to gain up to 1.8% with respect to LLVM’s optimization at O3 when trained for performance on SPEC CPU2006. Furthermore, the proposed approach provides up to 26% increased opportunities to autotune code regions for our benchmarks which can be translated into an additional 3.7% speedup value.

Topics & Concepts

SpeedupComputer scienceSpec#Reinforcement learningCode (set theory)Parallel computingFunction (biology)Performance improvementArtificial intelligenceProgramming languageSet (abstract data type)Operations managementEvolutionary biologyEconomicsBiologyParallel Computing and Optimization TechniquesAdvanced Neural Network ApplicationsFerroelectric and Negative Capacitance Devices