Compiler-based graph representations for deep learning models of code
Publikation: Beitrag in Buch/Konferenzbericht/Sammelband/Gutachten › Beitrag in Konferenzband › Beigetragen › Begutachtung
Beitragende
Abstract
In natural language processing, novel methods in deep learning, like recurrent neural networks (RNNs) on sequences of words, have been very successful. In contrast to natural languages, programming languages usually have a well-defined structure. With this structure compilers can reason about programs, using graphs such as abstract syntax trees (ASTs) or control-data flow graphs (CDFGs). In this paper, we argue that we should use these graph structures instead of sequences for learning compiler optimization tasks. To this end, we use graph neural networks (GNNs) for learning predictive compiler tasks on two representations based on ASTs and CDFGs. Experiments show that this improves upon the state-of-the-art in the task of heterogeneous OpenCL mapping, while providing orders of magnitude faster inference times, crucial for compiler optimizations. When testing on benchmark suites not included for training, our AST-based model significantly outperforms the state-of-the-art by over 12 percentage points in terms of accuracy. It is the only one to perform clearly better than a random mapping. On the task of predicting thread coarsening factors, we show that all of the methods fail to produce an overall speedup.
Details
Originalsprache | Englisch |
---|---|
Titel | CC 2020 - Proceedings of the 29th International Conference on Compiler Construction |
Redakteure/-innen | Louis-Noel Pouchet, Alexandra Jimborean |
Herausgeber (Verlag) | Association for Computing Machinery, Inc |
Seiten | 201-211 |
Seitenumfang | 11 |
ISBN (elektronisch) | 9781450371209 |
Publikationsstatus | Veröffentlicht - 22 Feb. 2020 |
Peer-Review-Status | Ja |
Konferenz
Titel | 29th ACM SIGPLAN International Conference on Compiler Construction, CC 2020 |
---|---|
Dauer | 22 - 23 Februar 2020 |
Stadt | San Diego |
Land | USA/Vereinigte Staaten |
Externe IDs
ORCID | /0000-0002-5007-445X/work/141545531 |
---|
Schlagworte
Forschungsprofillinien der TU Dresden
ASJC Scopus Sachgebiete
Schlagwörter
- Compilers, Deep Learning, Graphs, LLVM