System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及分布式计算,尤其涉及分布式计算架构下transformer模型映射方法。
技术介绍
1、transformer,是一种基于自注意力(self-attention)机制的深度神经网络,在自然语言处理、计算机视觉和视频分析等许多领域都取得了巨大的成功,自注意力机制被认为是存储密集的操作。
2、基于片上分布式存储的计算架构(如存内计算和近存计算加速器等)具有可扩展的高存储带宽、低访存开销以及大规模并行处理等优势,能有效缓解transformer模型的性能瓶颈,显著加速模型推理。
3、基于自注意力机制的transformer模型具有强大的全局建模能力,注意力计算的时间复杂度为o(n2),密集的全局注意力会导致过多的内存和计算成本,限制了模型的可扩展性。
技术实现思路
1、基于
技术介绍
存在的技术问题,本专利技术提出了分布式计算架构下transformer模型映射方法,给出最优的窗口注意力计算任务划分和映射方案,以最大化计算资源利用率,最小化transformer模型推理任务在分布式计算架构上的执行时间。
2、本专利技术提出的分布式计算架构下transformer模型映射方法,transformer模型由多个网络层串联而成,并且每个网络层会包含若干个基于注意力的计算任务分支,映射方法包括如下步骤:
3、s1:将单个窗口注意力计算任务分支进行划分并分配到p×h矩形分布的节点上,设定当前节点接收上一相邻节点的传递数据、并向下一相邻节点传
4、s2:设定划分后窗口注意力计算任务的映射策略和权重参数分摊策略;
5、s3:以在分布式计算芯片架构上最小化模型推理端到端的执行时间为目标,基于整数线性规划的划分映射算法,制定transformer模型所有阶段的网络层中窗口注意力计算任务的划分映射方案;
6、其中划分映射方案具体制定如下:
7、目标函数:
8、
9、约束条件:
10、
11、
12、
13、
14、para_volume+dynamic_volume≤given_capacity
15、其中,分别为窗口注意力计算任务划分后p×h矩阵的点乘计算时间、数据传输时间和权重共享时间,为网络模型第s阶段的网络层的数量,xs,i,j,u,v表示第s阶段的每个网络层上有i个窗口注意力任务在第j时间层上做us[u]×vs[v]的划分方式,1≤s≤nstage,us和vs表示数组,u和v分别表示数组us和vs的索引,表示网络模型第s阶段中同一网络层上的所有窗口注意力任务分批处理时的最大批次数量,等于窗口的数量表示网络模型第s阶段中同一网络层上的所有窗口注意力任务的数量,nstage表示网络模型有nstage个阶段,para_volume表示每个节点上的网络参数权重所需的储存空间,dynamic_volume表示网络推理计算时产生中间数据所需的储存空间,given_capacity表示节点的存储器空间,·表示乘积,nu,v表示窗口注意力任务的划分方式为us[u]×vs[v]时,芯片的计算节点阵列上能容纳的窗口注意力任务的最大数量,u表示窗口注意力任务中多头被划分为us[u]等份,v表示窗口注意力任务中斑块被划分为vs[v]等份,nums,j表示网络模型第s阶段中每个网络层在第j个时间层上窗口注意力任务的数量。
16、进一步地,在所述步骤s2:设定划分后窗口注意力计算任务的映射策略和权重参数分摊策略中,划分后窗口注意力计算任务的映射策略具体为:
17、并行处理:同一网络层transformer block上的窗口注意力计算任务分配到芯片的计算节点上并行处理;
18、分批处理:分批地并行处理窗口注意力计算任务,芯片的计算阵列具备处理多个窗口注意力计算任务能力;
19、等划分:同批次处理的窗口注意力计算任务采用同样的划分方式,不同的批次形成不同的时间层;
20、存储容量约束:在窗口注意力计算任务划分后,每个节点的存储单元保存当前窗口注意力计算任务的权重矩阵参数,同时存储当前窗口注意力计算任务的中间计算结果,所述权重参数和中间计算结果的存储空间不大于节点对应的存储单元的容量。
21、进一步地,在等划分中,被划分后的单个窗口注意力计算任务,由于节点间存在数据流,因而在同一时间层内处理。
22、进一步地,在所述步骤s2:设定划分后窗口注意力计算任务的映射策略和权重参数分摊策略中,划分后窗口注意力计算任务的权重参数分摊策略具体为:
23、权重矩阵按行划分被平均分摊到窗口注意力计算任务的节点阵列上;
24、不同批次的窗口注意力计算任务权重参数复用。
25、进一步地,在不同批次的窗口注意力计算任务权重参数复用中,具体包括:
26、条件1)已有所有权重参数:若单个存储单元包含窗口注意力计算任务的所有权重参数,则所有批次都重用上述权重参数;
27、条件2)划分方式相同:若不同批次的窗口注意力计算任务划分方式相同,则权重参数复用。
28、进一步地,不同批次的窗口注意力计算任务权重参数复用时,每个节点上权重参数para_volume和vols,j,具体如下:
29、para_volume=∑jvols,j
30、
31、参数复用转化为线性表达如下:
32、
33、
34、
35、其中,vols,j表示网络模型第s阶段的第j个网络层的权重参数所需的存储空间,cs表示transformer模型的第s阶段上特征尺寸,ys,j,j′,u,v表示网络模型第s阶段的第j个时间层和第j′时间层的划分方式,当ys,j,j′,u,v=0表示划分方式相同,当ys,j,j′,u,v=1表示划分方式不同,辅助二值变量zs,j,u,v表示网络模型第s阶段的第j个时间层是否重用其他批次的权重参数,当zs,j,u,v=0时表示不能重用其他批次的权重参数,当zs,j,u,v=1时表示会重用其他批次的权重参数,xs,i,j′,0,0表示第s阶段的每个网络层上有i个窗口注意力任务在第j′时间层上未做划分方式,也就是每个窗口在一个计算节点上处理,xs,i,j′,u,v表示第s阶段的每个网络层上有i个窗口注意力任务在第j′时间层上做us[u]×vs[v]的划分方式。
36、进一步地,在步骤s1:将窗口注意力计算任务划分成p×h份,并将划分后的窗口注意力计算任务分配到p×h矩形分布的节点上,设定当前节点接收上一相邻节点的传递数据、并向下一相邻节点传递数据,最后一个节点向第一个节点传递数据,p表示多头注意力的斑块,h表示多头注意力的头中,将窗口注意力计算任务划分成p×h份本文档来自技高网...
【技术保护点】
1.分布式计算架构下Transformer模型映射方法,其特征在于,Transformer模型由多个网络层串联而成,并且每个网络层会包含若干个基于注意力的计算任务分支,映射方法包括如下步骤:
2.根据权利要求1所述的分布式计算架构下Transformer模型映射方法,其特征在于,在所述步骤S2:设定划分后窗口注意力计算任务的映射策略和权重参数分摊策略中,划分后窗口注意力计算任务的映射策略具体为:
3.根据权利要求2所述的分布式计算架构下Transformer模型映射方法,其特征在于,在等划分中,被划分后的单个窗口注意力计算任务,由于节点间存在数据流,因而在同一时间层内处理。
4.根据权利要求1所述的分布式计算架构下Transformer模型映射方法,其特征在于,在所述步骤S2:设定划分后窗口注意力计算任务的映射策略和权重参数分摊策略中,划分后窗口注意力计算任务的权重参数分摊策略具体为:
5.根据权利要求4所述的分布式计算架构下Transformer模型映射方法,其特征在于,在不同批次的窗口注意力计算任务权重参数复用中,具体包括:
...【技术特征摘要】
1.分布式计算架构下transformer模型映射方法,其特征在于,transformer模型由多个网络层串联而成,并且每个网络层会包含若干个基于注意力的计算任务分支,映射方法包括如下步骤:
2.根据权利要求1所述的分布式计算架构下transformer模型映射方法,其特征在于,在所述步骤s2:设定划分后窗口注意力计算任务的映射策略和权重参数分摊策略中,划分后窗口注意力计算任务的映射策略具体为:
3.根据权利要求2所述的分布式计算架构下transformer模型映射方法,其特征在于,在等划分中,被划分后的单个窗口注意力计算任务,由于节点间存在数据流,因而在同一时间层内处理。
4.根据权利要求1所述的分布式计算架构下transformer模型映射方法,其特征在于,在所述步骤s2:设定划分后窗口注意力计算任务的映射策略和权重参数分摊策略中,划分后窗口注意力计算任务的权重参数分摊策略具体为:
5.根据权利要求4所述的分布式计算架构下transform...
【专利技术属性】
技术研发人员:葛梦柯,康一,陈松,
申请(专利权)人:合肥综合性国家科学中心人工智能研究院安徽省人工智能实验室,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。