Compiler architects increasingly look to machine learning when building heuristics for compiler optimization. The promise of automatic heuristic design, freeing the compiler engineer from the complex interactions of program, architecture, and other optimizations, is alluring. However, most machine learning methods cannot replicate even the simplest of the abstract interpretations of data flow analysis that are critical to making good optimization decisions. This must change for machine learning to become the dominant technology in compiler heuristics. To this end, we propose ProGraML - Program Graphs for Machine Learning - a language-independent, portable representation of whole-program semantics for deep learning. To benchmark current and future learning techniques for compiler analyses we introduce an open dataset of 461k Intermediate Representation (IR) files for LLVM, covering five source programming languages, and 15.4M corresponding data flow results. We formulate data flow analysis as an MPNN and show that, using ProGraML, standard analyses can be learned, yielding improved performance on downstream compiler optimization tasks.


翻译:编纂者建筑师在为编译者优化而建立超自然学时越来越看机器学习。 自动超自然设计的承诺, 使编译者工程师摆脱程序、 架构和其他优化的复杂互动关系, 令人振奋。 然而, 大多数机器学习方法甚至不能复制数据流分析的最简单的抽象解释, 而这种解释对于做出良好的优化决策至关重要。 这必须改变, 使机器学习成为编译者超自然学中的主要技术。 为此, 我们提议 ProGramML - 机器学习程序图 - 一种语言独立、 便携式的全方案语义表解, 用于深层学习。 为了对编译者分析的当前和未来学习技术进行基准, 我们为LLLVM 引入了一个包含五种源编程语言的461k中间代表(IR)文档的开放数据集, 以及15.4M 相应的数据流结果。 我们把数据流分析作为MPNN, 并显示, 使用 ProGramLL, 可以学习标准分析, 提高下游编译员优化任务的业绩。

0
下载
关闭预览

相关内容

编译器(Compiler),是一种计算机程序,它会将用某种编程语言写成的源代码(原始语言),转换成另一种编程语言(目标语言)。
最新《Transformers模型》教程,64页ppt
专知会员服务
306+阅读 · 2020年11月26日
Linux导论,Introduction to Linux,96页ppt
专知会员服务
77+阅读 · 2020年7月26日
【陈天奇】TVM:端到端自动深度学习编译器,244页ppt
专知会员服务
86+阅读 · 2020年5月11日
专知会员服务
115+阅读 · 2019年12月24日
Keras François Chollet 《Deep Learning with Python 》, 386页pdf
专知会员服务
151+阅读 · 2019年10月12日
强化学习最新教程,17页pdf
专知会员服务
174+阅读 · 2019年10月11日
[综述]深度学习下的场景文本检测与识别
专知会员服务
77+阅读 · 2019年10月10日
【SIGGRAPH2019】TensorFlow 2.0深度学习计算机图形学应用
专知会员服务
39+阅读 · 2019年10月9日
已删除
将门创投
4+阅读 · 2020年6月12日
Hierarchically Structured Meta-learning
CreateAMind
26+阅读 · 2019年5月22日
Transferring Knowledge across Learning Processes
CreateAMind
27+阅读 · 2019年5月18日
Unsupervised Learning via Meta-Learning
CreateAMind
42+阅读 · 2019年1月3日
A Technical Overview of AI & ML in 2018 & Trends for 2019
待字闺中
16+阅读 · 2018年12月24日
【推荐】(TensorFlow)SSD实时手部检测与追踪(附代码)
机器学习研究会
11+阅读 · 2017年12月5日
【推荐】深度学习思维导图
机器学习研究会
15+阅读 · 2017年8月20日
Arxiv
0+阅读 · 2021年1月24日
Arxiv
1+阅读 · 2021年1月21日
Arxiv
38+阅读 · 2020年12月2日
Arxiv
3+阅读 · 2018年12月18日
VIP会员
相关VIP内容
最新《Transformers模型》教程,64页ppt
专知会员服务
306+阅读 · 2020年11月26日
Linux导论,Introduction to Linux,96页ppt
专知会员服务
77+阅读 · 2020年7月26日
【陈天奇】TVM:端到端自动深度学习编译器,244页ppt
专知会员服务
86+阅读 · 2020年5月11日
专知会员服务
115+阅读 · 2019年12月24日
Keras François Chollet 《Deep Learning with Python 》, 386页pdf
专知会员服务
151+阅读 · 2019年10月12日
强化学习最新教程,17页pdf
专知会员服务
174+阅读 · 2019年10月11日
[综述]深度学习下的场景文本检测与识别
专知会员服务
77+阅读 · 2019年10月10日
【SIGGRAPH2019】TensorFlow 2.0深度学习计算机图形学应用
专知会员服务
39+阅读 · 2019年10月9日
相关资讯
已删除
将门创投
4+阅读 · 2020年6月12日
Hierarchically Structured Meta-learning
CreateAMind
26+阅读 · 2019年5月22日
Transferring Knowledge across Learning Processes
CreateAMind
27+阅读 · 2019年5月18日
Unsupervised Learning via Meta-Learning
CreateAMind
42+阅读 · 2019年1月3日
A Technical Overview of AI & ML in 2018 & Trends for 2019
待字闺中
16+阅读 · 2018年12月24日
【推荐】(TensorFlow)SSD实时手部检测与追踪(附代码)
机器学习研究会
11+阅读 · 2017年12月5日
【推荐】深度学习思维导图
机器学习研究会
15+阅读 · 2017年8月20日
相关论文
Top
微信扫码咨询专知VIP会员