Recent work showed that compiling functional programs to use dense, serialized memory representations for recursive algebraic datatypes can yield significant constant-factor speedups for sequential programs. But serializing data in a maximally dense format consequently serializes the processing of that data, yielding a tension between density and parallelism. This paper shows that a disciplined, practical compromise is possible. We present Parallel Gibbon, a compiler that obtains the benefits of dense data formats and parallelism. We formalize the semantics of the parallel location calculus underpinning this novel implementation strategy, and show that it is type-safe. Parallel Gibbon exceeds the parallel performance of existing compilers for purely functional programs that use recursive algebraic datatypes, including, notably, abstract-syntax-tree traversals as in compilers.


翻译:最近的工作表明,为循环代数数据类型使用密集、序列的内存表达式而汇编功能程序,可以为连续程序生成显著的恒定要素加速。但以最大密度格式进行数据序列化,从而导致数据的处理序列化,在密度和平行性之间产生紧张关系。本文显示,有条不紊、实际的折中是可能的。我们提出了平行的Gibbon,这是一位获得密集数据格式和平行性的好处的编译者。我们正式确定了支持这项新颖执行战略的平行位置微积分的语义,并表明它是安全的。平行的Gibbon超过了使用循环代数数据类型的纯功能性程序的现有编译者的平行性能,其中主要包括编译者中的抽象-合成-树木曲。

0
下载
关闭预览

相关内容

序列化 (Serialization)将对象的状态信息转换为可以存储或传输的形式的过程。
【干货书】机器学习速查手册,135页pdf
专知会员服务
126+阅读 · 2020年11月20日
专知会员服务
162+阅读 · 2020年1月16日
【大规模数据系统,552页ppt】Large-scale Data Systems
专知会员服务
61+阅读 · 2019年12月21日
Keras François Chollet 《Deep Learning with Python 》, 386页pdf
专知会员服务
154+阅读 · 2019年10月12日
【SIGGRAPH2019】TensorFlow 2.0深度学习计算机图形学应用
专知会员服务
41+阅读 · 2019年10月9日
Call for Participation: Shared Tasks in NLPCC 2019
中国计算机学会
5+阅读 · 2019年3月22日
Unsupervised Learning via Meta-Learning
CreateAMind
42+阅读 · 2019年1月3日
A Technical Overview of AI & ML in 2018 & Trends for 2019
待字闺中
17+阅读 · 2018年12月24日
Facebook PyText 在 Github 上开源了
AINLP
7+阅读 · 2018年12月14日
disentangled-representation-papers
CreateAMind
26+阅读 · 2018年9月12日
Hierarchical Disentangled Representations
CreateAMind
4+阅读 · 2018年4月15日
【推荐】MXNet深度情感分析实战
机器学习研究会
16+阅读 · 2017年10月4日
【推荐】免费书(草稿):数据科学的数学基础
机器学习研究会
20+阅读 · 2017年10月1日
On Feature Normalization and Data Augmentation
Arxiv
15+阅读 · 2020年2月25日
VIP会员
相关资讯
Call for Participation: Shared Tasks in NLPCC 2019
中国计算机学会
5+阅读 · 2019年3月22日
Unsupervised Learning via Meta-Learning
CreateAMind
42+阅读 · 2019年1月3日
A Technical Overview of AI & ML in 2018 & Trends for 2019
待字闺中
17+阅读 · 2018年12月24日
Facebook PyText 在 Github 上开源了
AINLP
7+阅读 · 2018年12月14日
disentangled-representation-papers
CreateAMind
26+阅读 · 2018年9月12日
Hierarchical Disentangled Representations
CreateAMind
4+阅读 · 2018年4月15日
【推荐】MXNet深度情感分析实战
机器学习研究会
16+阅读 · 2017年10月4日
【推荐】免费书(草稿):数据科学的数学基础
机器学习研究会
20+阅读 · 2017年10月1日
Top
微信扫码咨询专知VIP会员