当前位置: X-MOL 学术arXiv.cs.PF › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
DLFusion: An Auto-Tuning Compiler for Layer Fusion on Deep Neural Network Accelerator
arXiv - CS - Performance Pub Date : 2020-11-11 , DOI: arxiv-2011.05630
Zihan Liu and Jingwen Leng and Quan Chen and Chao Li and Wenli Zheng and Li Li and Minyi Guo

Many hardware vendors have introduced specialized deep neural networks (DNN) accelerators owing to their superior performance and efficiency. As such, how to generate and optimize the code for the hardware accelerator becomes an important yet less explored problem. In this paper, we perform the compiler-stage optimization study using a novel and representative Cambricon DNN accelerator and demonstrate that the code optimization knobs play an important role in unleashing the potential of hardware computational horsepower. However, even only two studied code optimization knobs, namely the number of cores and layer fusion scheme, present an enormous search space that prevents the naive brute-force search. This work introduces a joint, auto-tuning optimization framework to address this challenge. We first use a set of synthesized DNN layers to study the interplay between the hardware performance and layer characteristics. Based on the insights, we extract the operation count and feature map channel size as each layer's characteristics and derive a joint optimization strategy to decide the performance-optimal core number and fusion scheme. We evaluate the performance of the proposed approach using a set of representative DNN models and show that it achieves the minimal of 3.6x and the maximal of 7.9x performance speedup compared to no optimization baseline. We also show that the achieved speedup is close to the oracle case that is based on a reduced brute-force search but with much less search time.

中文翻译:

DLFusion:深度神经网络加速器层融合的自动调优编译器

由于其卓越的性能和效率,许多硬件供应商推出了专门的深度神经网络 (DNN) 加速器。因此,如何为硬件加速器生成和优化代码成为一个重要但较少探索的问题。在本文中,我们使用新颖且具有代表性的 Cambricon DNN 加速器执行编译器阶段优化研究,并证明代码优化旋钮在释放硬件计算能力的潜力方面发挥着重要作用。然而,即使只有两个研究的代码优化旋钮,即内核数量和层融合方案,也呈现出巨大的搜索空间,可以防止天真的蛮力搜索。这项工作引入了一个联合的、自动调整的优化框架来应对这一挑战。我们首先使用一组合成的 DNN 层来研究硬件性能和层特征之间的相互作用。基于这些见解,我们提取操作数和特征图通道大小作为每一层的特征,并推导出联合优化策略来决定性能最优的核心数和融合方案。我们使用一组具有代表性的 DNN 模型评估了所提出方法的性能,并表明与没有优化基线相比,它实现了 3.6 倍的最小值和 7.9 倍的最大性能加速。我们还表明,实现的加速接近基于减少蛮力搜索但搜索时间少得多的 oracle 案例。我们提取操作计数和特征图通道大小作为每一层的特征,并推导出联合优化策略来决定性能最优的核心数和融合方案。我们使用一组具有代表性的 DNN 模型评估了所提出方法的性能,并表明与没有优化基线相比,它实现了 3.6 倍的最小值和 7.9 倍的最大性能加速。我们还表明,实现的加速接近基于减少蛮力搜索但搜索时间少得多的 oracle 案例。我们提取操作计数和特征图通道大小作为每一层的特征,并推导出联合优化策略来决定性能最优的核心数和融合方案。我们使用一组具有代表性的 DNN 模型评估了所提出方法的性能,并表明与没有优化基线相比,它实现了 3.6 倍的最小值和 7.9 倍的最大性能加速。我们还表明,实现的加速接近基于减少蛮力搜索但搜索时间少得多的 oracle 案例。我们使用一组具有代表性的 DNN 模型评估了所提出方法的性能,并表明与没有优化基线相比,它实现了 3.6 倍的最小值和 7.9 倍的最大性能加速。我们还表明,实现的加速接近基于减少蛮力搜索但搜索时间少得多的 oracle 案例。我们使用一组具有代表性的 DNN 模型评估了所提出方法的性能,并表明与没有优化基线相比,它实现了 3.6 倍的最小值和 7.9 倍的最大性能加速。我们还表明,实现的加速接近基于减少蛮力搜索但搜索时间少得多的 oracle 案例。
更新日期:2020-11-12
down
wechat
bug