一种用于张量处理器的数据处理方法和相关设备技术

技术编号:37075354 阅读:22 留言:0更新日期:2023-03-29 19:52
本申请实施例公开了一种用于张量处理器的数据处理方法、装置、计算机设备、张量处理器及存储介质,该张量处理器包括控制模块和M个执行模块,并且控制模块和M个执行模块连接,该方法包括:获取待处理的多个数据元素的第一存储地址,以生成包括第一存储地址的读取指令;向执行模块发送读取指令,其中,读取指令用于供执行模块返回按照第一排列顺序排列的多个数据元素;接收由执行模块返回的多个数据元素。确定存储多个数据元素的第二存储地址;向执行模块发送写入指令,其中,写入指令包括第二存储地址,以及按照第一排列顺序排列的多个数据元素,以使得执行模块写入多个数据元素。以使得执行模块写入多个数据元素。以使得执行模块写入多个数据元素。

【技术实现步骤摘要】
一种用于张量处理器的数据处理方法和相关设备


[0001]本申请涉及数据处理
,尤其涉及一种用于张量处理器的数据处理方法、装置、计算机设备、张量处理器及存储介质。

技术介绍

[0002]随着深度学习的不断进展,其在图像处理、模式识别以及语音识别等领域都取得了较多的成果,矩阵转置是深度学习过重中常见的一种数据数据处理方法。
[0003]相关技术中,在进行矩阵转置时,通常是按行依次读取每个数据元素,并将读取的数据元素存入矩阵转置寄存器中,之后,再以列的顺序从矩阵转置寄存器中依次读取每个数据元素来实现矩阵的转置。
[0004]在采用上述方式进行矩阵转置时,不仅需要较长的转置时长,而且在数据处理装置中设置矩阵转置寄存器也会增加数据处理装置的生成成本。

技术实现思路

