当前位置: 首页 > 专利查询>清华大学专利>正文

数据处理方法、处理器、芯片及电子设备技术

技术编号:28473637 阅读:59 留言:0更新日期:2021-05-15 21:41
本公开涉及一种数据处理方法、处理器、芯片及电子设备。该方法通过多个计算核之间进行数据交换,各计算核基于交换后的数据进行并行运算,得到并行运算结果,可以平衡各个计算核的计算资源,充分发挥每个计算核的计算效力,提高数据处理效率。提高数据处理效率。提高数据处理效率。

【技术实现步骤摘要】
数据处理方法、处理器、芯片及电子设备


[0001]本公开涉及信息处理
,尤其涉及一种数据处理方法、处理器、芯片及电子设备。

技术介绍

[0002]在对大规模的网络数据进行切分并映射到众核的过程中,对输入图像数据在深度方向上拆分,造成计算结果为多个不完整的部分,需要对这个多个部分数据进一步相加才能得出最终的求和结果。由深度切分引起的多个部分数据称之为部分和。当一层的输入图像未作拆分,但是卷积核的个数进行分组,卷积计算结果输出至下一层则等效于在深度方向上做切分,在下一层的计算也会引入部分和。

技术实现思路

[0003]有鉴于此,本公开提出了一种数据处理方法、处理器、芯片及电子设备。
[0004]根据本公开的一方面,提供了一种数据处理方法,所述方法应用于处理器的计算核,所述处理器包括多个计算核,所述方法实现处理数据和权值数据的卷积运算;所述方法包括:多个计算核之间进行数据交换;各计算核基于交换后的数据进行并行运算,得到并行运算结果;根据各计算核的并行运算结果,确定处理数据和权值数据的卷积运算结果;其中,进行数据交换的数据包括切分后的权值数据、切分后的处理数据和部分和数据中的一种,所述部分和数据是根据切分后的处理数据或切分后的权值数据得到的卷积运算结果。
[0005]在一种可能的实现方式中,进行数据交换的数据包括切分后的权值数据,或者切分后的处理数据;所述权值数据或处理数据切分为n份;多个计算核之间进行数据交换,包括:n个计算核之间进行n

1轮数据交换,使得在n/>‑
1轮数据交换后,每个计算核均存储过n份权值数据中的每一份,或者n份处理数据中的每一份;
[0006]各计算核基于交换后的数据进行并行运算,得到并行运算结果,包括:在每轮数据交换后,各计算核基于本轮数据交换中接收到的1份权值数据与所存储的处理数据进行卷积运算,或者,基于本轮数据交换中接收到的1份处理数据与所存储的权值数据进行卷积运算,并将卷积运算的结果与该计算核之前得到的卷积运算结果进行累加,得到该计算核的并运算结果;
[0007]根据各计算核的并行运算结果,确定处理数据和权值数据的卷积运算结果,包括:将各计算核的并行运算结果,作为该计算核中的处理数据与权值数据的卷积运算结果。
[0008]在一种可能的实现方式中,进行数据交换的数据包括切分后的权值数据,所述权值数据按深度方向切分为n份,所述多个计算核包括n个计算核,每个计算核在初始状态下存储有处理数据,以及n份权值数据中的1份权值数据,每个计算核在初始状态下存储的权值数据不同;其中,n为整数;
[0009]多个计算核之间进行数据交换,包括:每个计算核对初始状态下存储的处理数据和1份权值数据进行卷积运算,之后在所述n个计算核中进行n

1轮数据交换,在每轮数据交
换中,每个计算核将初始存储的1份权值数据交换至其他计算核中的一个,使得在n

1轮数据交换后,每个计算核均存储过所述n份权值数据中的每一份;
[0010]各计算核基于交换后的数据进行并行运算,得到并行运算结果,包括:在每轮数据交换后,各计算核基于本轮数据交换中接收到的1份权值数据与所存储的处理数据进行卷积运算,并将卷积运算的结果与该计算核之前得到的卷积运算结果进行累加,得到该计算核的并运算结果;
[0011]根据各计算核的并行运算结果,确定处理数据和权值数据的卷积运算结果,包括:将各计算核的并行运算结果,作为该计算核中的处理数据与权值数据的卷积运算结果。
[0012]在一种可能的实现方式中,进行数据交换的数据包括切分后的处理数据,所述处理数据按深度方向切分为n份,所述多个计算核包括n个计算核,每个计算核在初始状态下存储有权值数据,以及n份处理数据中的1份处理数据,每个计算核在初始状态下存储的处理数据不同;
[0013]多个计算核之间进行数据交换,包括:每个计算核对初始状态下存储的权值数据和1份处理数据进行卷积运算,之后在所述n个计算核中进行n

