GreenThumb: superoptimizer construction framework

Phothilimthana, Phitchaya Mangpo and Thakur, Aditya V. and Bodı́k, Rastislav and Dhurjati, Dinakar
Proceedings of the 25th International Conference on Compiler Construction (CC), 2016

Developing an optimizing compiler backend remains a laborious process, especially for nontraditional ISAs that have been appearing recently. Superoptimization sidesteps the need for many code transformations by searching for the most optimal instruction sequence semantically equivalent to the original code fragment. Even though superoptimization discovers the best machine-specific code optimizations, it has yet to become widely-used. We propose GreenThumb, an extensible framework that reduces the cost of constructing superoptimizers and provides a fast search algorithm that can be reused for any ISA, exploiting the unique strengths of enumerative, stochastic, and symbolic (SAT-solver-based) search algorithms. To extend GreenThumb to a new ISA, it is only necessary to implement an emulator for the ISA and provide some ISA-specific search utility functions.

PDF     ACM©    

@inproceedings{mangpo_thakur_CC16,
  author = {Phothilimthana, Phitchaya Mangpo and Thakur, Aditya V. and Bod{\'{\i}}k, Rastislav and Dhurjati, Dinakar},
  title = {GreenThumb: superoptimizer construction framework},
  booktitle = {Proceedings of the 25th International Conference on Compiler Construction {(CC)}},
  pages = {261--262},
  year = {2016},
  doi = {10.1145/2892208.2892233},
  publisher = {ACM}
}