mlsanityData to 14 Oct 2026

Profile Guided Optimization without Profiles: A Machine Learning Approach

arXiv 2112.14679 ↗First posted 24 Dec 2021cs.PL cs.LGcited by 2

Not on the map. Why?

Abstract (arXiv)

Profile guided optimization is an effective technique for improving the optimization ability of compilers based on dynamic behavior, but collecting profile data is expensive, cumbersome, and requires regular updating to remain fresh. We present a novel statistical approach to inferring branch probabilities that improves the performance of programs that are compiled without profile guided optimizations. We perform offline training using information that is collected from a large corpus of binaries that have branch probabilities information. The learned model is used by the compiler to predict the branch probabilities of regular uninstrumented programs, which the compiler can then use to inform optimization decisions. We integrate our technique directly in LLVM, supplementing the existing human-engineered compiler heuristics. We evaluate our technique on a suite of benchmarks, demonstrating some gains over compiling without profile information. In deployment, our technique requires no profiling runs and has negligible effect on compilation time.

Key facts. Cited by 2 papers in the map (data through 14 Oct 2026). Builds on 9 of its 31 references that are in the map. First posted on arXiv 24 Dec 2021.

Builds on

9 of 31 references.

References · 9

  1. 2016XGBoost: A Scalable Tree Boosting Systemcited by 5,166
  2. 2020Ansor: Generating High-Performance Tensor Programs for Deep Learningcited by 201
  3. 2018Neural Code Comprehension: A Learnable Representation of Code Semanticscited by 59
  4. 2018Ithemal: Accurate, Portable and Fast Basic Block Throughput Estimation using Deep Neural Networkscited by 43
  5. 2021CompilerGym: Robust, Performant Compiler Optimization Environments for AI Researchcited by 41
  6. 2018A Survey on Compiler Autotuning using Machine Learningcited by 40
  7. 2021MLGO: a Machine Learning Guided Compiler Optimizations Frameworkcited by 40
  8. 2019NeuroVectorizer: End-to-End Vectorization with Deep Reinforcement Learningcited by 37
  9. 2018BOLT: A Practical Binary Optimizer for Data Centers and Beyondcited by 4

Built on by

Cited by year

Citing papers per year: 2022: 1; 2023: 1.

2 papers.