[0005]本申请提供一种用于张量处理器的数据处理方法、装置、计算机设备、张量处理器及存储介质,能够提高数据的处理效率。
[0006]本申请实施例第一方面提供一种用于张量处理器的数据处理方法,所述张量处理器包括控制模块和M个执行模块,并且所述控制模块和M个执行模块连接,所述方法由所述控制模块执行,所述方法包括:
[0007]获取待处理的多个数据元素的第一存储地址,以生成包括所述第一存储地址的读取指令;
[0008]向所述执行模块发送所述读取指令,其中,所述读取指令用于供所述执行模块返回按照第一排列顺序排列的所述多个数据元素;
[0009]接收由所述执行模块返回的所述多个数据元素;
[0010]确定存储所述多个数据元素的第二存储地址;
[0011]向所述执行模块发送写入指令,其中,所述写入指令包括第二存储地址,以及按照第一排列顺序排列的所述多个数据元素,以供所述执行模块写入所述多个数据元素;
[0012]其中,若所述第一存储地址指向N个所述执行模块中各一个存储单元的存储地址,则所述第二存储地址,指向一个执行模块中的N个存储单元的存储地址;
[0013]或者,
[0014]若所述第一存储地址指向一个执行模块中的N个存储单元的存储地址,则所述第二存储地址指向N个所述执行模块中各一个存储单元的存储地址;
[0015]其中,M和N为不小于2的整数,且N小于或等于M。
[0016]可选地,所述向执行模块发送读取指令,包括:
[0017]若所述第一存储地址指向N个所述执行模块中各一个存储单元的存储地址,向第1个所述执行模块发送所述读取指令;
[0018]其中,所述读取指令,还用于供第n个执行模块在执行所述读取指令时或执行所述读取指令之后,传输给第n+1个执行模块;其中,所述n为小于所述N的正整数;其中,接收到所述读取命令的N个执行模块的排列顺序为所述第一排列顺序。
[0019]可选地,所述向所述执行模块发送写入指令,包括:
[0020]若所述第二存储地址指向一个执行模块中的N个存储单元的存储地址,向所述一个执行模块发送所述写入指令,其中,所述写入指令包括:所述N个存储单元所在的所述执行模块的存储地址以及按照所述第一排列顺序排列的所述多个数据元素。
[0021]可选地,所述向所述执行模块发送读取指令,包括:
[0022]若所述第一存储地址指向一个执行模块中的N个存储单元的存储地址,向所述一个执行模块,发送所述读取指令。
[0023]可选地,所述向所述执行模块发送写入指令,包括:
[0024]若所述第二存储地址指向N个所述执行模块中各一个存储单元的存储地址,向第1个所述执行模块发送写入指令;
[0025]其中,所述写入指令,还用于供第n个执行模块执行所述写入指令时或在执行所述写入指令之后,传输给第n+1个所述执行模块。
[0026]本申请实施例第二方面提供一种数据处理方法,所述张量处理器包括控制模块和M个执行模块,并且所述控制模块和所述M个执行模块连接,所述方法由所述执行模块执行,所述方法包括:
[0027]接收读取指令,其中,所述读取指令包括:第一存储地址;
[0028]根据所述第一存储地址,读取对应的数据元素;
[0029]将所述数据元素返回所述控制模块;其中,读取的所述数据元素按照第一排列顺序返回给所述控制模块后,用于供所述控制模块存储到第二存储地址;
[0030]其中,若所述第一存储地址,指向N个所述执行模块中各一个存储单元的存储地址,则所述第二存储地址,指向一个执行模块中的N个存储单元的存储地址;
[0031]或者,
[0032]若所述第一存储地址,指向一个执行模块中的N个存储单元的存储地址,则所述第二存储地址指向N个所述执行模块中各一个存储单元的存储地址。
[0033]可选地,所述方法还包括:
[0034]若所述第一存储地址指向N个所述执行模块中各一个存储单元的存储地址,且当前执行模块的序号n小于N,在执行所述读取指令时或执行所述读取指令之后,将所述读取指令传输给第n+1个执行模块,其中,所述N为小于或等于所述M的正整数;所述M为所述控制模块连接的所述执行模块的总个数。
[0035]可选地,所述方法还包括:
[0036]若所述第二存储地址,指向一个执行模块中的N个存储单元的存储地址,则将所述多个数据元素按照第一排列顺序写入N个存储单元内。
[0037]可选地,所述根据所述第一存储地址,读取数据元素,包括:
[0038]若所述第一存储地址指向一个执行模块中的N个存储单元的存储地址,按照第一排列顺序从所述N个存储单元读取所述多个数据元素。
[0039]可选地,所述方法还包括:
[0040]若所述第二存储地址指向N个所述执行模块中各一个存储单元的存储地址,且当前执行模块的序号n小于N时,在执行所述写入指令时或执行所述写入指令之后,将所述写入指令传输给第n+1个执行模块。
[0041]本申请实施例第三方面提供一种用于张量处理器的数据处理装置,所述张量处理器包括控制模块和M个执行模块,并且所述控制模块和M个执行模块连接,所述装置包括:
[0042]生成单元,用于获取待处理的多个数据元素的第一存储地址,以生成包括所述第一存储地址的读取指令;
[0043]第一发送单元,用于向所述执行模块发送所述读取指令,其中,所述读取指令用于供所述执行模块返回按照第一排列顺序排列的所述多个数据元素;
[0044]第一接收单元,用于接收由所述执行模块返回的所述多个数据元素;
[0045]确定单元,用于确定存储所述多个数据元素的第二存储地址;
[0046]第二发送单元,向所述执行模块发送写入指令,其中,所述写入指令包括第二存储地址,以及按照第一排列顺序排列的所述多个数据元素,以使得所述执行模块写入所述多个数据元素;
[0047]其中,若所述第一存储地址指向N个所述执行模块中各一个存储单元的存储地址,则所述第二存储地址,指向一个执行模块中的N个存储单元的存储地址;
...

【技术保护点】

