Interest in applying Artificial Intelligence (AI) techniques to compiler optimizations is increasing rapidly, but compiler research has a high entry barrier. Unlike in other domains, compiler and AI researchers do not have access to the datasets and frameworks that enable fast iteration and development of ideas, and getting started requires a significant engineering investment. What is needed is an easy, reusable experimental infrastructure for real world compiler optimization tasks that can serve as a common benchmark for comparing techniques, and as a platform to accelerate progress in the field. We introduce CompilerGym, a set of environments for real world compiler optimization tasks, and a toolkit for exposing new optimization tasks to compiler researchers. CompilerGym enables anyone to experiment on production compiler optimization problems through an easy-to-use package, regardless of their experience with compilers. We build upon the popular OpenAI Gym interface enabling researchers to interact with compilers using Python and a familiar API. We describe the CompilerGym architecture and implementation, characterize the optimization spaces and computational efficiencies of three included compiler environments, and provide extensive empirical evaluations. Compared to prior works, CompilerGym offers larger datasets and optimization spaces, is 27x more computationally efficient, is fault-tolerant, and capable of detecting reproducibility bugs in the underlying compilers. In making it easy for anyone to experiment with compilers - irrespective of their background - we aim to accelerate progress in the AI and compiler research domains.
翻译:对应用人工智能(AI)技术进行编译优化的兴趣正在迅速增长,但编译者研究有一个很高的进入屏障。 与其他领域不同,编译者和AI研究人员无法访问能够快速复制和开发想法的数据集和框架,而启动需要大量的工程投资。 我们需要为真实世界编译优化任务建立一个简单、可重复使用的实验基础设施,这可以作为比较技术的共同基准,并作为加快实地进展的平台。 我们引入了编译者Gym,这是一套真实世界编译者优化任务的环境,以及一个向编译者研究人员披露新的优化任务的工具包。 编译者和大赦国际使任何人都能够通过简单易用的集来试验制作编译器优化问题和框架,而不管他们与编译者打交道的经验如何。 我们利用流行的 OpenAI Gym 界面,使研究人员能够利用Python 和熟悉的 API 来与编译者进行互动。 我们描述CallerGym 架构和执行情况,描述三个编译环境的优化空间和计算效率,并提供广泛的实验性评估工具,在编译者中进行较容易的背景评估。 在前的编译中,对更能进行更精确的编译,在检索中提供更精确的校制和更精确的校制中提供更精确的校制中,在更精确的校制中提供更精确的校制中,为更制和更制更制更精确的校制。