本公开涉及计算机技术,尤其是一种数据处理方法、装置、介质和设备。
背景技术:
1、在当前的计算机系统中,特别是高性能计算环境中,通常会采用各种不同类型的硬件执行不同的数据计算任务,不同类型的硬件例如可以包括处理器、数字信号处理单元、图像处理单元、神经网络处理器等。不同硬件资源往往具有不同的架构、指令集和编程模型等特性。因此,用户需要使用不同硬件分别对应的运行、驱动库进行应用程序的开发,存在开发难度较大、调试便利性差等问题。
技术实现思路
1、本公开的实施例提供了一种数据处理方法、装置、介质和设备,可以实现各种硬件的统一调用,降低用户应用程序的开发难度,提高调试便利性。
2、本公开的第一个方面,提供了一种数据处理数据处理方法,包括:
3、确定待处理的数据计算任务;
4、基于所述数据计算任务,生成所述数据计算任务对应的计算图,所述计算图包括用于完成所述数据计算任务的至少一个算子;
5、根据多个硬件的性能参数和当前资源使用状态,确定各所述算子分别对应的目标硬件;
6、将各所述算子对应的计算指令序列分别传输至所述算子对应的目标硬件,以使各所述目标硬件执行各所述计算指令序列;
7、基于各所述目标硬件的执行结果,确定所述数据计算任务对应的处理结果。
8、本公开的第二个方面,提供了一种数据处理装置,包括:
9、第一处理模块,用于确定待处理的数据计算任务;
10、第二处理模块,用于基于所述数据计算任务,生成所述数据计算任务对应的计算图,所述计算图包括用于完成所述数据计算任务的至少一个算子;
11、第三处理模块,用于根据多个硬件的性能参数和当前资源使用状态,确定各所述算子分别对应的目标硬件;
12、传输模块,用于将各所述算子对应的计算指令序列分别传输至所述算子对应的目标硬件,以使各所述目标硬件执行各所述计算指令序列;
13、第四处理模块,用于基于各所述目标硬件的执行结果,确定所述数据计算任务对应的处理结果。
14、本公开的第三个方面,提供一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序用于执行本公开上述任一实施例所述的数据处理方法。
15、本公开的第四个方面,提供一种电子设备,所述电子设备包括:处理器;用于存储所述处理器可执行指令的存储器;所述处理器,用于从所述存储器中读取所述可执行指令,并执行所述指令以实现本公开上述任一实施例所述的数据处理方法。
16、本公开的第五个方面,提供了一种计算机程序产品,当所述计算机程序产品中的指令被处理器执行时,执行本公开上述任一实施例提供的数据处理方法。
17、基于本公开上述实施例提供的数据处理方法、装置、介质和设备,可以在需要进行数据处理的情况下,基于待处理的数据计算任务,生成数据计算任务对应的计算图,计算图包括用于完成数据计算任务的算子;进而可以根据多个硬件的性能参数和当前资源使用状态,确定各算子分别对应的目标硬件,将各算子对应的计算指令序列分别传输至算子对应的目标硬件,以使各目标硬件执行相应的计算指令序列,基于各目标硬件的执行结果,确定数据计算任务对应的处理结果。本公开实施例通过将各种硬件的计算能力抽象成相应的算子,使得用户可以在应用程序开发时,通过调用算子实现各种硬件的统一调度,用户只需掌握抽象出的算子的使用方式,无需掌握不同硬件的架构、指令集、编程模型等,从而可以大大降低用户应用程序的开发难度,提高调试便利性。
1.一种数据处理方法,包括:
2.根据权利要求1所述的方法,其中,所述基于所述数据计算任务,生成所述数据计算任务对应的计算图,包括:
3.根据权利要求2所述的方法,其中,所述根据所述数据计算任务的任务类型,确定所述数据计算任务对应的所述计算图,包括:
4.根据权利要求2所述的方法,其中,所述根据所述数据计算任务的任务类型,确定所述数据计算任务对应的所述计算图,包括:
5.根据权利要求1所述的方法,其中,所述根据多个硬件的性能参数和当前资源使用状态,确定各所述算子分别对应的目标硬件,包括:
6.根据权利要求1所述的方法,其中,在所述确定待处理的数据计算任务之后,所述方法还包括:
7.根据权利要求6所述的方法,其中,所述根据所述用户的指定硬件、所述指定硬件的性能参数和当前资源使用状态,确定各所述算子分别对应的所述目标硬件,包括:
8.根据权利要求7所述的方法,其中,所述方法还包括:
9.根据权利要求1-8任一项所述的方法,其中,所述方法还包括:
10.一种数据处理装置,包括:
11.一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序用于执行上述权利要求1-9任一所述的方法。
12.一种电子设备,所述电子设备包括: