数据处理方法、装置、计算机设备及存储介质制造方法及图纸

技术编号:32345794 阅读:12 留言:0更新日期:2022-02-20 02:00
本公开提供了一种数据处理方法、装置、计算机设备及存储介质,其中,该方法包括:通过第一线程读取与所述第一线程对应的第一数据块;通过所述第一线程对所述第一数据块执行数据处理,得到至少一个第一中间数据;基于所述至少一个第一中间数据中的至少部分第一中间数据、以及第二线程得到的第二中间数据,得到所述第一线程对应的结果数据块中的第一结果值。本公开实施例通过线程之间传递计算的中间数据,并基于中间数据得到每个线程对应的结果数据块中的结果值,从而减少不同线程对相同数据的读取次数,进而提升数据获取的速度,提升数据处理效率。据处理效率。据处理效率。

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


[0001]本公开涉及数据处理
,具体而言,涉及一种数据处理方法、装置、计算机设备及存储介质。

技术介绍

[0002]随着深度学习和人工智能技术的发展,深度学习技术应用的领域也越来越广泛。其中,神经网络在图像处理、视频超分等应用中的效果明显,因此被广泛使用。图形处理器(Graphics Processing Unit,GPU)进行神经网络推理和训练的常用设备。为了提升处理速度,通常GPU会利用多个线程并行处理神经网络中的一个算子。

技术实现思路

