吴欣欣 欧 焱 李文明 王 达 张 浩 范东睿
1(计算机体系结构国家重点实验室(中国科学院计算技术研究所) 北京 100190)
2(中国科学院计算技术研究所 北京 100190)
3(中国科学院大学计算机科学与技术学院 北京 100049)
由于严格的计算、存储、能耗等资源的限制,领域专用加速器[1-2]成为CPU和GPU的可替代方案.随着应用的不断发展,卷积神经网络(convolutional neural network, CNN)模型也随之变得庞大和复杂.例如Alexnet[3]和VGG16[4]中分别包含6 000万、1.38亿个参数.庞大的参数对加速器的计算、访存产生沉重的负担.为有效缓解这些问题,提出了很多减少模型参数的方法,如剪枝[5]、低秩分解[6]等.这些方法利用模型参数的冗余特性[7]将密集网络变成稀疏网络.由于CPU和GPU处理稀疏网络效率很低,近年来出现了许多领域专用的稀疏网络加速器[8-13],它们能够充分发挥稀疏网络计算和存储的优势从而实现高能效.
然而由于算法和结构的强耦合性,这些领域专用加速器牺牲了灵活的结构特性,这使它们很难应用新的算法.例如Dadiannao[14]加速器由于没有稀疏支持所以不能加速稀疏网络.Cnvlution[8]则是完全修改Dadiannao的结构以实现对稀疏网络的支持.SCNN[9],EIE[10],ESE[11]等加速器在很好地支持了稀疏网络后却不支持密集网络.
粗粒度数据流架构通过灵活的指令调度实现不同的应用.其在大数据、科学计算[15]、神经网络[16]等领域的应用中表现出良好的灵活性、性能和能效优势.粗粒度数据流架构由相对简单的控制电路组成处理单元阵列,阵列之间可以直接通信,从而避免了……