DNNVM:利用异构优化的基于 FPGA 的 CNN 加速器端到端编译器
分布式、并行与集群计算
2019-07-26 v2 计算机视觉与模式识别
摘要
近年来,卷积神经网络(CNN)已成为多个AI领域的先进方法。日益复杂的 CNN 模型同时受计算与 I/O 限制。由自定义指令集架构(ISA)驱动的基于 FPGA 的加速器在通用性与效率间取得平衡,但仍有许多可优化之处。我们提出全栈编译器 DNNVM,其集成了图、循环与数据布局的优化器,以及汇编器、运行时支持环境与验证环境。DNNVM 在深度学习框架环境下工作,将 CNN 模型转换为有向无环图:XGraph。基于 XGraph,我们将数据布局与流水线的优化难题转化为图级问题。DNNVM 通过启发式子图同构算法枚举所有潜在有益的融合机会,以利用流水线与数据布局优化,并搜索整个计算图执行策略的最佳选择。在 Xilinx ZU2 @330 MHz 与 ZU9 @330 MHz 上,我们通过无优化的朴素实现在基准测试中达到了同等的先进性能,而借助 DNNVM 中的异构优化吞吐量进一步提升至多 1.26 倍。最终,在 ZU9 @330 MHz 上,我们为 VGG 与 ResNet50 实现了先进性能:VGG 吞吐量达 2.82 TOPs/s,能效为 123.7 GOPs/s/W;此外,ResNet50 达 1.38 TOPs/s,GoogleNet 达 1.41 TOPs/s。
引用
@article{arxiv.1902.07463,
title = {DNNVM : End-to-End Compiler Leveraging Heterogeneous Optimizations on FPGA-based CNN Accelerators},
author = {Yu Xing and Shuang Liang and Lingzhi Sui and Xijie Jia and Jiantao Qiu and Xin Liu and Yushun Wang and Yu Wang and Yi Shan},
journal= {arXiv preprint arXiv:1902.07463},
year = {2019}
}
备注
18 pages, 9 figures, 5 tables