数据处理方法、装置、存储介质以及电子设备制造方法及图纸

技术编号:37710603 阅读:15 留言:0更新日期:2023-06-02 00:02
本申请实施例提供一种数据处理方法、装置、存储介质以及电子设备,本申请可以直接从片上缓存中获取驻留的数据,无需再次从片外存储中将输入数据读取到片上缓存中进行第二计算,并且由于从片上缓存读取数据所需要的带宽是远大于从片外存储中读取的带宽的,不需要从片外存储中加载多次,有利于提高计算性能。有利于提高计算性能。有利于提高计算性能。

【技术实现步骤摘要】
数据处理方法、装置、存储介质以及电子设备


[0001]本申请涉及数据处理
,尤其涉及一种数据处理方法、装置、存储介质以及电子设备。

技术介绍

[0002]在深度神经网络训练过程中,由于计算过程的复杂或者需要计算多次,往往需要多次读取数据,例如,BatchNorm是一种重要的Regularization技术,能够使得网络层与层间的中间结果更加稳定、加快训练过程的收敛速度,但是,在采用BatchNorm技术进行正向计算或反向计算时,需要多次读取输入数据。
[0003]但是,伴随着多次读取数据,也需要在片外加载多次,才能保持整个计算过程顺利完成,如此,会使得整个计算性能下降。

技术实现思路