1轮数据交换,在每轮数据交换中,每个计算核将初始存储的1份处理数据交换至其他计算核中的一个,使得在n

1轮数据交换后,每个计算核均存储过所述n份处理数据中的每一份;其中,n为整数;
[0014]各计算核基于交换后的数据进行并行运算,得到并行运算结果,包括:在每轮数据交换后,各计算核基于本轮数据交换中接收到的1份处理数据与所存储的权值数据进行卷积运算,并将卷积运算的结果与该计算核之前得到的卷积运算结果进行累加,得到该计算核的并运算结果;
[0015]根据各计算核的并行运算结果,确定处理数据和权值数据的卷积运算结果,包括:将各计算核的并行运算结果,作为该计算核中的处理数据与权值数据的卷积运算结果。
[0016]在一种可能的实现方式中,进行数据交换的数据包括部分和数据,所述多个计算核包括n个计算核,每个计算核中存储有n份部分和数据,多个计算核之间进行数据交换,包括:在所述n个计算核之间,进行部分和数据的交换,使得交换后每个计算核中存储的部分和数据对应于处理数据的同一行段或同一列段;
[0017]各计算核基于交换后的数据进行并行运算,得到并行运算结果,包括:每个计算核对数据交换后得到的部分和数据进行相加,得到部分处理数据和权值数据的卷积运算结果,所述部分处理数据为处理数据按照行方向或列方向进行n份切分后得到的。
[0018]根据本公开的另一方面,提供了一种处理器,所述处理器包括多个计算核,所述处理器实现处理数据和权值数据的卷积运算,包括:多个计算核之间进行数据交换;各计算核基于交换后的数据进行并行运算,得到并行运算结果;根据各计算核的并行运算结果,确定处理数据和权值数据的卷积运算结果;其中,进行数据交换的数据包括切分后的权值数据、切分后的处理数据和部分和数据中的一种,所述部分和数据是根据切分后的处理数据或切分后的权值数据得到的卷积运算结果。
[0019]在一种可能的实现方式中,进行数据交换的数据包括切分后的权值数据,或者切分后的处理数据;所述权值数据或处理数据切分为n份;
[0020]多个计算核之间进行数据交换,包括:n个计算核之间进行n

1轮数据交换,使得在n

1轮数据交换后,每个计算核均存储过n份权值数据中的每一份,或者n份处理数据中的每
一份;
[0021]各计算核基于交换后的数据进行并行运算,得到并行运算结果,包括:在每轮数据交换后,各计算核基于本轮数据交换中接收到的1份权值数据与所存储的处理数据进行卷积运算,或者,基于本轮数据交换中接收到的1份处理数据与所存储的权值数据进行卷积运算,并将卷积运算的结果与该计算核之前得到的卷积运算结果进行累加,得到该计算核的并运算结果;
[0022]根据各计算核的并行运算结果,确定处理数据和权值数据的卷积运算结果,包括:将各计算核的并行运算结果,作为该计算核中的处理数据与权值数据本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种数据处理方法,其特征在于,所述方法应用于处理器的计算核,所述处理器包括多个计算核,所述方法实现处理数据和权值数据的卷积运算;所述方法包括:多个计算核之间进行数据交换;各计算核基于交换后的数据进行并行运算,得到并行运算结果;根据各计算核的并行运算结果,确定处理数据和权值数据的卷积运算结果;其中,进行数据交换的数据包括切分后的权值数据、切分后的处理数据和部分和数据中的一种,所述部分和数据是根据切分后的处理数据或切分后的权值数据得到的卷积运算结果。2.根据权利要求1所述的方法,其特征在于,进行数据交换的数据包括切分后的权值数据,或者切分后的处理数据;所述权值数据或处理数据切分为n份;多个计算核之间进行数据交换,包括:n个计算核之间进行n

