Generating GPU Compiler Heuristics using Reinforcement Learning
arXiv:2111.12055
Abstract
GPU compilers are complex software programs with many optimizations specific to target hardware. These optimizations are often controlled by heuristics hand-designed by compiler experts using time- and resource-intensive processes. In this paper, we developed a GPU compiler autotuning framework that uses off-policy deep reinforcement learning to generate heuristics that improve the frame rates of graphics applications. Furthermore, we demonstrate the resilience of these learned heuristics to frequent compiler updates by analyzing their stability across a year of code check-ins without retraining. We show that our machine learning-based compiler autotuning framework matches or surpasses the frame rates for 98% of graphics benchmarks with an average uplift of 1.6% up to 15.8%.
References in corpus (8)
- Playing Atari with Deep Reinforcement Learning
- Understanding deep learning requires rethinking generalization
- Conservative Q-Learning for Offline Reinforcement Learning
- A Survey on Compiler Autotuning using Machine Learning
- Device Placement Optimization with Reinforcement Learning
- MLGO: a Machine Learning Guided Compiler Optimizations Framework
- DisCor: Corrective Feedback in Reinforcement Learning via Distribution Correction
- ProGraML: Graph-based Deep Learning for Program Optimization and Analysis