【技术实现步骤摘要】
【国外来华专利技术】用于减少数据移动的跳零稀疏技术
技术介绍
[0001]标量、向量和矩阵乘法是计算设备执行的常见计算。标量、向量和矩阵乘法运算常用于机器学习、人工智能、神经网络、数据分析等。例如,许多应用程序计算输入或激活矩阵和权重向量或矩阵的向量和/或矩阵乘法。该计算可以执行数百、数千甚至更多次。
[0002]请参考图1,c
×
r矩阵A与r行的列向量X的矩阵向量乘法包括X与A的每一行的点积。点积可以通过将矩阵A第一行中的每个元素与向量X列中的对应元素相乘,将其部分乘积相加,对矩阵A的每一行重复上述过程。矩阵
‑
矩阵乘法可以看作是多次矩阵
‑
向量乘法。在图2中示出c
×
r矩阵A和r
×
c矩阵X的示例性矩阵
‑
矩阵乘法。还要注意,当矩阵之一是单行矩阵(例如,行向量)或单列矩阵(例如,列向量)时,矩阵
‑
矩阵乘法和矩阵
‑
向量乘法是相同的。
[0003]现在参考图3,其示出了示例性稀疏矩阵。稀疏矩阵是其中大多数元素值为零的矩阵。相反,大多数元素值不为零的矩阵称为稠密矩阵。矩阵通常存储为二维数组。数组中的每个条目代表矩阵的一个元素a
i,j
,并通过两个索引i和j访问。对于m
×
n矩阵,存储矩阵所需的存储量与m
×
n成正比。对于稀疏矩阵,可以通过仅存储非零元素值来减少用于存储的存储量。有多种数据结构用于以压缩格式存储稀疏矩阵,包括但不限于键字典、列表列表、坐 ...
【技术保护点】
【技术特征摘要】
【国外来华专利技术】1.一种处理器,包括:处理器稀疏控制单元,所述处理器稀疏控制单元被配置为将存储器访问请求封装跳零稀疏命令中;命令接口,所述命令接口被配置为发送所述跳零稀疏命令并从第一组元素和第二组元素接收给定元素;所述处理器被配置为对所述第一组元素和第二组元素的各个给定元素执行计算操作以生成结果元素;和所述命令接口还被配置为发送所述结果元素。2.根据权利要求1的处理器,其中:所述第一组元素包括标量、向量或矩阵中的一种;和所述第二组元素包括标量、向量或矩阵中的一种。3.根据权利要求1所述的处理器,其中所述计算操作包括加法、减法、乘法或除法运算中的一种。4.如权利要求1所述的处理器,其特征在于,所述处理器稀疏控制单元包括:跳零命令单元,所述跳零命令单元被配置为生成所述跳零稀疏命令,所述跳零稀疏命令包括跳零命令指示符(TAGID)、计算操作码(OP)、第一和第二组元素的数据类型(DataType)、所述第一组元素(Addr1)、所述第二组元素的地址(Addr2)、计算结果的目标地址(Addrdst)和数据长度(length)。5.一种存储器,包括:存储单元阵列;命令接口,所述命令接口被配置为接收跳零稀疏命令;存储器稀疏控制单元,所述存储器稀疏控制单元配置为;访问所述存储单元阵列中的第一组元素,确定所述第一组中的零和近零元素值,并基于确定的所述第一组元素的零和近零元素生成第一零元素掩码;访问所述存储单元阵列中的第二组元素,确定所述第二组元素中的零和近零元素值,并基于所确定的所述第二组元素的零和近零元素生成第二零元素掩码;根据所述跳零稀疏命令、所述第一零元素掩码和所述第二零元素掩码的计算操作生成计算零掩码;和将基于所述计算零掩码的零值作为计算结果的一部分写入所述存储单元阵列;所述命令接口还被配置为发送来自所述第一和第二组元素中对应于所述计算零掩码中的非零指示符的给定元素并接收结果元素;和所述存储器稀疏控制单元还被配置为将所述结果元素作为基于所述计算零掩码的第一和第二组元素的计算结果的附加部分写入到所述存储单元阵列。6.如权利要求5所述的存储器,还包括:所述存储器稀疏控制单元的零计数单元,所述零计数单元被配置为基于近零阈值及所述第一和第二组元素的数据类型确定零和近零元素值。7.如权利要求6所述的存储器,还包括:所述存储器稀疏控制单元的掩码信息处理程器,所述掩码信息处理程器被配置为生成所述第一零元素掩码,其中所述第一组元素中的零和近零元素由第一状态指示,并且所述
第一组元素中的非零元素由第二状态指示;以及生成所述第二零元素掩码,其中所述第二组元素中的零和近零元素由第一状态指示,且所述第二组元素中的非零元素由第二状态指示。8.根据权利要求5所述的存储器,其中所述跳零稀疏命令包括跳零命令指示符(TAGID)、计算操作码(OP)、第一和第二组元素的数据类型(DataType)、第一组元素的地址(Addr1)、第二组元素的地址(Addr2)、计算结果的目标地址(Addrdst)和数据长度(length)。9.根据权利要求5所述的存储器,还包括:所述存储器稀疏控制单元的回写控制单元,所述回写控制单元被配置为:将基于所述计算零掩码的零值作为计算结果的一部分写入所述存储单元阵列;和将所述结果元素作为基于所述计算零掩码的第一组元素和第二组元素的计算结果的附加部分写入所述存储单元阵列。10.一种跳零稀疏计算加速器方法,包括:生成封装存储器访问请求的跳零稀疏命令;发送所述跳零稀疏命令;响应于所述跳零稀疏命令,从第一组元素接收给定元素,和从第二组元素接收给定元素;对来自所述第一和第二组元素的各个给定元素执行计算操作以生成结果元素;和发送所述结果元素。11.根据权利要求10所述的跳零稀疏计算加速器方法,其中所述跳零稀疏命令包括跳零命令指示符(TAGID)、计算操作码(OP)、第一和第二组元素的数据类型(DataType))、第一组元素的地址(Addr1)、第二组元素的地址(A...
【专利技术属性】
技术研发人员:薛菲,孙飞,周杨杰,段立德,郑宏忠,
申请(专利权)人:阿里巴巴集团控股有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。