Sparse fusion is a compile-time loop transformation and runtime scheduling implemented as a domain-specific code generator. Sparse fusion generates efficient parallel code for the combination of two sparse matrix kernels where at least one of the kernels has loop-carried dependencies. Available implementations optimize individual sparse kernels. When optimized separately, the irregular dependence patterns of sparse kernels create synchronization overheads and load imbalance, and their irregular memory access patterns result in inefficient cache usage, which reduces parallel efficiency. Sparse fusion uses a novel inspection strategy with code transformations to generate parallel fused code for sparse kernel combinations that is optimized for data locality and load balance. Code generated by Sparse fusion outperforms the existing implementations ParSy and MKL on average 1.6X and 5.1X respectively and outperforms the LBC and DAGP coarsening strategies applied to a fused data dependence graph on average 5.1X and 7.2X respectively for various kernel combinations.


翻译:松散的聚变是一种编译时间环变和运行时间排程,作为特定域代码生成器。 松散的聚变为两种稀薄的矩阵内核的组合生成了高效的平行代码, 其中至少有一个内核具有环形依赖性。 可用的实施优化了单个稀散内核。 分别优化后, 稀散内核的不规则依赖模式产生了同步式的间接费用和负载不平衡, 以及它们不规则的内存访问模式导致低效缓存使用, 从而降低平行效率 。 松散的聚变使用带有代码的新型检查战略, 为稀散内核组合生成平行的引信代码, 以优化数据位置和负载平衡 。 松散的聚聚变生成的代码在平均 1. 6X 和 5.1X 上优于现有执行程序, 分别优于 ParSy 和 MKL 和 MKL, 5.1x 的生成的代码, 超越了对各种内核聚变组合分别应用于平均 5. 5A 和 DGP 和 DGP 缩式数据依赖图的策略。

0
下载
关闭预览

相关内容

【NUS-Xavier教授】注意力神经网络,79页ppt
专知会员服务
62+阅读 · 2021年11月25日
【Cell】神经算法推理,Neural algorithmic reasoning
专知会员服务
28+阅读 · 2021年7月16日
专知会员服务
50+阅读 · 2021年6月30日
最新《图理论》笔记书,98页pdf
专知会员服务
74+阅读 · 2020年12月27日
神经常微分方程教程,50页ppt,A brief tutorial on Neural ODEs
专知会员服务
71+阅读 · 2020年8月2日
因果图,Causal Graphs,52页ppt
专知会员服务
246+阅读 · 2020年4月19日
深度强化学习策略梯度教程,53页ppt
专知会员服务
178+阅读 · 2020年2月1日
Transferring Knowledge across Learning Processes
CreateAMind
27+阅读 · 2019年5月18日
LibRec 精选:基于参数共享的CNN-RNN混合模型
LibRec智能推荐
6+阅读 · 2019年3月7日
时序数据异常检测工具/数据集大列表
极市平台
65+阅读 · 2019年2月23日
TorchSeg:基于pytorch的语义分割算法开源了
极市平台
20+阅读 · 2019年1月28日
【泡泡前沿追踪】跟踪SLAM前沿动态系列之IROS2018
泡泡机器人SLAM
29+阅读 · 2018年10月28日
【NIPS2018】接收论文列表
专知
5+阅读 · 2018年9月10日
LibRec 精选:基于LSTM的序列推荐实现(PyTorch)
LibRec智能推荐
50+阅读 · 2018年8月27日
【论文】变分推断(Variational inference)的总结
机器学习研究会
39+阅读 · 2017年11月16日
【推荐】SLAM相关资源大列表
机器学习研究会
10+阅读 · 2017年8月18日
Arxiv
0+阅读 · 2022年1月28日
Arxiv
0+阅读 · 2022年1月26日
Arxiv
14+阅读 · 2020年12月17日
Arxiv
6+阅读 · 2018年10月3日
Arxiv
4+阅读 · 2018年4月30日
VIP会员
相关VIP内容
【NUS-Xavier教授】注意力神经网络,79页ppt
专知会员服务
62+阅读 · 2021年11月25日
【Cell】神经算法推理,Neural algorithmic reasoning
专知会员服务
28+阅读 · 2021年7月16日
专知会员服务
50+阅读 · 2021年6月30日
最新《图理论》笔记书,98页pdf
专知会员服务
74+阅读 · 2020年12月27日
神经常微分方程教程,50页ppt,A brief tutorial on Neural ODEs
专知会员服务
71+阅读 · 2020年8月2日
因果图,Causal Graphs,52页ppt
专知会员服务
246+阅读 · 2020年4月19日
深度强化学习策略梯度教程,53页ppt
专知会员服务
178+阅读 · 2020年2月1日
相关资讯
Transferring Knowledge across Learning Processes
CreateAMind
27+阅读 · 2019年5月18日
LibRec 精选:基于参数共享的CNN-RNN混合模型
LibRec智能推荐
6+阅读 · 2019年3月7日
时序数据异常检测工具/数据集大列表
极市平台
65+阅读 · 2019年2月23日
TorchSeg:基于pytorch的语义分割算法开源了
极市平台
20+阅读 · 2019年1月28日
【泡泡前沿追踪】跟踪SLAM前沿动态系列之IROS2018
泡泡机器人SLAM
29+阅读 · 2018年10月28日
【NIPS2018】接收论文列表
专知
5+阅读 · 2018年9月10日
LibRec 精选:基于LSTM的序列推荐实现(PyTorch)
LibRec智能推荐
50+阅读 · 2018年8月27日
【论文】变分推断(Variational inference)的总结
机器学习研究会
39+阅读 · 2017年11月16日
【推荐】SLAM相关资源大列表
机器学习研究会
10+阅读 · 2017年8月18日
Top
微信扫码咨询专知VIP会员