Skip to main content
QUICK REVIEW

[论文解读] DNNExplorer: A Framework for Modeling and Exploring a Novel Paradigm of FPGA-based DNN Accelerator

Xiaofan Zhang, Hanchen Ye|arXiv (Cornell University)|Aug 28, 2020
Embedded Systems Design Techniques参考文献 34被引用 15
一句话总结

DNNExplorer 是一个框架,提出了一种新颖的基于FPGA的DNN加速器设计范式,通过将专用流水线阶段与可重用计算单元相结合,实现高性能、高针对性和可扩展性。通过利用动态设计空间和两级设计空间探索(DSE)引擎,该框架生成的优化加速器在吞吐量(GOP/s)上比最先进的DNNBuilder解决方案最高提升4.2倍,在DSP效率上比商用Xilinx DPU最高提升4.4倍。

ABSTRACT

Existing FPGA-based DNN accelerators typically fall into two design paradigms. Either they adopt a generic reusable architecture to support different DNN networks but leave some performance and efficiency on the table because of the sacrifice of design specificity. Or they apply a layer-wise tailor-made architecture to optimize layer-specific demands for computation and resources but loose the scalability of adaptation to a wide range of DNN networks. To overcome these drawbacks, this paper proposes a novel FPGA-based DNN accelerator design paradigm and its automation tool, called DNNExplorer, to enable fast exploration of various accelerator designs under the proposed paradigm and deliver optimized accelerator architectures for existing and emerging DNN networks. Three key techniques are essential for DNNExplorer's improved performance, better specificity, and scalability, including (1) a unique accelerator design paradigm with both high-dimensional design space support and fine-grained adjustability, (2) a dynamic design space to accommodate different combinations of DNN workloads and targeted FPGAs, and (3) a design space exploration (DSE) engine to generate optimized accelerator architectures following the proposed paradigm by simultaneously considering both FPGAs' computation and memory resources and DNN networks' layer-wise characteristics and overall complexity. Experimental results show that, for the same FPGAs, accelerators generated by DNNExplorer can deliver up to 4.2x higher performances (GOP/s) than the state-of-the-art layer-wise pipelined solutions generated by DNNBuilder for VGG-like DNN with 38 CONV layers. Compared to accelerators with generic reusable computation units, DNNExplorer achieves up to 2.0x and 4.4x DSP efficiency improvement than a recently published accelerator design from academia (HybridDNN) and a commercial DNN accelerator IP (Xilinx DPU), respectively.

研究动机与目标

  • 解决现有基于FPGA的DNN加速器存在的局限性,即在可重用性与性能之间妥协,或在针对性与可扩展性之间取舍。
  • 提出一种新型加速器设计范式,实现对多样化DNN模型的细粒度定制与可扩展性之间的平衡。
  • 开发一个自动化框架DNNExplorer,以实现对新范式下高维设计空间的快速、高效探索。
  • 同时优化FPGA资源约束(DSP、BRAM)与DNN层特性(计算-通信比、复杂度)。
  • 为现有及新兴的深度神经网络工作负载,提供优化的、应用特定的加速器架构。

提出的方法

  • 提出一种混合加速器设计范式,通过为高计算量层使用专用流水线阶段,为低计算量层使用可重用单元,实现性能与可扩展性的兼顾。
  • 定义一个动态设计空间,以捕捉在不同DNN模型和FPGA平台下,加速器参数的详细配置,包括任务划分、资源分配和批处理大小。
  • 采用两级DSE引擎:全局搜索用于高层架构决策,局部搜索用于精细调优,并引入早期终止机制以提升效率。
  • 利用性能建模技术,基于逐层DNN特性与FPGA约束,预测吞吐量与资源利用率。
  • 通过迭代探索,结合硬件资源限制与DNN工作负载需求,自动化生成优化的加速器配置。
  • 在DSE过程中采用分而治之策略,高效管理高维设计空间,实现在标准CPU上搜索时间低于数分钟。

实验结果

研究问题

  • RQ1结合专用流水线与可重用单元的混合FPGA加速器设计,是否能在吞吐量与效率方面超越现有的通用化或逐层流水化设计范式?
  • RQ2如何定义一个动态设计空间,以支持在多样化DNN模型与FPGA平台之间对加速器参数进行细粒度配置?
  • RQ3两级DSE引擎在满足FPGA资源约束的同时,能在多大程度上高效探索高维设计空间并最大化性能?
  • RQ4当目标为具有更多卷积层的深层DNN时,所提出的框架在可扩展性方面表现如何?
  • RQ5与最先进的DNN加速器(如DNNBuilder、HybridDNN和Xilinx DPU)相比,能实现多大的性能与效率提升?

主要发现

  • 对于一个38层的VGG类DNN,DNNExplorer在相同Xilinx KU115 FPGA上生成的加速器,其吞吐量最高比最先进的DNNBuilder解决方案高出4.2倍(GOP/s)。
  • 与通用型HybridDNN加速器相比,DNNExplorer在较小输入尺寸下DSP效率最高提升2.0倍,在较大输入尺寸下提升1.3倍。
  • 与商用Xilinx DPU IP相比,DNNExplorer在ZCU102 FPGA上实现了平均1.6倍的DSP效率提升,最小输入尺寸下峰值提升达4.4倍。
  • DNNExplorer的DSE引擎可在几分钟内(平均搜索时间)完成对高维设计空间的优化配置,即使面对12种不同输入尺寸和可变批处理大小也表现良好。
  • 该框架在深层网络中保持卓越性能:对于38层模型,DNNExplorer在吞吐量上比DNNBuilder高出4.2倍,展现出强大的可扩展性。
  • 吞吐量在不同输入尺寸下保持稳定,输入尺寸增大时性能下降极小,表明其具备出色的鲁棒性与适应性。

更好的研究,从现在开始

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

无需绑定信用卡

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