深度学习加速器中存储和计算优化技术研究
发布时间:2021-03-03 09:11
深度卷积神经网络(DNNs)实现了高精度预测判定,在诸如语音识别、图像识别和自然语言处理等方面得到了广泛的应用。卷积神经网络存在计算密集和存储密集的特点。虽然高度并行的设备有效地满足了计算的需求,但能效仍然是一个需要解决的问题。在基础工作阶段,我们首先完成了一个包含三级存储层次(网络、片上缓存、片外存储)的模拟框架,可以对多种加速器结构进行模拟,并评估比较不同网络中对计算序列和数据布局的各种组合所产生性能功耗差异。之后,我们实现了一个脉动阵列结构的卷积神经网络加速器,平衡I/O与计算速度,对卷积操作进行并行计算。并对不同规模下的脉动阵列进行了性能与功耗评估,对脉动阵列的可扩展性进行了分析。在此基础上对加速器进行了存储以及计算上的优化。在计算优化方面,我们设计优化PE结构以实现权值重复优化,并设计两阶段阵列流动,用来完成先累加后相乘的步骤。过程中减少乘法操作,降低了片上的计算功耗。同时,利用量化后的权值索引进行流动,降低带宽需求。在存储优化方面,我们提出两个新的卷积计算模式:NHWCfine和NHWCcoarse。基于权值可缓存于片上这一事实,...
【文章来源】:国防科技大学湖南省 211工程院校 985工程院校
【文章页数】:67 页
【学位级别】:硕士
【部分图文】:
深度学习相关操作的能耗成本比较[29]
国防科技大学研究生院硕士学位论文第3页及通用性带来的限制,更多的人希望提供专用的深度神经网络计算加速。ASIC按照用户要求或特定系统的需求而设计、制造的集成电路。ASIC具有面积孝能效高等优势。其总体上优于其他三种硬件方案,但是其开发周期长,初始成本高昂等特点提高了进行ASIC芯片开发的门槛。本课题中我们更加关注具有灵活架构的FPGA。与GPU相比,基于FPGA的深度学习加速器由于其可编程专用性和出色的能效而受到越来越多的关注。GPU加速器的性能根据数据批量大小而不同,而FPGA加速器的性能对批量大小不敏感。研究表明,FPGA能效是GPU的10倍以上。此外,对于大多数情况,FPGA在滑动窗口应用程序的基准测试中提供比GPU更快的性能和更高的能效[49]。1.2研究意义1.2.1理论意义随着深度神经网络的发展,高精度预测伴随的是迅速增大的网络规模以及数据量,片上存储不足以存放计算数据。如图1.1所示,左图为各型号主流FPGA的片上BRAM总存储量,右图为深度神经网络VGG对于存储的需求。通过对比可以看出目前FPGA的片上存储量不足以将需要计算的网络数据存放于片上,需使用片下的存储。这其中引入了对于片外存储的访问这一过程。图1.1主流FPGA片上存储量与深度神经网络(VGG[28])存储需求的对比图1.2深度学习相关操作的能耗成本比较[29]
国防科技大学研究生院硕士学位论文第7页第二章基础知识及相关工作深度学习不断完善,在现实中的应用更加普遍,人们对其的性能要求越来越高。随着深度学习的网络结构朝着更深更大的趋势发展,其运算量与存储量也随之变大,对其提高能效比,合理利用存储资源已成为设计实现加速器中必须关注与解决的问题。目前国际上的研究也是多方面的。总起来讲,减少存储需求、提高计算能效的技术主要有以下几点:(1)权值压缩,包含权值修剪、量化、权值共享等技术;(2)跳零计算,有节制地跳过或去除对计算没有意义的零值;(3)权值重复,基于权值量化共享,同组特征值累加后再与权值相乘,减少乘法操作;(4)数据流设计,最大化利用片上存储级,读取频率较高的数据会存至离计算单元越近的存储级,包含层内与层间的数据流设计;(5)数据排布,通过改变多维度数据的存储方式,提升局部性,利用访存合并,减少存储器的访问量;(6)分块技术,充分发挥并行性,提高对资源的利用效率。下面将对这几个方面进行详细介绍。除上述课题相关的工作之外,为方便理解,本章也会对课题的基础进行介绍,包括卷积神经网络结构与计算特点、脉动阵列以及一种低精度的LeNet加速器。2.1深度学习概念及相关知识2.1.1深度学习概念图2.1人工智能下的深度学习[34]深度学习是人工智能广泛领域的一部分。人工智能是创造智能机器的科学和
本文编号:3061010
【文章来源】:国防科技大学湖南省 211工程院校 985工程院校
【文章页数】:67 页
【学位级别】:硕士
【部分图文】:
深度学习相关操作的能耗成本比较[29]
国防科技大学研究生院硕士学位论文第3页及通用性带来的限制,更多的人希望提供专用的深度神经网络计算加速。ASIC按照用户要求或特定系统的需求而设计、制造的集成电路。ASIC具有面积孝能效高等优势。其总体上优于其他三种硬件方案,但是其开发周期长,初始成本高昂等特点提高了进行ASIC芯片开发的门槛。本课题中我们更加关注具有灵活架构的FPGA。与GPU相比,基于FPGA的深度学习加速器由于其可编程专用性和出色的能效而受到越来越多的关注。GPU加速器的性能根据数据批量大小而不同,而FPGA加速器的性能对批量大小不敏感。研究表明,FPGA能效是GPU的10倍以上。此外,对于大多数情况,FPGA在滑动窗口应用程序的基准测试中提供比GPU更快的性能和更高的能效[49]。1.2研究意义1.2.1理论意义随着深度神经网络的发展,高精度预测伴随的是迅速增大的网络规模以及数据量,片上存储不足以存放计算数据。如图1.1所示,左图为各型号主流FPGA的片上BRAM总存储量,右图为深度神经网络VGG对于存储的需求。通过对比可以看出目前FPGA的片上存储量不足以将需要计算的网络数据存放于片上,需使用片下的存储。这其中引入了对于片外存储的访问这一过程。图1.1主流FPGA片上存储量与深度神经网络(VGG[28])存储需求的对比图1.2深度学习相关操作的能耗成本比较[29]
国防科技大学研究生院硕士学位论文第7页第二章基础知识及相关工作深度学习不断完善,在现实中的应用更加普遍,人们对其的性能要求越来越高。随着深度学习的网络结构朝着更深更大的趋势发展,其运算量与存储量也随之变大,对其提高能效比,合理利用存储资源已成为设计实现加速器中必须关注与解决的问题。目前国际上的研究也是多方面的。总起来讲,减少存储需求、提高计算能效的技术主要有以下几点:(1)权值压缩,包含权值修剪、量化、权值共享等技术;(2)跳零计算,有节制地跳过或去除对计算没有意义的零值;(3)权值重复,基于权值量化共享,同组特征值累加后再与权值相乘,减少乘法操作;(4)数据流设计,最大化利用片上存储级,读取频率较高的数据会存至离计算单元越近的存储级,包含层内与层间的数据流设计;(5)数据排布,通过改变多维度数据的存储方式,提升局部性,利用访存合并,减少存储器的访问量;(6)分块技术,充分发挥并行性,提高对资源的利用效率。下面将对这几个方面进行详细介绍。除上述课题相关的工作之外,为方便理解,本章也会对课题的基础进行介绍,包括卷积神经网络结构与计算特点、脉动阵列以及一种低精度的LeNet加速器。2.1深度学习概念及相关知识2.1.1深度学习概念图2.1人工智能下的深度学习[34]深度学习是人工智能广泛领域的一部分。人工智能是创造智能机器的科学和
本文编号:3061010
本文链接:https://www.wllwen.com/kejilunwen/zidonghuakongzhilunwen/3061010.html