GPU的数据超发预取方法、图形处理器、设备及介质与流程

摘要: 本发明涉及计算机,尤其涉及一种gpu的数据超发预取方法、图形处理器、设备及介质。背景技术:1、随着人工智能(artificialintelligence,ai)...
GPU的数据超发预取方法、图形处理器、设备及介质与流程

本发明涉及计算机,尤其涉及一种gpu的数据超发预取方法、图形处理器、设备及介质。

背景技术:

1、随着人工智能(artificial intelligence,ai)技术的爆发式发展,图形处理器(graphics processing unit,gpu)的算力成为影响ai推理性能的核心因素。gpu算力一方面受内部执行能力的直接影响,另一方面受数据供给通路的影响。

2、为了充分发挥gpu内部执行核心的算力,需要将其执行所需的数据提前准备好,否则执行核心会因需要等待数据而出现闲置时间。而现有技术中,在通用寄存器(generalpurpose register file,gpr)资源受限时,通常采用串行顺序加载数据、消耗数据,再加载数据、消耗数据的方式。串行顺序的方式会使多轮次的数据加载延时累加在一起,加剧数据读取时延,致使gpu执行核心出现闲置时间,影响gpu算力。

技术实现思路

1、本发明提供了一种gpu的数据超发预取方法、图形处理器、设备及介质,以将多次数据读取延迟折叠,提升执行核心算力。

2、根据本发明的一方面,提供了一种gpu的数据超发预取方法,该方法应用于gpu中,所述gpu包括:gpu执行核心、采样控制器、数据读写单元、通用寄存器以及全局内存;所述方法包括:

3、gpu执行核心向采样控制器连续下发针对同一目的地址的多个数据读取指令,其中,各所述数据读取指令中携带目的地址的请求版本号;

4、采样控制器根据所述数据读取指令,向数据读写单元发起数据读取请求;

5、数据读写单元根据所述数据读取请求在全局内存中获取预取数据,采用所述请求版本号标记并存储所述预取数据;

6、数据读写单元根据gpu执行核心的同步标志,确定目标请求版本号,并将与所述目标请求版本号对应的预取数据传输至通用寄存器中;

7、gpu执行核心在通用寄存器中读取预取数据进行计算。

8、根据本发明的另一方面,提供了一种图形处理器,该图形处理器包括:gpu执行核心、采样控制器、数据读写单元、通用寄存器以及全局内存;其中,

9、gpu执行核心,用于向采样控制器连续下发针对同一目的地址的多个数据读取指令,其中,各所述数据读取指令中携带目的地址的请求版本号;

10、采样控制器,用于根据所述数据读取指令,向数据读写单元发起数据读取请求;

11、数据读写单元,用于根据所述数据读取请求在全局内存中获取预取数据,采用所述请求版本号标记并存储所述预取数据;

12、数据读写单元,还用于根据gpu执行核心的同步标志,确定目标请求版本号,并将与所述目标请求版本号对应的预取数据传输至通用寄存器中;

13、gpu执行核心,还用于在通用寄存器中读取预取数据进行计算。

14、根据本发明的另一方面,提供了一种电子设备,所述电子设备包括:

15、至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,

16、所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明任一实施例所述的gpu的数据超发预取方法。

17、根据本发明的另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现本发明任一实施例所述的gpu的数据超发预取方法。

18、根据本发明的另一方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现本发明任一实施例所述的gpu的数据超发预取方法。

19、本发明实施例的技术方案,通过gpu执行核心向采样控制器连续下发针对同一目的地址的多个数据读取指令,其中,各所述数据读取指令中携带目的地址的请求版本号;采样控制器根据所述数据读取指令,向数据读写单元发起数据读取请求;数据读写单元根据所述数据读取请求在全局内存中获取预取数据,采用所述请求版本号标记并存储所述预取数据;数据读写单元根据gpu执行核心的同步标志,确定目标请求版本号,并将与所述目标请求版本号对应的预取数据传输至通用寄存器中;gpu执行核心在通用寄存器中读取预取数据进行计算,解决了gpu数据预取的问题,通过同时下发对于同一目的地址的多个数据读取指令,可以将多次数据读取延迟折叠,提升执行核心算力。

20、应当理解,本部分所描述的内容并非旨在标识本发明的实施例的关键或重要特征,也不用于限制本发明的范围。本发明的其它特征将通过以下的说明书而变得容易理解。

1.一种gpu的数据超发预取方法,其特征在于,所述方法应用于gpu中,所述gpu包括:gpu执行核心、采样控制器、数据读写单元、通用寄存器以及全局内存;所述方法包括:

2.根据权利要求1所述的方法,其特征在于,还包括:

3.根据权利要求1所述的方法,其特征在于,gpu执行核心在通用寄存器中读取预取数据进行计算,包括:

4.根据权利要求3所述的方法,其特征在于,gpu执行核心在确定查询通过时,还包括:复位数据查询信号。

5.根据权利要求3所述的方法,其特征在于,

6.根据权利要求5所述的方法,其特征在于,

7.根据权利要求1所述的方法,其特征在于,所述同步标志位数与gpu执行核心的线程数量相关;

8.一种图形处理器,其特征在于,所述图形处理器包括:gpu执行核心、采样控制器、数据读写单元、通用寄存器以及全局内存;其中,

9.根据权利要求8所述的图形处理器,其特征在于,

10.根据权利要求8所述的图形处理器,其特征在于,

11.一种电子设备,其特征在于,所述电子设备包括:

12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使图形处理器执行时实现权利要求1-7中任一项所述的gpu的数据超发预取方法。