【技术特征摘要】
1.一种用于张量处理器的数据处理方法,其特征在于,所述张量处理器包括控制模块和M个执行模块,并且所述控制模块和M个执行模块连接,所述方法由所述控制模块执行,所述方法包括:获取待处理的多个数据元素的第一存储地址,以生成包括所述第一存储地址的读取指令;向所述执行模块发送所述读取指令,其中,所述读取指令用于供所述执行模块返回按照第一排列顺序排列的所述多个数据元素;接收由所述执行模块返回的所述多个数据元素;确定存储所述多个数据元素的第二存储地址;向所述执行模块发送写入指令,其中,所述写入指令包括第二存储地址,以及按照第一排列顺序排列的所述多个数据元素,以供所述执行模块写入所述多个数据元素;其中,响应于所述第一存储地址指向N个所述执行模块中各一个存储单元的存储地址,则所述第二存储地址,指向一个执行模块中的N个存储单元的存储地址;或者,若所述第一存储地址指向一个执行模块中的N个存储单元的存储地址,则所述第二存储地址指向N个所述执行模块中的各一个存储单元的存储地址;其中,M和N为不小于2的整数,且N小于或等于M。2.根据权利要求1所述的方法,其特征在于,所述向执行模块发送读取指令,包括:响应于所述第一存储地址指向N个所述执行模块中各一个存储单元的存储地址,向第1个所述执行模块发送所述读取指令,其中,所述读取指令,还用于供第n个执行模块在执行所述读取指令时或执行所述读取指令之后,传输给第n+1个执行模块;其中,所述n为小于所述N的正整数;其中,接收到所述读取命令的N个执行模块的排列顺序为所述第一排列顺序。3.根据权利要求2所述的方法,其特征在于,所述向所述执行模块发送写入指令,包括:若所述第二存储地址指向一个执行模块中的N个存储单元的存储地址,向所述一个执行模块发送所述写入指令,其中,所述写入指令包括:所述N个存储单元所在的所述执行模块的存储地址以及按照所述第一排列顺序排列的所述多个数据元素。4.根据权利要求1所述的方法,其特征在于,所述向所述执行模块发送读取指令,包括:若所述第一存储地址指向一个执行模块中的N个存储单元的存储地址,向所述一个执行模块,发送所述读取指令。5.根据权利要求4所述的方法,其特征在于,所述向所述执行模块发送写入指令,包括:若所述第二存储地址指向N个所述执行模块中各一个存储单元的存储地址,向第1个所述执行模块发送写入指令;其中,所述写入指令,还用于供第n个执行模块执行所述写入指令时或在执行所述写入指令之后,传输给第n+1个所述执行模块。6.一种用于张量处理器的数据处理方法,其特征在于,所述张量处理器包括控制模块和M个执行模块,并且所述控制模块和所述M个执行模块连接,所述方法由所述执行模块执行,所述方法包括:接收读取指令,其中,所述读取指令包括:第一存储地址;根据所述第一存储地址,读取对应的数据元素;
将所述数据元素返回所述控制模块;其中,读取的所述数据元素按照第一排列顺序返回给所述控制模块后,用于供所述控制模块存储到第二存储地址;其中,若所述第一存储地址,指向N个所述执行模块中各一个存储单元的存储地址,则所述第二存储地址,指向一个执行模块中的N个存储单元的存储地址;或者,若所述第一存储地址,指向一个执行模块中的N个存储单元的存储地址,则所述第二存储地址指向N个所述执行模块中各一个存储单元的存储地址。7.根据权利要求6所述的方法,其特征在于,所述方法还包括:若所述第一存储地址指向N个所述执行模块中各一个存储单元的存储地址,且当前执行模块的序号n小于N,在执行所述读取指令时或执行所述读取指令之后,将所述读取指令传输给第n+1个执行模...

【专利技术属性】
技术研发人员:沈广冲洪宗会屈家丽薛雨楠
申请(专利权)人:北京算能科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1