[0003]本公开实施例至少提供一种数据处理方法、装置、计算机设备及存储介质。
[0004]第一方面,本公开实施例提供了一种数据处理方法,包括:通过第一线程读取与所述第一线程对应的第一数据块;通过所述第一线程对所述第一数据块执行数据处理,得到至少一个第一中间数据;基于所述至少一个第一中间数据中的至少部分第一中间数据、以及第二线程得到的第二中间数据,得到所述第一线程对应的结果数据块中的第一结果值。
[0005]这样,通过第一线程读取与第一线程对应的数据块,并通过第一线程对第一数据块执行数据处理,得到至少一个中间数据,然后基于至少一个第一中间数据中的至少部分第一中间数据、以及第二线程得到的第二中间数据,得到第一线程对应的数据块中的第一结果值,该过程通过线程之间传递计算的中间数据,并基于中间数据得到每个线程对应的结果数据块中的结果值,从而减少不同线程对相同数据的读取次数,进而提升数据获取的速度,提升数据处理效率。
[0006]一种可选的实施方式中,所述基于所述至少一个第一中间数据中的至少部分第一中间数据、以及第二线程得到的第二中间数据,得到所述第一线程对应的结果数据块中的第一结果值,包括:通过所述第一线程,从所述第二线程的寄存器中读取所述第二线程得到的所述第二中间数据;基于所述至少一个第一中间数据以及读取到的所述第二中间数据,得到所述结果数据块中的第一结果值。
[0007]这样,每个线程将计算的中间数据,存储至对应的寄存器中,每个线程只需要读取部分数据,因而能够有效减少不同线程对相同数据的重复性读取,而是直接在线程之间传递中间数据,来完成各个线程的后续计算;线程之间传递数据的速度,远高于从缓存中读取数据的速度,提升数据处理任务的效率。
[0008]一种可选的实施方式中,还包括:基于所述第一线程与其他线程之间的数据依赖关系,从所述其他线程中确定所述第二线程。
[0009]这样,可以从具有数据依赖关系的第二线程,得到数据处理过程中需要的第二中间数据。
[0010]一种可选的实施方式中,所述第二中间数据,是所述第二线程对第二数据块执行
数据处理得到的。
[0011]一种可选的实施方式中,所述第一数据块包括输入数据中的一列数据。
[0012]这样,在同一线程块中,不同线程读取的数据块均不同,而在后续的数据处理过程中,每个线程在基于读取的数据块得到第一中间数据,再从其他的数据块得到第二中间数据,并利用至少部分第一中间数据和读取的第二中间数据,得到处理结果,减少不同数据对重复数据的读取,提升数据处理的效率。
[0013]一种可选的实施方式中,所述至少一个第一中间数据中的至少部分,还用于第三线程得到对应的结果数据块中的第三处理数值。
[0014]一种可选的实施方式中,所述通过第一线程读取与所述第一线程对应的第一数据块,包括:通过所述第一线程按照与所述第一数据块对应的数据缓存方式缓存读取所述第一数据块;所述第一数据块对应的数据缓存方式是基于所述第一数据块的级别确定的。
[0015]这样,能够通过将不同线程对应的数据块分为不同的级别,然后根据不同数据块的级别指示的数据缓存方式缓存读取对应的数据块,进而能够针对不同的数据块的实际访问情况,区分不同的缓存方式,从而能够根据实际的数据访问情况,来实现数据的缓存,提升数据的读取效率,提升数据处理的效率。
[0016]一种可选的实施方式中,所述第一数据块的级别基于所述第一线程归属的线程块对应的输入数据的信息确定。
[0017]一种可选的实施方式中,所述第一数据块的级别越高,对应的数据缓存方式中用于缓存所述第一数据块的缓存数量越多;和/或
[0018]在第一数据缓存方式和不同于所述第一数据缓存方式的第二数据缓存方式中,所述第一数据块缓存在至少部分不同的缓存层中;和/或
[0019]在第三数据缓存方式中,所述第一数据块被缓存至第一特定缓存层,在不同于所述第三数据缓存方式的第四数据缓存方式中,所述第一数据块不被缓存至所述第一特定缓存层;
[0020]和/或,在第五数据缓存方式和不同于所述第五缓存方式的第六数据缓存方式中,所述第一数据块在相同的第二特定缓存层中的替换优先级不同。
[0021]这样,通过设置不同的等级,并为不同等级确定不同的数据缓存方式,能够实现针对不同数据进行分类缓存,提升缓存数据的利用率。
[0022]一种可选的实施方式中,所述第一线程归属的线程块的输入数据的信息,包括:多个线程块对应的所有输入数据的起始存储地址、以及每个线程块的输入数据的存储地址相对于所述起始存储地址的偏移量。
[0023]这样,可以方便的确定各个线程对应的输入数据。
[0024]一种可选的实施方式中,所述第一数据块的级别是基于所述第一线程归属的线程块对应输入数据的信息确定第一数据块的共享程度信息,并基于第一数据块的共享程度信息、所述共享程度信息与多个预设级别对应关系确定的。
[0025]这样,可以通过上述共享程度信息,来为第一数据块确定等级,进而能够将共享程度高的数据尽量缓存至各个线程块均能访问的缓存;而降共享程度低的数据尽量缓存至只有部分线程块能够访问的缓存,从而提升了缓存中所存储数据的访问率,提升数据处理过程中数据的读取效率。
[0026]一种可选的实施方式中,所述第一数据块的共享程度信息,包括:需要访问所述第一数据块的线程块在执行数据处理任务的所有线程块中所占的比例。
[0027]第二方面,本公开实施例还提供一种数据处理装置,包括:读取模块,用于通过第一线程读取与所述第一线程对应的第一数据块;第一处理模块,用于通过所述第一线程对所述第一数据块执行数据处理,得到至少一个第一中间数据;第二处理模块,用于基于所述至少一个第一中间数据中的至少部分第一中间数据、以及第二线程得到的第二中间数据,得到所述第一线程对应的结果数据块中的第一结果值。
[0028]一种可能的实施方式中,第二处理模块,在基于所述至少一个第一中间数据中的至少部分第一中间数据、以及第二线程得到的第二中间数据,得到所述第一线程对应的结果数据块中的第一结果值时,用于:通过所述第一线程,从所述第二线程的寄存器中读取所述第二线程得到的所述第二中间数据;基于所述至少一个第一中间数据以及读取到的所述第二中间数据,得到所述结果数据块中的第一结果值。
[0029]一种可能的实施方式中,还包本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据处理方法,其特征在于,包括:通过第一线程读取与所述第一线程对应的第一数据块;通过所述第一线程对所述第一数据块执行数据处理,得到至少一个第一中间数据;基于所述至少一个第一中间数据中的至少部分第一中间数据、以及第二线程得到的第二中间数据,得到所述第一线程对应的结果数据块中的第一结果值。2.根据权利要求1所述的数据处理方法,其特征在于,所述基于所述至少一个第一中间数据中的至少部分第一中间数据、以及第二线程得到的第二中间数据,得到所述第一线程对应的结果数据块中的第一结果值,包括:通过所述第一线程,从所述第二线程的寄存器中读取所述第二线程得到的所述第二中间数据;基于所述至少一个第一中间数据以及读取到的所述第二中间数据,得到所述结果数据块中的第一结果值。3.根据权利要求2所述的数据处理方法,其特征在于,还包括:基于所述第一线程与其他线程之间的数据依赖关系,从所述其他线程中确定所述第二线程。4.根据权利要求1或2所述的数据处理方法,其特征在于,所述第二中间数据,是所述第二线程对第二数据块执行数据处理得到的。5.根据权利要求1-4任一项所述的数据处理方法,其特征在于,所述第一数据块包括输入数据中的一列数据。6.根据权利要求1-5任一项所述的数据处理方法,其特征在于,所述至少一个第一中间数据中的至少部分,还用于第三线程得到对应的结果数据块中的第三处理数值。7.根据权利要求1-6任一项所述的数据处理方法,其特征在于,所述通过第一线程读取与所述第一线程对应的第一数据块,包括:通过所述第一线程按照与所述第一数据块对应的数据缓存方式缓存读取所述第一数据块;所述第一数据块对应的数据缓存方式是基于所述第一数据块的级别确定的。8.根据权利要求7所述的数据处理方法,其特征在于,所述第一数据块的级别基于所述第一线程归属的线程块对应的输入数据的信息确定。9.根据权利要求7或8所述的数据处理方法,其特征在于,所述第一数据块的级别越高,对应的数据缓存方式中用于缓存所述第一数据块的缓存数量越多;和/或,在第一数据缓存方式和不同于所述第一数据缓存方式的第二数据缓存方式...

【专利技术属性】
技术研发人员:李天健戴彦
申请(专利权)人:上海商汤智能科技有限公司
类型:发明
国别省市:

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

1