[论文解读] Comprehensive Evaluation of OpenCL-based Convolutional Neural Network Accelerators in Xilinx and Altera FPGAs
本文评估了在 Xilinx 和 Altera FPGA 上基于 OpenCL 的卷积神经网络(CNN)加速器在五层 CNN 上的表现,比较了硬件资源使用、综合时间、执行性能和设计可移植性。Xilinx 在综合速度和资源利用率方面表现更优;Altera 在执行时间、多平台支持和成熟工具链方面更具优势,凸显了 FPGA 加速深度学习时效率与性能之间的权衡。
Deep learning has significantly advanced the state of the art in artificial intelligence, gaining wide popularity from both industry and academia. Special interest is around Convolutional Neural Networks (CNN), which take inspiration from the hierarchical structure of the visual cortex, to form deep layers of convolutional operations, along with fully connected classifiers. Hardware implementations of these deep CNN architectures are challenged with memory bottlenecks that require many convolution and fully-connected layers demanding large amount of communication for parallel computation. Multi-core CPU based solutions have demonstrated their inadequacy for this problem due to the memory wall and low parallelism. Many-core GPU architectures show superior performance but they consume high power and also have memory constraints due to inconsistencies between cache and main memory. FPGA design solutions are also actively being explored, which allow implementing the memory hierarchy using embedded BlockRAM. This boosts the parallel use of shared memory elements between multiple processing units, avoiding data replicability and inconsistencies. This makes FPGAs potentially powerful solutions for real-time classification of CNNs. Both Altera and Xilinx have adopted OpenCL co-design framework from GPU for FPGA designs as a pseudo-automatic development solution. In this paper, a comprehensive evaluation and comparison of Altera and Xilinx OpenCL frameworks for a 5-layer deep CNN is presented. Hardware resources, temporal performance and the OpenCL architecture for CNNs are discussed. Xilinx demonstrates faster synthesis, better FPGA resource utilization and more compact boards. Altera provides multi-platforms tools, mature design community and better execution times.
研究动机与目标
- 评估并比较 Xilinx 和 Altera FPGA 上基于 OpenCL 的 CNN 加速器在实时推理中的表现。
- 分析两个平台在硬件资源利用率、综合时间及执行性能方面的表现。
- 评估 OpenCL 工具链在 FPGA 深度学习工作负载中的成熟度与实用性。
- 识别在设计生产力、性能和资源效率方面各平台的特定优势。
提出的方法
- 在 Xilinx 和 Altera FPGA 上使用 OpenCL 实现一个五层卷积神经网络。
- 利用 FPGA 中的嵌入式 BlockRAM 优化内存层次结构,减少数据移动。
- 在多个 FPGA 板卡上评估综合时间、资源利用率(LUTs、BRAMs、DSPs)和执行延迟。
- 比较 Xilinx 和 Altera 提供的 OpenCL 框架,重点关注代码可移植性和工具链成熟度。
- 在相同网络架构和输入数据下对推理性能进行基准测试。
- 分析多处理器 FPGA 配置中内存访问模式和平行效率。
实验结果
研究问题
- RQ1在 CNN 加速方面,Xilinx 和 Altera 的 OpenCL 框架在综合时间和资源利用率方面有何差异?
- RQ2对于五层 CNN,Xilinx 和 Altera FPGA 在推理执行时间上存在哪些性能差异?
- RQ3两个平台在设计生产力、工具链成熟度和可用开发资源方面有何不同?
- RQ4FPGA 优化的内存层次结构在两个平台上在多大程度上提升了 CNN 推理效率?
- RQ5在实时 CNN 推理中,哪个平台在性能、功耗效率和硬件资源使用之间提供了更好的权衡?
主要发现
- Xilinx 展现出更快的综合时间以及更优的 FPGA 资源利用率,从而实现更紧凑和高效的硬件实现。
- Altera 在相同 CNN 工作负载下实现了更低的执行时间,表明其在推理吞吐量方面性能更优。
- Altera 提供了更成熟的工具链和更广泛的多平台支持,提升了开发灵活性和可扩展性。
- 两个平台均有效利用了嵌入式 BlockRAM,以最小化内存瓶颈并提升 CNN 处理中的并行性。
- Xilinx 板卡更紧凑,表明在相同计算负载下具有更好的面积效率。
- 基于 OpenCL 的方法实现了两个平台间的可移植代码,尽管由于底层架构和工具链差异,性能存在显著差异。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。