Skip to main content
QUICK REVIEW

[论文解读] DNN Dataflow Choice Is Overrated.

Xuan Yang, Mingyu Gao|arXiv (Cornell University)|Sep 10, 2018
Advanced Neural Network Applications被引用 34
一句话总结

本文挑战了数据流选择在DNN加速器设计中至关重要的假设,表明Halide的调度语言能够表达所有主要的DNN加速器。通过优化分块和内存层次结构而非数据流,作者在Eyeriss的基础上实现了高达4.2倍的能效提升,其中2.6倍来自寄存器文件的减少,额外25%来自增加一个内存层级。

ABSTRACT

Many DNN accelerators have been proposed and built using different microarchitectures and program mappings. To fairly compare these different approaches, we modified the Halide compiler to produce hardware as well as CPU and GPU code, and show that Halide's existing scheduling language has enough power to represent all existing dense DNN accelerators. Using this system we can show that the specific dataflow chosen for the accelerator is not critical to achieve good efficiency: many different dataflows yield similar energy efficiency with good performance. However, finding the best blocking and resource allocation is critical, and we achieve a 2.6X energy savings over Eyeriss system by reducing the size of the local register file. Adding an additional level in the memory hierarchy saves an additional 25%. Based on these observations, we develop an optimizer that automatically finds the optimal blocking and storage hierarchy. Compared with Eyeriss system, it achieves up to 4.2X energy improvement for Convolutional Neural Networks (CNNs), 1.6X and 1.8X improvement for Long Short-Term Memories (LSTMs) and multi-layer perceptrons (MLPs) respectively.

研究动机与目标

  • 探究数据流选择是否显著影响DNN加速器的能效。
  • 评估调度与内存层次结构在实现高性能和低功耗中的作用。
  • 开发一种自动化优化器,以找到DNN工作负载的最优分块与存储层次结构。
  • 将所提出的方法与Eyeriss等现有加速器在能效和性能方面进行比较。

提出的方法

  • 扩展Halide编译器以生成硬件、CPU和GPU代码,实现跨平台的公平比较。
  • 使用Halide的调度语言表达并评估所有现有的密集型DNN加速器。
  • 系统性地探索分块参数与资源分配,以最小化能量消耗。
  • 引入额外的内存层次结构以减少对外部内存的访问。
  • 使用自定义优化器自动化搜索最优分块与存储配置。
  • 在生成的硬件上测量CNN、LSTM和MLP的性能与能效。

实验结果

研究问题

  • RQ1数据流架构的选择是否显著影响DNN加速器的能效?
  • RQ2Halide的调度语言是否能够表达所有已知的DNN加速器微架构?
  • RQ3与数据流选择相比,分块与内存层次结构设计对能效的影响有多关键?
  • RQ4减少本地寄存器文件大小对能量消耗有何影响?
  • RQ5自动化优化器能否在能效方面超越手工调优的设计(如Eyeriss)?

主要发现

  • 数据流选择对能效的影响极小;多种不同的数据流可实现相似的性能与效率。
  • 仅通过减少本地寄存器文件大小,即可在Eyeriss系统基础上实现2.6倍的能效提升。
  • 增加一个额外的内存层级可带来额外25%的能效降低。
  • 所提出的优化器在卷积神经网络(CNNs)上相比Eyeriss实现了高达4.2倍的能效提升。
  • 对于LSTM和多层感知机(MLPs),该方法分别实现了1.6倍和1.8倍的能效提升。
  • Halide的调度语言表达能力足够强,可完整表示所有现有的密集型DNN加速器,从而实现公平且系统的评估。

更好的研究,从现在开始

从论文设计到论文写作,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。