FeCaffe:基于 OpenCL 在 Intel Stratix 10 上实现深度学习训练与推理的 FPGA 加速 Caffe
分布式、并行与集群计算
2020-03-24 v1 机器学习
摘要
近年来,深度学习和卷积神经网络 (CNN) 因在分类、检测与识别领域相比传统方法能提供更好精度与结果,在学术与工业界变得愈发流行与重要。目前市场上有许多流行的深度学习开发框架,如 Caffe、TensorFlow、Pytorch,且大多数框架原生支持 CPU 并默认将 GPU 视为主流加速器。FPGA 器件作为潜在的异构平台,在流行框架中仍无法为 CNN 开发提供全面支持,尤其是训练阶段。本文首先提出 FeCaffe,即 FPGA-enabled Caffe,一种基于 Caffe 的层次化软硬件设计方法,使 FPGA 能够支持主流深度学习开发特性,例如使用 Caffe 进行训练与推理。此外,我们以若干经典 CNN 网络为例用 FeCaffe 提供基准测试,并相应详细分析核执行时间。最后,从 FPGA 核设计、系统流水线、网络架构、用户用例应用与异构平台层面逐步提出若干优化方向,以提升 FeCaffe 性能与效率。结果表明,所提 FeCaffe 能够分别以高度的设计灵活性、可扩展性与可重用性,在 CNN 网络训练与推理中支持几乎全部特性。相较先前研究,我们的架构可支持更多网络与训练设置,且当前配置对 LeNet 的前向与反向分别实现 6.4x 与 8.4x 的平均执行时间提升。
引用
@article{arxiv.1911.08905,
title = {FeCaffe: FPGA-enabled Caffe with OpenCL for Deep Learning Training and Inference on Intel Stratix 10},
author = {Ke He and Bo Liu and Yu Zhang and Andrew Ling and Dian Gu},
journal= {arXiv preprint arXiv:1911.08905},
year = {2020}
}
备注
11 pages, 7 figures and 4 tables