一种RRAM神经网络加速器的快速性能评估方法与流程
未命名
07-15
阅读:159
评论:0
一种rram神经网络加速器的快速性能评估方法
技术领域
1.本发明涉及存算一体计算领域,具体为一种rram神经网络加速器的快速性能评估方法。
背景技术:
2.深度学习模型最初被设计为在传统硬件的cpu或gpu上执行,其训练与推理都有着较高的计算复杂度和资源需求量,使得这些模型主要局限于应用在具有高性能计算机。阻变存储器rram常在存内计算领域作为电阻器件实现矩阵乘加(mac)计算的研究。为了能利用深度学习的优势,使用基于rram的加速器对其进行加速的设计被提出。
3.在现有技术中存在以下问题:1.硬件迭代优化速度不足,难以通过对不同特性的探索来寻找优化方向;2.难以对超大型任务进行性能评估。
技术实现要素:
4.本发明提供一种rram神经网络加速器的快速性能评估方法,包括以下步骤:s1.建立noc模型,设置当前神经网络加速器的可用带宽为bw,此次任务需读取的外部数据量为sz,通过sz/bw得到noc读取外部数据的周期数;s2.分析参加此次任务乘累加计算的数据量sz1和等效带宽bw1,由sz1/bw1得到从l1缓存读取乘累加计算数据需要的周期数;s3.分析此次神经网络任务的乘累加计算量macs和rram实现矩阵乘加计算能力ops,由macs/ops得到此次任务的乘累加计算时间;s4.分析此次任务乘累加计算结果的数据量sz2和等效带宽bw2,由sz2/bw2得到从l1缓存写入乘累加结果数据需要的周期数;s5.分析参加此次任务simd计算的数据量 sz3和等效带宽bw3,由sz3/bw3得到从l1缓存读取simd计算数据需要的周期数;s6.分析simd计算量is和simd计算能力ips,由is/ips得到此次任务的simd计算时间;s7.分析此次任务simd计算结果的数据量sz4和等效带宽bw4,由sz4/bw4得到从l1缓存写入simd结果数据需要的周期数;s8.通过noc模型,由当前神经网络加速器的可用带宽为bw,此次任务需写回的外部数据量为sz4,通过sz4/bw得到noc向外部写入结果数据的周期数;s9.分析任务连续流水执行的性能情况。
5.进一步地,所述noc模型的带宽由各个连接节点共享。
6.进一步地,所述s3-s7步骤均是通过神经网络结构进行分析得到所需的计算量与数据量,s2步骤通过神经网络结构和计算数据流进行分析得到所需的数据量sz1。
7.进一步地,所述s2、s4、s5、s7步骤均是通过l1缓存的硬件参数获取所需的等效带宽;s3步骤通过rram硬件结构分析得到所需的rram实现矩阵乘加计算能力ops;s6步骤通过硬件结构分析得到所需的simd计算能力ips。
8.进一步地,所述s3步骤中的rram实现矩阵乘加计算能力具体为每秒可执行乘累加操作数。
9.进一步地,所述s9步骤执行过程包括:将不同任务的noc读取外部数据、从l1缓存读取乘累加计算数据、乘累加计算、从l1缓存写入乘累加结果数据、从l1缓存读取simd计算
数据、simd计算、从l1缓存写入simd结果数据、noc向外部写入结果数据并行执行;将各个阶段所需周期最大值作为该任务的周期数,具体是将s1的noc读取外部数据、s2的l1缓存读取乘累加计算数据、s3的乘累加计算、s4的从l1缓存写入乘累加结果数据、s5的从l1缓存读取simd计算数据、s6的simd计算、s7的从l1缓存写入simd结果数据、s8的noc向外部写入结果数据的周期数中的最大值作为所需要的运行时间。
10.本发明提供一种rram神经网络加速器的快速性能评估方法,其有益效果为:1.能够大大加快硬件的迭代优化速度,通过对不同特性的探索来寻找优化方向;2.相较周期精确的仿真,其速度极快,可以对大型任务进行性能评估,可以完成原先几乎不可能的超大型任务评估;3.可以帮助软件和系统调度优化,通过快速提供性能结果,可以使软件和系统调度以此完成更多的优化。
附图说明
11.图1为本发明所述的一种rram神经网络加速器的快速性能评估方法的流程图。
具体实施方式
12.以下结合附图对本发明的实施方法进行详细说明,所描述的仅为部分实施例,并非全部实施例,为了清楚的目的,在附图及说明中省略了与本发明无关的表示及描述。
13.如图1所示,本发明提供一种rram神经网络加速器的快速性能评估方法,包括以下步骤:s1.建立noc模型,设置当前神经网络加速器的可用带宽为bw,此次任务需读取的外部数据量为sz,通过sz/bw得到noc读取外部数据的周期数;s2.分析参加此次任务乘累加计算的数据量sz1和等效带宽bw1,由sz1/bw1得到从l1缓存读取乘累加计算数据需要的周期数;s3.分析此次神经网络任务的乘累加计算量macs和rram实现矩阵乘加计算能力ops,由macs/ops得到此次任务的乘累加计算时间;s4.分析此次任务乘累加计算结果的数据量sz2和等效带宽bw2,由sz2/bw2得到从l1缓存写入乘累加结果数据需要的周期数;s5.分析参加此次任务simd计算的数据量 sz3和等效带宽bw3,由sz3/bw3得到从l1缓存读取simd计算数据需要的周期数;s6.分析simd计算量is和simd计算能力ips,由is/ips得到此次任务的simd计算时间;s7.分析此次任务simd计算结果的数据量sz4和等效带宽bw4,由sz4/bw4得到从l1缓存写入simd结果数据需要的周期数;s8.通过noc模型,由当前神经网络加速器的可用带宽为bw,此次任务需写回的外部数据量为sz4,通过sz4/bw得到noc向外部写入结果数据的周期数;s9.分析任务连续流水执行的性能情况。
14.其中,noc模型的带宽由各个连接节点共享;s3-s7步骤均是通过神经网络结构进行分析得到所需的计算量与数据量,s2步骤通过神经网络结构和计算数据流进行分析得到所需的数据量sz1;s2、s4、s5、s7步骤均是通过l1缓存的硬件参数获取所需的等效带宽;s3步骤通过rram硬件结构分析得到所需的rram实现矩阵乘加计算能力ops;s6步骤通过硬件结构分析得到所需的simd计算能力ips。其中,s3步骤中的rram实现矩阵乘加计算能力具体为每秒可执行乘累加操作数。
15.在s9步骤中,由于不同任务的noc读取外部数据、从l1缓存读取乘累加计算数据、乘累加计算、从l1缓存写入乘累加结果、从l1缓存读取simd计算数据、simd计算、从l1缓存写入simd结果、noc向外部写入结果数据可以并行执行,将各个阶段所需周期最大值作为该
任务的周期数。具体为s1步骤的noc读取外部数据的周期数、s2步骤的l1缓存读取乘累加计算数据的周期数、s3步骤的乘累加计算的周期数、s4步骤的从l1缓存写入乘累加结果的周期数、s5步骤的从l1缓存读取simd计算数据的周期数、s6步骤的simd计算的周期数、s7步骤的从l1缓存写入simd结果的周期数、s8步骤的noc向外部写入结果数据的周期数中的最大值作为所需要的运行时间。
16.本发明根据rram自己的硬件特性,建立了一种基于rram构建的快速性能评估方法。基于rram构建的快速性能评估方法有以下有益效果:1.能够大大加快硬件的迭代优化速度,通过对不同特性的探索来寻找优化方向;2.相较周期精确的仿真,其速度极快,可以对大型任务进行性能评估,可以完成原先几乎不可能的超大型任务评估;3.可以帮助软件和系统调度优化,通过快速提供性能结果,可以使软件和系统调度以此完成更多的优化。
17.以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。
技术特征:
1.一种rram神经网络加速器的快速性能评估方法,用于评估阻变存储器rram作为电阻器件实现矩阵乘加计算的性能,其特征在于,包括以下步骤:s1. 建立noc模型,设置当前神经网络加速器的可用带宽为bw,此次任务需读取的外部数据量为sz,通过sz/bw得到noc读取外部数据的周期数;s2.分析参加此次任务乘累加计算的数据量sz1和等效带宽bw1,由sz1/bw1得到从l1缓存读取乘累加计算数据需要的周期数;s3.分析此次神经网络任务的乘累加计算量macs和rram实现矩阵乘加计算能力ops,由macs/ops得到此次任务的乘累加计算时间;s4.分析此次任务乘累加计算结果的数据量sz2和等效带宽bw2,由sz2/bw2得到从l1缓存写入乘累加结果数据需要的周期数;s5.分析参加此次任务simd计算的数据量 sz3和等效带宽bw3,由sz3/bw3得到从l1缓存读取simd计算数据需要的周期数;s6.分析simd计算量is和simd计算能力ips,由is/ips得到此次任务的simd计算时间;s7.分析此次任务simd计算结果的数据量sz4和等效带宽bw4,由sz4/bw4得到从l1缓存写入simd结果数据需要的周期数;s8. 通过noc模型,由当前神经网络加速器的可用带宽为bw,此次任务需写回的外部数据量为sz4,通过sz4/bw得到noc向外部写入结果数据的周期数;s9. 分析任务连续流水执行的性能情况。2.根据权利要求1所述的一种rram神经网络加速器的快速性能评估方法,其特征在于,所述noc模型的带宽由各个连接节点共享。3.根据权利要求1所述的一种rram神经网络加速器的快速性能评估方法,其特征在于,所述s3-s7步骤均是通过神经网络结构进行分析得到所需的计算量与数据量,s2步骤通过神经网络结构和计算数据流进行分析得到所需的数据量sz1。4.根据权利要求1所述的一种rram神经网络加速器的快速性能评估方法,其特征在于,所述s2、s4、s5、s7步骤均是通过l1缓存的硬件参数获取所需的等效带宽;s3步骤通过rram硬件结构分析得到所需的rram实现矩阵乘加计算能力ops;s6步骤通过硬件结构分析得到所需的simd计算能力ips。5.根据权利要求1所述的一种rram神经网络加速器的快速性能评估方法,其特征在于,所述s3步骤中的rram实现矩阵乘加计算能力具体为每秒可执行乘累加操作数。6.根据权利要求1所述的一种rram神经网络加速器的快速性能评估方法,其特征在于,所述s9步骤执行过程包括:将不同任务的noc读取外部数据、从l1缓存读取乘累加计算数据、乘累加计算、从l1缓存写入乘累加结果数据、从l1缓存读取simd计算数据、simd计算、从l1缓存写入simd结果数据、noc向外部写入结果数据并行执行;将各个阶段所需周期最大值作为该任务的周期数,具体是将s1的noc读取外部数据、s2的l1缓存读取乘累加计算数据、s3的乘累加计算、s4的从l1缓存写入乘累加结果数据、s5的从l1缓存读取simd计算数据、s6的simd计算、s7的从l1缓存写入simd结果数据、s8的noc向外部写入结果数据的周期数中的最大值作为所需要的运行时间。
技术总结
本发明公开了一种RRAM神经网络加速器的快速性能评估方法,能够大大加快硬件的迭代优化速度,通过对不同特性的探索来寻找优化方向;相较周期精确的仿真,其速度极快,可以对大型任务进行性能评估,可以完成原先几乎不可能的超大型任务评估;可以帮助软件和系统调度优化,通过快速提供性能结果,可以使软件和系统调度以此完成更多的优化。调度以此完成更多的优化。调度以此完成更多的优化。
技术研发人员:景乃峰 熊大鹏 李涛
受保护的技术使用者:苏州亿铸智能科技有限公司
技术研发日:2023.04.13
技术公布日:2023/7/12
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
