Skip to main content
QUICK REVIEW

[论文解读] ZigZag: A Memory-Centric Rapid DNN Accelerator Design Space Exploration Framework

Linyan Mei, Pouya Houshmand|arXiv (Cornell University)|Jul 22, 2020
Parallel Computing and Optimization Techniques参考文献 22被引用 14
一句话总结

ZigZag 是一种以内存为中心的快速 DNN 加速器设计空间探索(DSE)框架,可实现对灵活内存层次结构中所有偶数和非偶数时间映射的完整探索。通过采用以内存为中心的嵌套循环表示法和增强延迟的分析成本模型,与以往框架相比,它能识别出多达 33% 更节能的设计,尤其在非共享内存层次结构中,空间展开对效率的影响显著。

ABSTRACT

Building efficient embedded deep learning systems requires a tight co-design between DNN algorithms, memory hierarchy, and dataflow. However, owing to the large degrees of freedom in the design space, finding an optimal solution through the implementation of individual design points becomes infeasible. Recently, several estimation frameworks for fast design space exploration (DSE) have emerged, yet they either suffer from long runtimes or a limited exploration space. This work introduces ZigZag, a memory-centric rapid DNN accelerator DSE framework which extends the DSE with uneven mapping opportunities, in which operands at shared memory levels are no longer bound to use the same memory levels for each loop index. For this, ZigZag uses a memory-centric nested-for-loop format as a uniform representation to integrate algorithm, accelerator, and algorithm-to-accelerator mapping, and consists of three key components: 1) a latency-enhanced analytical Hardware Cost Estimator, 2) a Temporal Mapping Generator that supports even/uneven scheduling on any type of memory hierarchy, and 3) an Architecture Generator that explores the whole memory hierarchy design space. Benchmarking experiments against existing frameworks, together with three case studies at different design abstraction levels show the strength of ZigZag. Up to 33% more energy-efficient solutions are found by introducing ZigZag's uneven scheduling opportunities.

研究动机与目标

  • 为在嵌入式系统中应对功耗和面积约束下高效探索庞大的 DNN 加速器设计空间的挑战。
  • 克服现有 DSE 框架的局限性,这些框架将探索限制在偶数映射或共享内存层次结构中。
  • 通过联合优化算法到硬件的映射、内存层次结构和数据流调度,实现 Pareto 最优加速器设计的发现。
  • 提供一种快速、分析性且准确的成本估算方法,支持在各种内存配置下对偶数和非偶数调度进行评估。
  • 证明空间展开和内存层次结构设计对能量效率有显著影响,尤其在内存层级未在操作数之间共享时。

提出的方法

  • ZigZag 使用以内存为中心的嵌套 for 循环表示法,统一算法、加速器和映射设计空间。
  • 它基于循环相关性原理,采用硬件成本估算器,以低开销分析计算能量和吞吐量。
  • 时间映射生成器支持偶数和非偶数的循环阻塞方案,实现对任意内存层次结构的灵活调度。
  • 架构生成器探索所有有效内存层次结构的空间,包括平衡/非平衡以及共享/独立配置。
  • 该框架将这些组件集成到统一的 DSE 流程中,实现对高维设计空间的快速、分析性探索。
  • 它支持固定和完全灵活的硬件模板,允许从高层约束到详细内存配置的探索。

实验结果

研究问题

  • RQ1DSE 框架能否在支持偶数和非偶数时间映射的同时,实现对 DNN 加速器设计空间的快速且准确的探索?
  • RQ2当操作数之间不共享内存层级时,空间展开对能量效率的影响如何?
  • RQ3非偶数调度在多大程度上可扩展设计空间,并相比偶数调度带来更节能的解决方案?
  • RQ4支持可配置内存旁路和操作数重分配的片上网络(NoC)是否值得承担其面积和功耗开销,以实现工作负载特定的内存层次结构?
  • RQ5当处理单元阵列完全映射时,空间展开对能量影响可忽略的假设是否在所有内存层次结构设计中均成立?

主要发现

  • 通过支持非偶数调度,ZigZag 在现有框架基础上发现多达 33% 更节能的设计,尤其在非共享内存层次结构中表现显著。
  • 当内存层级未在操作数之间共享时,空间展开对能量效率的影响最高可达 5 倍,与先前假设相矛盾。
  • 在共享内存层次结构中,时间映射可补偿因空间展开导致的数据重用不平衡,从而降低其能量影响。
  • 对于非共享内存层次结构,空间展开的选择显著影响能量效率,原因在于调度灵活性降低。
  • 像 MobileNetV2 这类工作负载可从定制内存层次结构中受益,且具备可配置内存旁路的片上网络可将推理成本降低高达 30%。
  • 该框架的分析成本模型具有高精度且运行时开销极低,可实现每层数百个设计点的快速探索。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

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