Skip to content

SuperSonic, a new open-source framework to allow compiler developers to integrate RL into compilers easily, regardless of their RL expertise.

License

Notifications You must be signed in to change notification settings

BrookeFrank/SUPERSONIC

 
 

Repository files navigation

Maintenance License CC-BY-4.0 Documentation Status

Automating reinforcement learning architecture design for code optimization.

Check the website for more information.

Introduction

SUPERSONIC is a tool to automate reinforcement learning (RL) policy searching and tuning. It is designed to help compiler developers to find the right RL architecture and algorithm to use for an optimization task. It finds the right RL exploration algorithm, the reward function and a method for modeling the environment state.

Given an RL search space defined by the Supersonic Python API, the Supersonic meta-optimizer automatically searches for a suitable RL component composition for an optimization task. It also automatically tunes a set of tunable hyperparameters of the chosen components. No RL expertise is needed to use Supersonic.

Check our paper or presentation slides for detailed information.

Installation

Supersonic builds upon:

The system was tested on the following operating systems:

  • Ubuntu 18.04
  • Fedora 28
  • Debian 10

See INSTALL.md for further details.

Useage

See artifact_evaluation for an out-of-the-box demo of Supersonic.

Contributing

We welcome contributions to SuperSonic. If you are interested in contributing please see this document.

Citation

If you use Supersonic in any of your work, please cite our paper:

@inproceedings{10.1145/3497776.3517769,
author = {Huanting Wang, Zhanyong Tang, Cheng Zhang, Jiaqi Zhao, Chris Cummins, Hugh Leather, and Zheng Wang},
title = {Automating Reinforcement Learning Architecture Design for Code Optimization},
year = {2022},
isbn = {9781450391832},
publisher = {Association for Computing Machinery},
address = {New York, NY, USA},
url = {https://doi.org/10.1145/3497776.3517769},
doi = {10.1145/3497776.3517769},
booktitle = {Proceedings of the 31st ACM SIGPLAN International Conference on Compiler Construction},
pages = {129–143},
numpages = {15},
keywords = {Compiler optimization, reinforcement learning, code optimization},
location = {Seoul, South Korea},
series = {CC 2022}
}

About

SuperSonic, a new open-source framework to allow compiler developers to integrate RL into compilers easily, regardless of their RL expertise.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 56.0%
  • Jupyter Notebook 43.3%
  • Dockerfile 0.7%