数据处理方法、系统、可读存储介质、芯片及电子设备技术方案

技术编号:38469119 阅读:8 留言:0更新日期:2023-08-11 14:46
本申请涉及计算机技术领域,公开了一种数据处理方法、系统、可读存储介质、芯片及电子设备。本申请的数据处理方法,应用于电子设备,电子设备包括第一存储器和第二存储器,并且方法包括:第一存储器从第二存储器获取第一数据,并对第一数据完成第一运算,第一数据包括第二数据;第一存储器存储第一数据;第一存储器确认待计算的第三数据包括第二数据;第一存储器基于第二数据,完成对第三数据的第一运算。通过本申请的方法,在处理数据时,能够减少数据的搬运次数,从而提高数据的处理速度。从而提高数据的处理速度。从而提高数据的处理速度。

【技术实现步骤摘要】
数据处理方法、系统、可读存储介质、芯片及电子设备


[0001]本申请涉及计算机
,特别涉及一种数据处理方法、系统、可读存储介质、芯片及电子设备。

技术介绍

[0002]在对图像处理时,有些情况下需要分块调整图像亮度或者颜色。而在对图像进行了分块调整后,图像块与块之间会出现不平滑的情况。因此,为了保持图像块与块之间的平滑性,需要在块与块之间做平滑过渡。例如,过渡的方法可以通过插帧完成。Grid Sample(一种采样函数)是一种在深度学习网络中比较常用的算子,主要运用在插帧模型中,给图像做不规则采样。
[0003]在深度学习的人工智能(artificial intelligence,AI)芯片领域,由于复杂的数据处理会产生大量数据频繁迁移,而大量数据频繁迁移所产生的高延时和大功耗严重制约整个系统的整体性能。因此,现有技术出现了存内计算技术,该技术将计算和存储融合,支持数据在存储模器中直接运算。例如,在静态随机存取存储器(static random

access memory,SRAM)上能够进行计算操作。SRAM计算完毕后,将计算结果返回芯片的处理器,从而大幅缩减了数据在总线传输的用时和能耗。
[0004]例如,为了加速计算Grid Sample算子,目前的技术会将主要的插值计算部分放在上述的SRAM上计算。由于SRAM的大小往往比较受限,不能将所有插值计算过程中可能用到的数据都搬运到SRAM上计算。因此在计算Grid Sample算子时,可以将当前需要插值计算的数据块搬运到SRAM上,在SRAM上做完插值运算后输出计算结果。然后SRAM清空此次插值计算的数据,将下一次需要插值计算的数据块搬运到SRAM上进行计算,从而加速插值计算的过程。但是这种计算方式依旧会耗费大量时间在数据搬运上,因此Grid Sample算子的计算速度还有待提高。

技术实现思路

