Protean Compiler: An Agile Framework to Drive Fine-grain Phase Ordering
Amir H. Ashouri, Shayan Shirahmad Gale Bagi, Kavin Satheeskumar, Tejas Srikanth, Jonathan Zhao, Ibrahim Saidoun, Ziwen Wang, Bryan Chan, Tomasz S. Czajkowski

TL;DR
Protean Compiler introduces an agile, fine-grained phase ordering framework integrated into LLVM, leveraging static features and machine learning to optimize compiler performance with measurable speedups.
Contribution
It presents a novel, seamlessly integrated LLVM framework with extensive static feature libraries and ML compatibility for fine-grained phase ordering optimization.
Findings
Achieves up to 4.1% average speedup over LLVM O3.
Realizes up to 15.7% speedup on specific Cbench applications.
Enables integration with ML frameworks and LLMs for enhanced optimization.
Abstract
The phase ordering problem has been a long-standing challenge since the late 1970s, yet it remains an open problem due to having a vast optimization space and an unbounded nature, making it an open-ended problem without a finite solution, one can limit the scope by reducing the number and the length of optimizations. Traditionally, such locally optimized decisions are made by hand-coded algorithms tuned for a small number of benchmarks, often requiring significant effort to be retuned when the benchmark suite changes. In the past 20 years, Machine Learning has been employed to construct performance models to improve the selection and ordering of compiler optimizations, however, the approaches are not baked into the compiler seamlessly and never materialized to be leveraged at a fine-grained scope of code segments. This paper presents Protean Compiler: An agile framework to enable LLVM…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsBlock Copolymer Self-Assembly · Parallel Computing and Optimization Techniques · Machine Learning in Materials Science
