Skip to main content
QUICK REVIEW

[论文解读] Reuse Kernels or Activations? A Flexible Dataflow for Low-latency Spectral CNN Acceleration

Yue Niu, Rajgopal Kannan|arXiv (Cornell University)|Oct 17, 2023
Advanced Neural Network Applications被引用 4
一句话总结

该论文提出了一种灵活的数据流与调度框架,用于在FPGA上实现低延迟的谱卷积神经网络(CNN)加速,通过优化核与激活之间的数据重用,减少片外带宽。通过采用近似精确覆盖调度算法和动态数据流选择,该设计在Xilinx Alveo U200上实现了VGG16的9 ms推理延迟,数据传输量减少42%,并仅使用10个输入副本即达到90%的DSP利用率。

ABSTRACT

Spectral-domain CNNs have been shown to be more efficient than traditional spatial CNNs in terms of reducing computation complexity. However they come with a `kernel explosion' problem that, even after compression (pruning), imposes a high memory burden and off-chip bandwidth requirement for kernel access. This creates a performance gap between the potential acceleration offered by compression and actual FPGA implementation performance, especially for low-latency CNN inference. In this paper, we develop a principled approach to overcoming this performance gap and designing a low-latency, low-bandwidth, spectral sparse CNN accelerator on FPGAs. First, we analyze the bandwidth-storage tradeoff of sparse convolutional layers and locate communication bottlenecks. We then develop a dataflow for flexibly optimizing data reuse in different layers to minimize off-chip communication. Finally, we propose a novel scheduling algorithm to optimally schedule the on-chip memory access of multiple sparse kernels and minimize read conflicts. On a state-of-the-art FPGA platform, our design reduces data transfers by 42\% with DSP utilization up to 90\% and achieves inference latency of 9 ms for VGG16, compared to the baseline state-of-the-art latency of 68 ms.

研究动机与目标

  • 为解决谱卷积神经网络中模型压缩与实际FPGA实现之间的性能差距,特别是针对低延迟推理场景。
  • 识别并缓解压缩谱卷积神经网络中由稀疏核访问引起的通信瓶颈。
  • 设计一种统一的、可实时自适应的数据流,以优化不同卷积层之间的数据重用。
  • 通过一种新颖的调度算法,最小化片上内存读冲突并最大化处理单元(PE)利用率,以应对非规则稀疏核访问。
  • 在现代FPGA平台上实现高硬件效率,同时保持低片外带宽和低推理延迟。

提出的方法

  • 对谱卷积层的复杂度进行分析,以量化带宽-存储权衡关系,并识别特定层的瓶颈。
  • 设计一种灵活的数据流,可按层动态选择最优数据重用策略(核重用或激活重用),以最小化片外数据传输。
  • 实现一种统一的硬件架构,支持根据层特征动态重构数据流。
  • 提出一种基于近似精确覆盖的调度算法,以最优方式调度多个稀疏核的片上内存访问,最小化读冲突,且仅需少量输入副本。
  • 该调度算法不假设核稀疏模式的结构约束,从而可推广至任意稀疏核。
  • 该设计在Xilinx Alveo U200 FPGA上实现,采用16位定点数运算,支持64个并行核和10个输入副本以实现最佳性能。

实验结果

研究问题

  • RQ1如何对稀疏谱卷积层中的带宽-存储权衡进行解析建模,并用于识别通信瓶颈?
  • RQ2在不同谱卷积神经网络层中,核重用与激活重用哪种数据重用策略能实现最低的片外通信成本?
  • RQ3如何调度稀疏核引起的非规则片上内存访问模式,以最小化读冲突并最大化PE利用率?
  • RQ4能否设计一种无需模式约束的通用调度算法,适用于多种稀疏核稀疏模式?
  • RQ5通过在FPGA上结合灵活数据流与最优调度,谱卷积神经网络的硬件效率可提升到何种程度?

主要发现

  • 所提出的灵活数据流在Alveo U200 FPGA上实现的VGG16中,相比基线方案减少了42%的片外数据传输。
  • VGG16的推理延迟降低至9 ms,相比最先进的基线方案(68 ms)提升了7.5倍。
  • 仅使用10个输入副本,DSP利用率最高达到90%,表明硬件效率极高。
  • 近似精确覆盖调度算法即使在随机稀疏模式下也能实现接近最优的PE利用率,与ADMM剪枝核在α=4时性能相当。
  • 片外带宽达到12 GB/s,远低于基线系统缩放版本为满足9 ms延迟目标所需的70 GB/s。
  • FPGA占用面积为器件总面积的70%,表明设计受面积与带宽双重限制,进一步的资源扩展受限于布线与面积开销。

更好的研究,从现在开始

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

无需绑定信用卡

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