Skip to main content
QUICK REVIEW

[论文解读] AutoDNNchip: An Automated DNN Chip Predictor and Builder for Both FPGAs and ASICs

Pengfei Xu, Xiaofan Zhang|Rare & Special e-Zone (The Hong Kong University of Science and Technology)|Jan 6, 2020
Advanced Neural Network Applications参考文献 37被引用 14
一句话总结

AutoDNNchip 是一个自动化框架,能够从 PyTorch 模型生成针对 FPGA 和 ASIC 的优化 DNN 加速器,采用基于图的架构空间表示和预测性芯片模型,实现端到端硬件生成,几乎无需人工干预。其性能最高可达业界最先进加速器的 3.86 倍,同时预测精度与实际测量值的偏差在 10% 以内。

ABSTRACT

Recent breakthroughs in Deep Neural Networks (DNNs) have fueled a growing demand for DNN chips. However, designing DNN chips is non-trivial because: (1) mainstream DNNs have millions of parameters and operations; (2) the large design space due to the numerous design choices of dataflows, processing elements, memory hierarchy, etc.; and (3) an algorithm/hardware co-design is needed to allow the same DNN functionality to have a different decomposition, which would require different hardware IPs to meet the application specifications. Therefore, DNN chips take a long time to design and require cross-disciplinary experts. To enable fast and effective DNN chip design, we propose AutoDNNchip - a DNN chip generator that can automatically generate both FPGA- and ASIC-based DNN chip implementation given DNNs from machine learning frameworks (e.g., PyTorch) for a designated application and dataset. Specifically, AutoDNNchip consists of two integrated enablers: (1) a Chip Predictor, built on top of a graph-based accelerator representation, which can accurately and efficiently predict a DNN accelerator's energy, throughput, and area based on the DNN model parameters, hardware configuration, technology-based IPs, and platform constraints; and (2) a Chip Builder, which can automatically explore the design space of DNN chips (including IP selection, block configuration, resource balancing, etc.), optimize chip design via the Chip Predictor, and then generate optimized synthesizable RTL to achieve the target design metrics. Experimental results show that our Chip Predictor's predicted performance differs from real-measured ones by < 10% when validated using 15 DNN models and 4 platforms (edge-FPGA/TPU/GPU and ASIC). Furthermore, accelerators generated by our AutoDNNchip can achieve better (up to 3.86X improvement) performance than that of expert-crafted state-of-the-art accelerators.

研究动机与目标

  • 为应对当前高效、领域专用 DNN 加速器设计耗时长且高度依赖专业知识的挑战。
  • 克服 DNN 算法与硬件架构之间复杂协同设计所导致的大规模设计空间问题。
  • 实现从高级 DNN 模型到 FPGA 和 ASIC 平台的高性能、可综合 RTL 代码的端到端自动化生成。
  • 在无需人工干预或专家级硬件知识的前提下,提供高精度的性能预测与高效的架构空间探索。

提出的方法

  • AutoDNNchip 使用基于图的加速器表示方法,统一建模 IP、架构和数据流层级的设计因素,支持灵活且可扩展的协同优化。
  • 引入芯片预测器(Chip Predictor),通过 DNN 模型参数、硬件配置、工艺 IP 和平台约束,对能耗、吞吐量、延迟和面积进行估计,误差小于 10%。
  • 芯片构建器(Chip Builder)通过选择最优 IP、配置模块、平衡资源并基于芯片预测器的预测结果映射数据流,实现自动化架构空间探索。
  • 通过生成针对目标硬件优化的数据流映射,支持 FPGA 和 ASIC 两种目标平台,输出可综合的 RTL 代码。
  • 通过支持同一 DNN 的多种分解策略,实现从算法到硬件的协同设计,探索多样化的性能、能耗与面积权衡。
  • 利用高层次综合与预验证硬件 IP,加速生成可投入生产的 RTL 代码,无需手动编写 RTL。

实验结果

研究问题

  • RQ1统一的设计空间表示能否有效建模 DNN 模型、硬件 IP 与数据流映射在 FPGA 和 ASIC 平台之间的相互作用?
  • RQ2基于机器学习的预测器能否仅使用高级 DNN 和硬件参数,以极低误差准确估计关键加速器指标(能耗、延迟、吞吐量、面积)?
  • RQ3由高精度预测引导的自动化架构空间探索,能否在性能和效率方面超越专家手工设计的加速器?
  • RQ4该框架在无需人工干预的情况下,生成高性能、可综合 RTL 代码的能力在 FPGA 和 ASIC 平台上的有效性如何?
  • RQ5生成的加速器在真实世界基准测试中,与当前最先进设计相比,性能提升的幅度有多大?

主要发现

  • 芯片预测器在 15 个 DNN 模型和 4 种平台(边缘 FPGA、TPU、GPU、ASIC)上均实现小于 10% 的预测误差,证明了其性能估计的高精度。
  • AutoDNNchip 生成的 FPGA 加速器在延迟方面最高可比业界最先进设计降低 3.86 倍,同时保持相近的能效(差异在 15% 以内)。
  • 在相同吞吐量约束下,AutoDNNchip 生成的 ASIC 加速器在能耗方面比 Shidiannao ASIC 提高 7.9% 至 58.3%。
  • 该框架成功为 FPGA 和 ASIC 平台生成了可综合的 RTL 代码,支持直接部署与验证。
  • 基于芯片预测器引导的设计空间探索,能够生成优于手工设计的优化配置,实现更高的性能与能效。
  • AutoDNNchip 的开源实现已公开发布于 https://github.com/RICE-EIC/AutoDNNchip.git,支持可复现性与社区扩展。

更好的研究,从现在开始

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

无需绑定信用卡

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