A survey of machine learning for big code and naturalness
Research at the intersection of machine learning, programming languages, and software
engineering has recently taken important steps in proposing learnable probabilistic models …
engineering has recently taken important steps in proposing learnable probabilistic models …
A survey on compiler autotuning using machine learning
Since the mid-1990s, researchers have been trying to use machine-learning-based
approaches to solve a number of different compiler optimization problems. These …
approaches to solve a number of different compiler optimization problems. These …
Unsupervised translation of programming languages
A transcompiler, also known as source-to-source translator, is a system that converts source
code from a high-level programming language (such as C++ or Python) to another …
code from a high-level programming language (such as C++ or Python) to another …
Programl: A graph-based program representation for data flow analysis and compiler optimizations
Abstract Machine learning (ML) is increasingly seen as a viable approach for building
compiler optimization heuristics, but many ML methods cannot replicate even the simplest of …
compiler optimization heuristics, but many ML methods cannot replicate even the simplest of …
Learning memory access patterns
The explosion in workload complexity and the recent slow-down in Moore's law scaling call
for new approaches towards efficient computing. Researchers are now beginning to use …
for new approaches towards efficient computing. Researchers are now beginning to use …
Machine learning in compiler optimization
In the last decade, machine-learning-based compilation has moved from an obscure
research niche to a mainstream activity. In this paper, we describe the relationship between …
research niche to a mainstream activity. In this paper, we describe the relationship between …
End-to-end deep learning of optimization heuristics
Accurate automatic optimization heuristics are necessary for dealing with thecomplexity and
diversity of modern hardware and software. Machine learning is aproven technique for …
diversity of modern hardware and software. Machine learning is aproven technique for …
A survey of machine learning for computer architecture and systems
It has been a long time that computer architecture and systems are optimized for efficient
execution of machine learning (ML) models. Now, it is time to reconsider the relationship …
execution of machine learning (ML) models. Now, it is time to reconsider the relationship …
Compilergym: Robust, performant compiler optimization environments for ai research
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 …
increasing rapidly, but compiler research has a high entry barrier. Unlike in other domains …
Neurovectorizer: End-to-end vectorization with deep reinforcement learning
One of the key challenges arising when compilers vectorize loops for today's SIMD-
compatible architectures is to decide if vectorization or interleaving is beneficial. Then, the …
compatible architectures is to decide if vectorization or interleaving is beneficial. Then, the …