本申请涉及数据处理,并且更为具体地,涉及一种处理器、任务调度方法和异构计算系统。
背景技术:
1、处理器(cpu,central processing unit)能够用于执行诸如spark sql的计算模块,这类计算模块可以包括多个计算任务,每个计算任务中又可以包括多个原生算子,每个原生算子上可以承载至少一个表达式。其中,spark sql是一种专门用于处理结构化数据的计算模块,其允许用户使用标准的sql语句来对存储仓库执行查询和读写。
2、目前,为了减轻处理器的负担,通常会将计算任务中符合预设条件的各个算子卸载到诸如数据处理单元(dpu,distributed processing unit)等加速器上,从而使处理器能够专注于整个计算模块的运算调度,加速器则能够专注于算子的计算。预设条件是指算子和该算子所承载的全部表达式均能够转换为dpu格式,而那些不符合预设条件的算子,及其所承载的全部表达式仍会在cpu上运行。
3、如此,就会导致一些算子不能被卸载到dpu上运行,导致诸如cpu的处理器的运行负担仍然较重。
技术实现思路
1、本申请提供了一种处理器、任务调度方法和异构计算系统,能够将更多的算子被卸载到加速器上。
2、第一方面,提供了一种处理器,包括:
3、本地执行单元,
4、确定单元,确定计算任务中的原生算子所承载的各个表达式的类别;
5、转换单元,将所述各个表达式中的第一表达式转换成加速器的执行数据格式,并且将所述各个表达式中的第二表达式转换为与所述加速器适配的兼容数据格式;
6、调度单元,将转换为所述兼容数据格式的第二表达式调度到所述本地执行单元,并且将转换为所述执行数据格式的第一表达式调度到所述加速器上。
7、通过本申请实施例的技术方案,可以使原生算子中的第一表达式在加速器上执行,使第二表达式在处理器上执行,使得更多的算子能够被部分卸载到加速器上,实现处理器和加速器混合执行一个原生算子,降低处理器器的负担,提升整体执行性能。
8、在一种可能的实现方式中,所述确定单元还用于:判断所述表达式是否能够转换为所述执行数据格式,若为是,则将所述表达式确定为所述第一表达式;若为否,则将所述表达式确定为其余表达式。
9、在一种可能的实现方式中,所述确定单元还用于:如果所述其余表达式能够转换为所述兼容数据格式,则将所述其余表达式确定为所述第二表达式。
10、在一种可能的实现方式中,所述确定单元还用于:如果所述其余表达式不能转换为所述兼容数据格式,则将所述其余表达式确定为所述第三表达式;相应的,所述调度单元还用于:将所述原生算子所承载的所述第三表达式调度到所述本地执行单元。
11、在一种可能的实现方式中,所述确定单元还用于:
12、判断所述原生算子所承载的至少一个表达式在所述加速器的执行效率是否大于所述至少一个表达式在所述处理器的执行效率;
13、若为是,将所述至少一个表达式确定为所述第一表达式;
14、若为否,将所述至少一个表达式确定为第四表达式。
15、在一种可能的实现方式中,所述转换单元还用于:将所述各个表达式中的第四表达式转换为与所述加速器适配的兼容数据格式;所述调度单元还用于:将转换为所述兼容数据格式的第四表达式调度到所述本地执行单元。
16、在一种可能的实现方式中,在所述确定计算任务中的原生算子所承载的各个表达式之前,所述确定单元还用于:能够由原生格式替换为变形格式,该变形格式能够支持执行数据格式和兼容数据格式的表达式;相应地,所述调度单元还用于:将所述原生算子的第一表达式调度到所述加速器上执行,将所述原生算子的第二表达式调度到所述本地执行单元。
17、在一种可能的实现方式中,在所述确定计算任务中的原生算子所承载的各个表达式之前,所述确定单元还用于:确定所述原生算子不能够由原生格式替换为变形格式,该变形格式能够支持执行数据格式和兼容数据格式的表达式;相应地,所述调度单元还用于:将所述原生算子所承载的各个表达式调度到所述本地执行单元。
18、第二方面,本申请还提供一种任务调度方法,包括:
19、确定计算任务中的原生算子所承载的各个表达式;
20、将所述各个表达式中的第一表达式转换成加速器的执行数据格式,并且将所述各个表达式中的第二表达式转换为与所述加速器适配的兼容数据格式;
21、本地执行转换为所述兼容数据格式的第二表达式,并且将转换为所述执行数据格式的第一表达式调度到所述加速器上。
22、第三方面,本申请还提供一种异构计算系统,包括加速器和上述的处理器。
1.一种处理器,其特征在于,包括:
2.根据权利要求1所述的处理器,其特征在于,所述确定单元还用于:判断所述表达式是否能够转换为所述执行数据格式,若为是,则将所述表达式确定为所述第一表达式;
3.根据权利要求2所述的处理器,其特征在于,所述确定单元还用于:如果所述其余表达式能够转换为所述兼容数据格式,则将所述其余表达式确定为所述第二表达式。
4.根据权利要求3所述的处理器,其特征在于,所述确定单元还用于:如果所述其余表达式不能转换为所述兼容数据格式,则将所述其余表达式确定为第三表达式;
5.根据权利要求1所述的处理器,其特征在于,所述确定单元还用于:
6.根据权利要求5所述的处理器,其特征在于,
7.根据权利要求1所述的处理器,其特征在于,在所述确定计算任务中的原生算子所承载的各个表达式之前,
8.根据权利要求1所述的处理器,其特征在于,在所述确定计算任务中的原生算子所承载的各个表达式之前,所述确定单元还用于:确定所述原生算子不能够由原生格式替换为变形格式,该变形格式能够支持执行数据格式和兼容数据格式的表达式;
9.一种任务调度方法,其特征在于,包括:
10.一种异构计算系统,其特征在于,包括加速器和根据权利要求1-8中任一项所述的处理器。