[发明专利]线程块派发方法、计算装置以及片上系统在审
申请号: | 202310410158.5 | 申请日: | 2023-04-17 |
公开(公告)号: | CN116433458A | 公开(公告)日: | 2023-07-14 |
发明(设计)人: | 田云 | 申请(专利权)人: | 平头哥(上海)半导体技术有限公司 |
主分类号: | G06T1/20 | 分类号: | G06T1/20;G06T1/60;G06F9/50 |
代理公司: | 北京合智同创知识产权代理有限公司 11545 | 代理人: | 李杰;杨雷 |
地址: | 201208 上海市浦东新区中国(上海*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 线程 派发 方法 计算 装置 以及 系统 | ||
本发明实施例提供了一种线程块派发方法、计算装置以及片上系统。所述线程块派发方法包括:确定与多个计算引擎分别对应的多个线程块组,每个线程块组包括执行线程彼此关联的多个线程块;确定所述多个计算引擎中的当前轮询计算引擎;从所述多个线程块组中,确定与所述当前轮询计算引擎对应的当前线程块组;将所述当前线程块组中的线程块派发到所述当前轮询计算引擎。本发明实施例的方案提高了在线程块处理过程中计算引擎的缓存局部性。
技术领域
本发明实施例涉及计算机技术领域,尤其涉及一种线程块派发方法、计算装置以及片上系统。
背景技术
在诸如通用图形处理器(General-purpose computing on graphics processingunits,GPGPU)的并行处理器中,在对执行线程进行处理时,将各个执行线程组织成作为基本派发单元的线程块,进而将各个线程块组织成基于多个索引维度的线程网格。此外,每个线程块中的各个执行线程可以并发地执行,驱动程序内核定义了由多个相关线程块组成的线程块,使得同一线程块中的各个执行线程可以通过共享存储器交换数据。
一般地,核函数将线程分为三个层次:线程网格、线程块以及线程。与此相关联,诸如GPGPU的并行处理器的硬件存在三个层次:核心、流式多处理器、器件。在并行处理器执行不同类型的数据处理任务时,取决于特定的编译框架,往往需要对核函数进行线程块的划分,并把线程块派发到各个计算引擎里去执行,不同的划分和派发的方案往往对线程块的派发吞吐率和计算引擎的高速缓存局部性会有很大的影响。
在目前的划分和派发的方案中,为了实现多个计算引擎的并行计算所带来的高吞吐率,相邻线程块会被派发到不同的计算引擎中,同一计算引擎的执行线程相关性较低,导致计算引擎的缓存局部性还有提升空间。
发明内容
有鉴于此,本发明实施例提供一种线程块派发方法、计算装置以及片上系统,以至少部分解决上述问题。
根据本发明实施例的第一方面,提供了一种线程块派发方法,包括:确定与多个计算引擎分别对应的多个线程块组,每个线程块组包括执行线程彼此关联的多个线程块;确定所述多个计算引擎中的当前轮询计算引擎;从所述多个线程块组中,确定与所述当前轮询计算引擎对应的当前线程块组;将所述当前线程块组中的线程块派发到所述当前轮询计算引擎。
在本发明的另一实现方式中,每个计算引擎包括多个计算单元,所述方法还包括:从所述当前线程块组中,确定分别与多个计算单元对应的多个子线程块组;所述将所述当前线程块组中的线程块派发到所述当前轮询计算引擎,包括:将所述当前线程块组的当前子线程块组中的线程块派发到所述当前轮询计算引擎中的对应计算单元。
在本发明的另一实现方式中,派发到同一计算引擎的同一计算单元的各个线程块之间的数据相关性高于派发到同一计算引擎的不同计算单元的各个线程块之间的数据相关性。
在本发明的另一实现方式中,每个计算引擎配置有第一缓存,每个计算单元配置有第二缓存,所述第一缓存的缓存级别高于所述第二缓存的缓存级别。
在本发明的另一实现方式中,所述将所述当前线程块组的当前子线程块组中的线程块派发到所述当前轮询计算引擎中的对应计算单元,包括:确定与当前轮询时段对应的共用计算单元标识,所述共用计算单元标识指示所述多个计算引擎之间的对应计算单元;向所述当前轮询计算引擎中与所述共用计算单元标识指示的当前计算单元,派发与所述当前计算单元对应的当前子线程块组中的线程块。
在本发明的另一实现方式中,所述确定与多个计算引擎分别对应的多个线程块组,包括:分别针对所述多个计算引擎,将所述线程网格划分所述多个线程块组,使每个线程块组中的各个线程块的执行线程标识为连续。
在本发明的另一实现方式中,所述方法还包括:分别针对每个计算引擎的多个计算单元,将该计算引擎对应的线程块组划分成多个子线程块组,使每个子线程块组中的各个线程块的执行线程标识为连续。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于平头哥(上海)半导体技术有限公司,未经平头哥(上海)半导体技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202310410158.5/2.html,转载请声明来源钻瓜专利网。