优化基于FPGA的深度卷积神经网络的加速器设计.docx
《优化基于FPGA的深度卷积神经网络的加速器设计.docx》由会员分享,可在线阅读,更多相关《优化基于FPGA的深度卷积神经网络的加速器设计.docx(8页珍藏版)》请在第一文库网上搜索。
1、优化基于FPGA的深度卷积神经网络的加速器设计CNN已经广泛用于图像识别,因为它能模仿生物视觉神经的行为获得很高识别准确率。最近,基于深度学习算法的现代应用高速增长进一步改善了研究和实现。特别地,多种基于屿平台的深度CNN加速器被提出,具有高性能、可重配置、快速开发周期等优势。尽管目前FPGA加速器已经展示了相比通用处理器更好的性能,加速器设计空间并没有很好发掘。一个严重的问题是,一个FPGA平台的计算吞吐并未很好匹配内存带宽。因此,已有的方案要么未充分利用逻辑资源,要么未充分利用内存带宽,都不能获得最佳性能。同时,深度学习应用不断增加的复杂度和可扩展性让这个问题更加严重。为了克服这个问题,我
2、们利用roof1ine模型提出一种设计分析方法。对于任意CNN设计方案,我们量化分析它使用不同优化技术(循环分块、变换)的计算吞吐和所需内存带宽。在roof1ine模型帮助下,我们可以发现最好性能和最低FPGA资源需求的解决方案。作为案例研究,我们在VC707FPGA板卡上实现了一个CNN加速器,并将它与之前的方案对比。我们的实现在IOOMHz工作频率下可获得61.62GF10PS的峰值处理能力,大大优于之前的方案。1.简介】CNN是著名的深度学习架构,从人工神经网络扩展而来,它已经大量用于不同应用,包括视频监控,移动机器人视觉,数据中心的图像搜索引擎等【6】781014受生物视觉神经行为的启
3、发,CNN用多层神经元相连处理数据,在图像识别中可获得很高准确率。最近,基于深度学习算法的现代应用快速增长进一步改善了区NN的研究。由于CNN的特殊计算模式,通用处理器实现CNN并不高效,所以很难满足性能需求。于是,最近基于FPGA,GPU甚至AS于的不同加速器被相继提出349以提升CNN设计性能。在这些方案中,基于FPGA的加速器由于其更好的性能,高能效,快速开发周期以及可重配置能力吸引了越来越多研究者的注意12361214O对于任意CNN算法实现,存在很多潜在解决方案,导致巨大的设计空间。在我们的实验中,我们发现使用同样FPGA逻辑资源的不同方案性能有最大90%差距。寻找最优解不无价值,尤
4、其当考虑FPGA平台计算资源和内存带宽限制时。实际上,如果一个加速器结构并未仔细设计,它的计算吞吐与内存带宽不匹配。未充分利用逻辑资源或内存带宽都意味着性能下降。不幸的是,FPGA技术进步和深度学习算法同时将该问题复杂化了。一方面,当前FPGA平台不断提升的逻辑资源和内存带宽扩大了设计空间,采取不同FPGA优化技术(如循环分块、变换)会进一步扩大设计空间。另一方面,为了满足现代应用需求,深度学习可扩展性和复杂性在持续增长。因此,在巨大的设计空间中寻找最优解就更加困难,亟需一种高效检索基于FPGA的CNN设计空间的方法。为了高效检索设计空间,本文提出了分析设计的方法。我们的工作优于以前的方法,原
5、因有二:首先,1,2,3,6,14主要关注计算引擎优化,要么忽视了外部存储器操作,要么直接将他们的加速器接入外部存储器。我们的工作则考虑了缓冲区管理和带宽优化。其次,【12】通过数据重用减少了外部数据获取从而获得加速。但是这种方法不必导致最优全局性能。另外他们的方法需要对每层重新配置,不太方便。我们的加速器无需重编翌FPGA就能执行不同层的计算。本文主要贡献如下:* 量化分析可能解决方案的计算吞吐和所需内存带宽;* 在计算资源和内存带宽限制下,我们用roof1ine模型识别所有可能的解决方案,讨论了不同层如何寻找最优解;* 我们提出一种CNN加速器设计,对每层使用统一的循环展开因子;* 实现了
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 优化 基于 FPGA 深度 卷积 神经网络 加速器 设计