[发明专利]一种深度神经网络推断处理器的访存性能提升方法在审
申请号: | 202210394533.7 | 申请日: | 2022-04-13 |
公开(公告)号: | CN114819124A | 公开(公告)日: | 2022-07-29 |
发明(设计)人: | 赵宏智;张芳 | 申请(专利权)人: | 北京交通大学 |
主分类号: | G06N3/063 | 分类号: | G06N3/063;G06N3/04;G06N5/04;G06F3/06 |
代理公司: | 北京市诚辉律师事务所 11430 | 代理人: | 杨帅峰;岳东升 |
地址: | 100044 北*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 深度 神经网络 推断 处理器 性能 提升 方法 | ||
本发明公开一种深度神经网络推断处理器的访存性能提升方法,所述方法包括:排序队列,其根据访存请求的内存行地址和读写属性将访存请求缓存在不同的队列中;访存请求分流模块,将所有的访存请求按内存行地址和读写属性分流到不同的排序队列中,并采用分流记录表来记录每个队列的队尾访存请求的地址;多路选择器,其作用是在感知模块的控制下选择某一队列的输出通道将该队列中所有的访存请求发内存;队列感知模块,其感知队列的长度变化和时间变化,决策选择将哪一队列的访存请求发往内存。本发明通过对访存请求序列进行排序,能够有效提升内存的行缓冲命中率,降低深度神经网络推断处理器的访存延时,且易于实现。
技术领域
本发明属于微处理器体系结构设计领域。更具体地,涉及一种深度神经网络推断处理器的访存性能提升方法。
背景技术
深度神经网络(Deep Neural Networks,DNN)凭借其强大的数据表示能力和学习能力,被广泛应用于图像识别、目标检测等领域。但是随着应用场景和需求的增多,DNN的性能要求越来越严苛,其网络规模越来越大,参数量和计算量也急剧增长。庞大的参数量和运算量意味着对内存的访存密集和计算密集,DNN推断任务在通用处理器上执行会花费大量的时间,难以满足应用需求。采用专用的DNN推断处理器来执行DNN推断任务成为了一种必然趋势。
但是,由于算力提升速度快于内存提升速度,DNN推断处理器也不可避免地迎来了“内存墙”问题,对内存的访问延时已成为影响DNN推断处理器性能的最大瓶颈。谷歌在TPUv1上进行的测试实验也表明,6种人工智能算法中的5个都受内存限制,并且对其中的CNN1进行分析,大约35%的周期都用来等待权重从内存加载到矩阵单元,23%的周期因流水线中的写后读(Read After Write,RAW)依赖性而停顿。因此对访存操作进行优化加速成为了DNN推断处理器设计中迫在眉睫的研究工作。
当前计算机体系中普遍使用DDR DRAM作为处理器的内存。由于DRAM在存储结构上采用多维层次结构(DDR1至DDR3是以存储体、行、列组织的三维结构,DDR4以后是在三维基础上增加了存储体组的四维结构)以及DRAM的时序和资源约束,对其任意地址进行访存的时间并非是相等的,即DRAM具有不均匀访存时间特性。当内存响应一个来自处理器的访存请求时,会将该请求想访存的存储单元所在的内存行中所有存储单元的内容通过行激活操作移到内存行缓冲区中,若下一个请求访存的存储单元仍在该内存行中,则直接通过列访问操作在内存行缓冲中读写数据,即内存行缓冲命中。否则,还需要额外地使用预充电操作将行缓冲写回到内存相应行,再用行激活操作将此刻访存的存储单元所在行刷新到行缓冲内,这些额外的操作将增加内存对访存请求的响应延时,具体可以参考JEDEC标准。例如,相继对同一存储体的不同行进行访存则会因为行缓冲冲突产生较高的访存延时,而相继对同一存储体同一行进行访存则行缓冲命中率很高,从而产生较低的访存延时。可见,在给定访存请求数目的情况下,访存请求到达顺序的不同,会导致行缓冲命中率的不同,进而造成内存响应延时的不同。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京交通大学,未经北京交通大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210394533.7/2.html,转载请声明来源钻瓜专利网。