1轮数据交换,使得在n

1轮数据交换后,每个计算核均存储过n份权值数据中的每一份,或者n份处理数据中的每一份;各计算核基于交换后的数据进行并行运算,得到并行运算结果,包括:在每轮数据交换后,各计算核基于本轮数据交换中接收到的1份权值数据与所存储的处理数据进行卷积运算,或者,基于本轮数据交换中接收到的1份处理数据与所存储的权值数据进行卷积运算,并将卷积运算的结果与该计算核之前得到的卷积运算结果进行累加,得到该计算核的并运算结果;根据各计算核的并行运算结果,确定处理数据和权值数据的卷积运算结果,包括:将各计算核的并行运算结果,作为该计算核中的处理数据与权值数据的卷积运算结果。3.根据权利要求1或2所述的方法,其特征在于,进行数据交换的数据包括切分后的权值数据,所述权值数据按深度方向切分为n份,所述多个计算核包括n个计算核,每个计算核在初始状态下存储有处理数据,以及n份权值数据中的1份权值数据,每个计算核在初始状态下存储的权值数据不同;其中,n为整数;多个计算核之间进行数据交换,包括:每个计算核对初始状态下存储的处理数据和1份权值数据进行卷积运算,之后在所述n个计算核中进行n

1轮数据交换,在每轮数据交换中,每个计算核将初始存储的1份权值数据交换至其他计算核中的一个,使得在n

1轮数据交换后,每个计算核均存储过所述n份权值数据中的每一份;各计算核基于交换后的数据进行并行运算,得到并行运算结果,包括:在每轮数据交换后,各计算核基于本轮数据交换中接收到的1份权值数据与所存储的处理数据进行卷积运算,并将卷积运算的结果与该计算核之前得到的卷积运算结果进行累加,得到该计算核的并运算结果;根据各计算核的并行运算结果,确定处理数据和权值数据的卷积运算结果,包括:将各计算核的并行运算结果,作为该计算核中的处理数据与权值数据的卷积运算结果。4.根据权利要求1或2所述的方法,其特征在于,进行数据交换的数据包括切分后的处
理数据,所述处理数据按深度方向切分为n份,所述多个计算核包括n个计算核,每个计算核在初始状态下存储有权值数据,以及n份处理数据中的1份处理数据,每个计算核在初始状态下存储的处理数据不同;多个计算核之间进行数据交换,包括:每个计算核对初始状态下存储的权值数据和1份处理数据进行卷积运算,之后在所述n个计算核中进行n

1轮数据交换,在每轮数据交换中,每个计算核将初始存储的1份处理数据交换至其他计算核中的一个,使得在n

1轮数据交换后,每个计算核均存储过所述n份处理数据中的每一份;其中,n为整数;各计算核基于交换后的数据进行并行运算,得到并行运算结果,包括:在每轮数据交换后,各计算核基于本轮数据交换中接收到的1份处理数据与所存储的权值数据进行卷积运算,并将卷积运算的结果与该计算核之前得到的卷积运算结果进行累加,得到该计算核的并运算结果;根据各计算核的并行运算结果,确定处理数据和权值数据的卷积运算结果,包括:将各计算核的并行运算结果,作为该计算核中的处理数据与权值数据的卷积运算结果。5.根据权利要求1所述的方法,其特征在于,进行数据交换的数据包括部分和数据,所述多个计算核包括n个计算核,每个计算核中存储有n份部分和数据,多个计算核之间进行数据交换,包括:在所述n个计算核之间,进行部分和数据的交换,使得交换后每个计算核中存储的部分和数据对应于处理数据的同一行段或同一列段;各计算核基于交换后的数据进行并行运算,得到并行运算结果,包括:每个计算核对数据交换后得到的部分和数据进行相加,得到部分处理数据和权值数据的卷积运算结果,所述部分处理数据为处理数据按照行方向或列方向进行n份切分后得到的。6.一种处理器,其特征在于,所述处理器包括多个计算核,所述处理器实现处理数据和权值数据的卷积运算,...

【专利技术属性】
技术研发人员:徐海峥裴京王松马骋
申请(专利权)人:清华大学
类型:发明
国别省市:

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

1