There is often variation in the shape and size of input data used for deep learning. In many cases, such data can be represented using tensors with non-uniform shapes, or ragged tensors. Due to limited and non-portable support for efficient execution on ragged tensors, current deep learning frameworks generally use techniques such as padding and masking to make the data shapes uniform and then offload the computations to optimized kernels for dense tensor algebra. Such techniques can, however, lead to a lot of wasted computation and therefore, a loss in performance. This paper presents CoRa, a tensor compiler that allows users to easily generate efficient code for ragged tensor operators targeting a wide range of CPUs and GPUs. Evaluating CoRa on a variety of operators on ragged tensors as well as on an encoder layer of the transformer model, we find that CoRa (i)performs competitively with hand-optimized implementations of the operators and the transformer encoder and (ii) achieves, over PyTorch, a 1.6X geomean speedup for the encoder on an Nvidia GPU and a 1.86X geomean speedup for the multi-head attention module used in transformers on an ARM CPU.


翻译:用于深层学习的输入数据的形状和大小往往各有不同,在许多情况下,这些数据可以用不统一形状或破碎的加压器的加压器来表示。由于对压碎的加压器和GPUs的高效执行支持有限且非便携式,目前的深层学习框架通常使用诸如垫子和遮罩等技术来使数据形状统一,然后将计算结果卸下来,以优化密度高温代数的内核。然而,这种技术可能导致大量浪费计算,从而造成性能损失。本文展示了CoRA,一个高压编译器,使用户能够很容易地为压碎的抗冲器操作器和GPUPs生成有效的代码。评估了压碎式加压器和变压器模型的电解码层。我们发现,CRA(i)与操作器和变压器的手操作器实施竞争,从而造成性能损失。本文展示了CRA,使用户能够轻松过后,为以各种CPUS和GAUDUSU1号的GMAUS-GUS-Slishe-Slippe-hemodheard Speophepplipplipple AS-hedududududududududud 。

0
下载
关闭预览

相关内容

编译器(Compiler),是一种计算机程序,它会将用某种编程语言写成的源代码(原始语言),转换成另一种编程语言(目标语言)。
专知会员服务
52+阅读 · 2020年11月3日
系列教程GNN-algorithms之六:《多核卷积拓扑图—TAGCN》
专知会员服务
49+阅读 · 2020年8月8日
一份简单《图神经网络》教程,28页ppt
专知会员服务
123+阅读 · 2020年8月2日
Stabilizing Transformers for Reinforcement Learning
专知会员服务
58+阅读 · 2019年10月17日
强化学习最新教程,17页pdf
专知会员服务
174+阅读 · 2019年10月11日
2019年机器学习框架回顾
专知会员服务
35+阅读 · 2019年10月11日
【SIGGRAPH2019】TensorFlow 2.0深度学习计算机图形学应用
专知会员服务
39+阅读 · 2019年10月9日
LibRec 精选:EfficientNet、XLNet 论文及代码实现
LibRec智能推荐
5+阅读 · 2019年7月9日
TensorFlow 2.0新特性之Ragged Tensor
深度学习每日摘要
18+阅读 · 2019年4月5日
Ray RLlib: Scalable 降龙十八掌
CreateAMind
9+阅读 · 2018年12月28日
Facebook PyText 在 Github 上开源了
AINLP
7+阅读 · 2018年12月14日
(TensorFlow)实时语义分割比较研究
机器学习研究会
9+阅读 · 2018年3月12日
分布式TensorFlow入门指南
机器学习研究会
4+阅读 · 2017年11月28日
干货| PyTorch相比TensorFlow,存在哪些自身优势?
全球人工智能
15+阅读 · 2017年10月4日
教程 | 如何从TensorFlow转入PyTorch
深度学习世界
38+阅读 · 2017年9月30日
Arxiv
0+阅读 · 2021年12月30日
Arxiv
0+阅读 · 2021年12月26日
Arxiv
4+阅读 · 2018年2月19日
VIP会员
相关VIP内容
专知会员服务
52+阅读 · 2020年11月3日
系列教程GNN-algorithms之六:《多核卷积拓扑图—TAGCN》
专知会员服务
49+阅读 · 2020年8月8日
一份简单《图神经网络》教程,28页ppt
专知会员服务
123+阅读 · 2020年8月2日
Stabilizing Transformers for Reinforcement Learning
专知会员服务
58+阅读 · 2019年10月17日
强化学习最新教程,17页pdf
专知会员服务
174+阅读 · 2019年10月11日
2019年机器学习框架回顾
专知会员服务
35+阅读 · 2019年10月11日
【SIGGRAPH2019】TensorFlow 2.0深度学习计算机图形学应用
专知会员服务
39+阅读 · 2019年10月9日
相关资讯
LibRec 精选:EfficientNet、XLNet 论文及代码实现
LibRec智能推荐
5+阅读 · 2019年7月9日
TensorFlow 2.0新特性之Ragged Tensor
深度学习每日摘要
18+阅读 · 2019年4月5日
Ray RLlib: Scalable 降龙十八掌
CreateAMind
9+阅读 · 2018年12月28日
Facebook PyText 在 Github 上开源了
AINLP
7+阅读 · 2018年12月14日
(TensorFlow)实时语义分割比较研究
机器学习研究会
9+阅读 · 2018年3月12日
分布式TensorFlow入门指南
机器学习研究会
4+阅读 · 2017年11月28日
干货| PyTorch相比TensorFlow,存在哪些自身优势?
全球人工智能
15+阅读 · 2017年10月4日
教程 | 如何从TensorFlow转入PyTorch
深度学习世界
38+阅读 · 2017年9月30日
Top
微信扫码咨询专知VIP会员