[0004]本申请实施例提供了一种数据处理方法、装置、存储介质以及电子设备,通过将数据驻留在片上缓存中,不需要从片外存储中加载多次,有利于提高整个计算性能。
[0005]第一方面,本申请实施例提供一种数据处理方法,应用于计算装置,所述计算装置包括片上缓存,所述计算装置与片外存储相连,所述片外存储有多个输入数据,所述方法包括:
[0006]读取所述多个输入数据至所述片上缓存中并进行第一计算,以得到第一计算结果;
[0007]将所述多个输入数据驻留在所述片上缓存中;
[0008]读取所述片上缓存中的多个输入数据和所述第一计算结果进行第二计算,以得到所述多个输入数据的计算结果。
[0009]第二方面,本申请实施例提供一种计算装置,所述装置包括:片上缓存和处理器,所述装置与片外存储相连,所述片外存储有多个输入数据;
[0010]所述处理器,用于读取所述多个输入数据至所述片上缓存中并进行第一计算,以得到第一计算结果;
[0011]所述片上缓存用于驻留所述多个输入数据;所述处理器还用于对所述片上缓存中的多个输入数据和所述第一计算结果进行第二计算,以得到所述多个输入数据的计算结果。
[0012]第三方面,本申请实施例提供了一种组合处理装置,该组合处理装置包括如第三方面所述的计算装置。
[0013]第四方面,本申请实施例提供一种电子设备,所述电子设备包括存储器、处理器、通信总线和通信接口,其中,所述处理器、通信接口存储器通过通信总线完成相互间的通信;所述存储器用于存放计算机程序;所述处理器用于执行所述存储器上所存放的程序时,实现如上述第一方面所描述的部分或全部步骤。
[0014]第五方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质包括存储用于数据交换的计算机程序,所述计算机程序被处理器执行时实现如本申请实施例第一方面所描述的部分或全部步骤。
[0015]第六方面,本申请实施例提供了一种计算机程序产品,其中,上述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,上述计算机程序可操作来使计算机执行如本申请实施例第一方面所描述的部分或全部步骤。该计算机程序产品可以为一个软件安装包。
[0016]本申请实施例提供的一种数据处理方法、装置、存储介质以及电子设备,可读取多个输入数据至所述片上缓存并进行第一计算,以得到第一计算结果;将多个输入数据驻留在片上缓存中;读取片上缓存中的多个输入数据和第一计算结果进行第二计算,以得到多个输入数据的计算结果。如此,在进行第二计算时,可以直接从片上缓存中获取驻留的数据,无需再次从片外存储中将输入数据读取到片上缓存中进行第二计算,并且由于从片上缓存读取数据所需要的带宽是远大于从片外存储中读取的带宽的,不需要从片外存储中加载多次,有利于提高计算性能。
附图说明
[0017]为了更清楚地说明本申请实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0018]图1是本申请实施例提供的一种板卡的结构示意图;
[0019]图2是本申请实施例提供的一种组合处理装置的结构示意图;
[0020]图3是本申请实施例提供的一种计算装置的内部的结构示意图;
[0021]图4是本申请实施例提供的一种处理器核的内部结构的结构示意图;
[0022]图5a是本申请实施例提供的一种数据处理方法的流程示意图;
[0023]图5b是本申请实施例提供的一种片上缓存的结构示意图;
[0024]图5c是本申请实施例提供的一种多维张量数据的结构示意图;
[0025]图6是本申请实施例提供的一种计算装置的功能单元组成框图;
[0026]图7是本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
[0027]下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0028]在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
[0029]下面结合具体实施例,对本申请进行详细说明。
[0030]请参阅图1,图1是本申请实施例提供的一种板卡10的结构示意图,如图1所示,板卡10包括芯片101,其是一种系统级芯片(System on Chip,SoC),或称片上系统,集成有一个或多个组合处理装置,组合处理装置是一种人工智能运算单元,用以支持各类深度学习和机器学习算法,满足计算机视觉、语音、自然语言处理、数据挖掘等领域复杂场景下的智能处理需求。特别是深度学习技术大量应用在云端智能领域,云端智能应用的一个显著特点是输入数据量大,对平台的存储能力和计算能力有很高的要求,此实施例的板卡10适用在云端智能应用,具有庞大的片外存储、片上存储和大量的计算能力。
[0031]芯片101通过对外接口装置102与外部设备103相连接。外部设备103例如是服务器、计算机、摄像头、显示器、鼠标、键盘、网卡或wifi接口等。待处理的数据可以由外部设备103通过对外接口装置102传递至芯片101。芯片101的计算结果可以经由对外接口装置102传送回外部设备103。根据不同的应用场景,对外接口装置102可以具有不同的接口形式,例如PCIe接口等。
[0032]板卡10还包括用于存储数据的存储器件104,其包括一个或多个存储单元105。存储器件104通过总线与控制器件106和芯片101进行连接和数据传输。板卡10中的控制器件106配置用于对芯片101的状态进行调控。为此,在一个应用场景中,控制器件106可以包括单片机(Micro Controller Uni本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据处理方法,其特征在于,应用于计算装置,所述计算装置包括片上缓存,所述计算装置与片外存储相连,所述片外存储有多个输入数据,所述方法包括:读取所述多个输入数据至所述片上缓存中并进行第一计算,以得到第一计算结果;将所述多个输入数据驻留在所述片上缓存中;读取所述片上缓存中的多个输入数据和所述第一计算结果进行第二计算,以得到所述多个输入数据的计算结果。2.根据权利要求1所述的方法,其特征在于,所述片上缓存包括多个缓存空间,所述读取所述片上缓存中的多个输入数据和所述第一计算结果进行第二计算,以得到所述多个输入数据的计算结果,包括:确定所述多个输入数据驻留在所述多个缓存空间的顺序;根据所述顺序读取所述片上缓存中的多个输入数据和所述第一计算结果进行第二计算,以得到所述多个输入数据的计算结果。3.根据权利要求1或2所述的方法,其特征在于,所述片上缓存对应的缓存空间大小为第一缓存空间;所述多个输入数据对应的所需缓存空间大小为第二缓存空间;在所述将所述多个输入数据驻留在所述片上缓存中之前,所述方法还包括:判断所述第一缓存空间是否小于所述第二缓存空间;若所述第一缓存空间小于所述第二缓存空间,则将与所述第一缓存空间大小相同的部分输入数据驻留在所述片上缓存中。4.根据权利要求3所述的方法,其特征在于,所述方法还包括:对所述片上缓存中驻留的所述部分输入数据和所述第一计算结果进行第二计算,得到第二计算结果;从所述片外内存中读取除所述片上缓存中驻留的部分输入数据外的剩余输入数据和所述第一计算结果进行第二计算,得到第三计算结果;根据所述第二计算结果、所述第三计算结果,得到所述多个输入数据的计算结果。5.根据权利要求1或2所述的方法,其特征在于,所述输入数据为多维张量数据,包括N、H、W、C四个维度;当所述多维张量数据的数据量大于或等于预设阈值时,所述方法还包括:将所述多维张量数据在C维度上拆分为多段,以通过所述计算装置对所述拆分后的每段多维张量数据进行计算,得到所述...

【专利技术属性】
技术研发人员:请求不公布姓名
申请(专利权)人:寒武纪昆山信息科技有限公司
类型:发明
国别省市:

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

1