[0005]本申请实施例提供了一种数据处理方法、系统、可读存储介质、芯片及电子设备。
[0006]第一方面,本申请实施例提供了一种数据处理方法,应用于电子设备,电子设备包括第一存储器和第二存储器,并且方法包括:第一存储器从第二存储器获取第一数据,并对第一数据完成第一运算,第一数据包括第二数据;第一存储器存储第一数据;第一存储器确认待计算的第三数据包括第二数据;第一存储器基于第二数据,完成对第三数据的第一运算。
[0007]可以理解,在本申请的一些实施例中,第一存储器能够实现存内计算技术,即能够进行第一运算。第一存储器对第一数据完成第一运算后将第一数据存储下来,其中,第一数据包括第二数据。待计算第三数据时,如果第三数据也包括第二数据,则第一存储器就不需要再获取第二数据,直接从第一数据中调用第二数据即可。从而减少了数据搬运的时间,提高数据处理的效率。
[0008]在上述第一方面的一种可能的实现中,上述方法还包括:第三数据与第二数据相同,第一存储器基于第二数据,完成对第三数据的第一运算,包括:第一存储器对第二数据进行第一运算,得到对应第三数据的计算结果。
[0009]可以理解,在本申请的一些实施例中,第三数据与第二数据相同。即第一存储器在对第三数据进行第一运算的时候,不需要再从第二存储器中获取任何数据,直接调用第二数据进行第一运算就能得到对应第三数据的计算结果,从而减少数据搬运的时间。
[0010]在上述第一方面的一种可能的实现中,上述方法还包括:第一存储器确认第三数据还包括第四数据时,第一存储器从第二存储器获取第四数据;第一存储器基于第二数据,完成对第三数据的第一运算,包括:第一存储器基于第四数据和第二数据进行第一运算,得到对应第三数据的计算结果;第一存储器存储第四数据。
[0011]可以理解,在本申请的一些实施例中,第三数据中只有一部分数据与第二数据相同,因此在对第三数据计算时,还需要获取第四数据。第四数据和第二数据共同组成了第三数据。第一存储器对第四数据和第二数据进行第一运算,就可以得到第三数据的计算结果。因此,在第一存储器进行第一运算时,只需要从第二存储器中获取没有存储在第一存储器的第四数据即可。在第一存储器完成第一运算后,可以将第四数据存储下来。在后续的第一运算中,如果需要用到第四数据,则可以不用再从第二存储器中获取,直接从第一存储器调用即可。
[0012]在上述第一方面的一种可能的实现中,上述方法还包括:第一存储器检测到若存储第四数据,第一存储器存储的数据量超过预设数据量;第一存储器释放已存储的第一部分数据,存储第四数据。
[0013]可以理解,在本申请的一些实施例中,第一存储器每次进行第一运算后都会储存从第二存储器中获取的数据。当第一存储器存满数据之后,如果还想要再存储数据,则需要将之前存储的数据释放,以便存储新的数据。
[0014]在上述第一方面的一种可能的实现中,上述方法还包括:第一存储器基于双向链表存储数据,第一存储器在存储数据时,将当前进行第一运算的数据存储在双向链表的第一端;第一存储器释放已存储的第一部分数据,包括,第一存储器释放远离双向链表第一端的第一部分数据。
[0015]可以理解,在本申请的一些实施例中,第一存储器例如可以通过双向链表存储数据。从双向链表中的任意一个结点开始,都可以很方便地访问它的前驱结点和后继结点,从而可以快速查找数据。并且,第一存储器每次都会将当前进行第一运算的数据存储在双向链表的第一端。这样,不经常用来进行第一运算的数据就会逐渐排列到双向链表的第二端,即远离双向链表第一端的部位。第一存储器每次在释放第一部分数据时,都会将双向链表第二端的数据释放。由于第一部分数据都不是经常用来进行第一运算的数据,因此被释放掉之后重复搬运第一部分数据的概率较低。每次进行第一运算的数据大多已经被存储在第一存储器中了,所以每次进行第一运算时,需要向第二存储器获取数据的概率较小,直接调用第一存储器中的数据概率较大,如此可以进一步降低数据搬运的次数,提高计算效率。
[0016]在上述第一方面的一种可能的实现中,上述方法还包括:第一运算包括Grid Sample算子,第一数据为Grid Sample算子的输入数据的特征图的部分数据,特征图存储在第二存储器中。
[0017]可以理解,在本申请的一些实施例中,第一存储器例如可以对Grid Sample算子进行运算,Grid Sample的特征图数据存储在第二存储器中。在第一存储器进行第一运算时,从第二存储器中获取特征图上对应的第一数据。可以理解,第一数据可以是特征图上的任一部分数据。由于特征图上整体的数据较大,无法全部存储在第一存储器中。并且,每次进行第一运算的数据也都是随机从特征图上获取的,无法预先设置好需要计算的部分数据,因此,也不能预先将部分数据搬运到第一存储器中。在另一些实施例中,第一运算还可以包括其他符合上述情况的算子,从而通过本申请的方法加速第一运算。
[0018]在上述第一方面的一种可能的实现中,上述方法还包括:第一存储器包括静态随机存取存储器。
[0019]可本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据处理方法,应用于电子设备,其特征在于,所述电子设备包括第一存储器和第二存储器,并且所述方法包括:所述第一存储器从所述第二存储器获取第一数据,并对所述第一数据完成第一运算,所述第一数据包括第二数据;所述第一存储器存储所述第一数据;所述第一存储器确认待计算的第三数据包括所述第二数据;所述第一存储器基于所述第二数据,完成对所述第三数据的所述第一运算。2.根据权利要求1所述的方法,其特征在于,所述第三数据与所述第二数据相同,所述第一存储器基于所述第二数据,完成对所述第三数据的第一运算,包括:所述第一存储器对所述第二数据进行所述第一运算,得到对应所述第三数据的计算结果。3.根据权利要求1所述的方法,其特征在于,所述第一存储器确认所述第三数据还包括第四数据时,所述第一存储器从所述第二存储器获取第四数据;所述第一存储器基于所述第二数据,完成对所述第三数据的第一运算,包括:所述第一存储器基于所述第四数据和所述第二数据进行所述第一运算,得到对应所述第三数据的计算结果;所述第一存储器存储所述第四数据。4.根据权利要求3所述的方法,其特征在于,所述第一存储器检测到若存储所述第四数据,所述第一存储器存储的数据量超过预设数据量;所述第一存储器释放已存储的第一部分数据,存储所述第四数据。5.根据权利要求4所述的方法,其特征在于,所述第一存储器基于双向链表存储数据,所述...

【专利技术属性】
技术研发人员:张宇超
申请(专利权)人:安谋科技中国有限公司
类型:发明
国别省市:

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

1