Skip to main content
QUICK REVIEW

[论文解读] A GPU-Outperforming FPGA Accelerator Architecture for Binary Convolutional Neural Networks

Yixing Li, Zichuan Liu|arXiv (Cornell University)|Feb 20, 2017
Advanced Neural Network Applications参考文献 25被引用 5
一句话总结

本文提出了一种针对二值卷积神经网络(BNNs)的FPGA加速器架构,通过大规模空间并行和深度流水线实现,相较于Titan X GPU,其小批量推理的吞吐量提高了8.3倍,能效提升了75倍。该设计通过利用位运算计算,在不同批量大小下均保持一致的高性能,从而在吞吐量和能效方面全面超越GPU。

ABSTRACT

FPGA-based hardware accelerators for convolutional neural networks (CNNs) have obtained great attentions due to their higher energy efficiency than GPUs. However, it is challenging for FPGA-based solutions to achieve a higher throughput than GPU counterparts. In this paper, we demonstrate that FPGA acceleration can be a superior solution in terms of both throughput and energy efficiency when a CNN is trained with binary constraints on weights and activations. Specifically, we propose an optimized FPGA accelerator architecture tailored for bitwise convolution and normalization that features massive spatial parallelism with deep pipelines stages. A key advantage of the FPGA accelerator is that its performance is insensitive to data batch size, while the performance of GPU acceleration varies largely depending on the batch size of the data. Experiment results show that the proposed accelerator architecture for binary CNNs running on a Virtex-7 FPGA is 8.3x faster and 75x more energy-efficient than a Titan X GPU for processing online individual requests in small batch sizes. For processing static data in large batch sizes, the proposed solution is on a par with a Titan X GPU in terms of throughput while delivering 9.5x higher energy efficiency.

研究动机与目标

  • 为解决基于FPGA的CNN加速器实现GPU级别吞吐量的挑战。
  • 通过利用二值权重和激活值,提升推理工作负载的能效。
  • 设计一种FPGA架构,确保在不同批量大小下均保持高性能,与GPU工作负载形成对比。
  • 证明FPGA在BNN推理中可同时超越GPU的吞吐量和能效。

提出的方法

  • 该架构采用大规模空间并行,以在位运算卷积操作中同时处理多个位。
  • 采用深度流水线阶段,以最大化吞吐量并维持计算单元的高利用率。
  • 该设计专为二值卷积和批量归一化而优化,最大限度减少冗余运算。
  • 通过避免吞吐量对批量大小的依赖,实现在小批量场景下保持高性能。
  • 优化了自定义数据流和内存访问模式,以降低延迟并最大化带宽利用率。
  • 在Virtex-7 FPGA上实现加速器,以评估实际性能和能效。

实验结果

研究问题

  • RQ1基于FPGA的加速器能否在二值卷积神经网络中实现高于GPU的吞吐量?
  • RQ2该FPGA设计是否能在不同批量大小下保持一致性能,而不同于GPU工作负载?
  • RQ3FPGA加速器能否在BNN推理中实现优于GPU的能效?
  • RQ4哪些架构优化使FPGA加速在BNN工作负载中超越GPU?

主要发现

  • 所提出的FPGA加速器在小批量推理(批量大小 = 1)中,吞吐量比Titan X GPU高出8.3倍。
  • 在小批量处理中,FPGA的能效比Titan X GPU高出75倍。
  • 在大批次场景下,FPGA的吞吐量与Titan X GPU相当,同时能效高出9.5倍。
  • FPGA的性能对批量大小不敏感,而GPU性能在小批量时显著下降。
  • 由于深度流水线和空间并行,加速器的吞吐量在不同工作负载下保持稳定。
  • 结果表明,FPGA加速在BNN推理中可同时超越GPU的吞吐量和能效。

更好的研究,从现在开始

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

无需绑定信用卡

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