批处理程序执行方法、装置及系统制造方法及图纸

技术编号:35894328 阅读:13 留言:0更新日期:2022-12-10 10:27
本公开涉及计算机技术领域,涉及一种批处理程序执行方法、装置及系统,以降低资源开销。该方法应用于用户设备,批处理程序包括在共享设备上执行的异构子程序,共享设备配置有用户设备的镜像内存,镜像内存的虚拟地址与用户设备内存的虚拟地址一致,镜像内存在被访问前没有被分配对应的物理内存,该方法包括:确定批处理程序当前执行的子程序;在子程序为异构子程序的情况下,将异构子程序对应的执行数据发送至共享设备,以使共享设备将执行数据同步至镜像内存中,其中同步至镜像内存的执行数据用于在共享设备的异构硬件上执行异构子程序;响应于接收到共享设备执行异构子程序的执行结果,继续执行批处理程序。继续执行批处理程序。继续执行批处理程序。

【技术实现步骤摘要】
批处理程序执行方法、装置及系统


[0001]本公开涉及计算机
,具体地,涉及一种批处理程序执行方法、装置及系统。

技术介绍

[0002]随着高性能计算需求的增加,通用计算能力较强但专有计算能力较弱的CPU(Central Processing Unit,中央处理器)已经难以满足用户的计算需求。越来越多的用户采用具备较强专有计算能力的异构设备进行高性能计算。异构设备通常包括GPU(Graphics Processing Unit,图形处理器)、TPU(Tensor Processing Unit,张量处理器)以及AMD显卡等具备高性能专有计算能力的异构硬件。为了降低资源开销,通常可以将计算相关的一系列操作打包成批处理程序,并一次性加载到异构设备中,由此提升计算性能。
[0003]由于异构硬件的成本较高,相关技术将包含异构硬件的异构设备进行共享,以供多个用户在共享的异构设备上进行高性能计算。然而,如何提高在共享的异构设备上执行批处理程序的性能是亟待解决的问题。

技术实现思路

[0004]本公开的目的是提供一种批处理程序执行方法、装置及系统,以降低资源开销。
[0005]为了实现上述目的,本公开的第一方面提供一种批处理程序执行方法,应用于用户设备,所述批处理程序包括在共享设备上执行的异构子程序,所述共享设备配置有所述用户设备的镜像内存,所述镜像内存的虚拟地址与所述用户设备内存的虚拟地址一致,所述镜像内存在被访问前没有被分配对应的物理内存,所述方法包括:确定所述批处理程序当前执行的子程序;在所述子程序为所述异构子程序的情况下,将所述异构子程序对应的执行数据发送至所述共享设备,以使所述共享设备将所述执行数据同步至所述镜像内存中,其中同步至所述镜像内存的执行数据用于在所述共享设备的异构硬件上执行所述异构子程序;响应于接收到所述共享设备执行所述异构子程序的执行结果,继续执行所述批处理程序。
[0006]可选地,所述执行数据包括计算数据以及目标虚拟地址,所述目标虚拟地址用于指示所述共享设备确定所述镜像内存中是否存在对应所述目标虚拟地址的目标物理内存,在确定存在所述目标物理内存的情况下,将所述计算数据写入所述目标物理内存中,在确定不存在所述目标物理内存的情况下,分配对应所述目标虚拟地址的目标物理内存,并将所述计算数据写入所述目标物理内存中。
[0007]可选地,所述确定所述批处理程序当前执行的子程序,包括:根据所述批处理程序当前调用的接口,确定所述批处理程序执行的子程序。
[0008]可选地,所述批处理程序还包括在所述用户设备上执行的普通子程序,所述方法还包括:
在所述子程序为所述普通子程序的情况下,根据所述普通子程序对应的执行数据执行所述普通子程序。
[0009]本公开的第二方面提供一种批处理程序执行方法,应用于共享设备,所述共享设备包括用于执行异构子程序的异构硬件,所述批处理程序包括所述异构子程序,所述共享设备配置有用户设备的镜像内存,所述镜像内存的虚拟地址与所述用户设备内存的虚拟地址一致,所述镜像内存在被访问前没有被分配对应的物理内存,所述方法包括:响应于接收到用户设备发送的用于执行所述异构子程序的执行数据,将所述执行数据同步至所述镜像内存;根据所述执行数据在所述异构硬件上执行所述异构子程序;将执行所述异构子程序的执行结果反馈至所述用户设备,以使所述用户设备继续执行所述批处理程序。
[0010]可选地,所述执行数据包括计算数据以及目标虚拟地址,所述将所述执行数据同步至所述镜像内存,包括:确定所述镜像内存中是否存在对应所述目标虚拟地址的目标物理内存;在确定存在所述目标物理内存的情况下,将所述计算数据写入所述目标物理内存中;所述方法还包括:在确定不存在所述目标物理内存的情况下,分配对应所述目标虚拟地址的目标物理内存。
[0011]可选地,所述将执行所述异构子程序的执行结果反馈至所述用户设备,包括:将执行所述异构子程序的执行结果同步至所述镜像内存中,并将同步至所述镜像内存的执行结果发送至所述用户设备。
[0012]本公开的第三方面提供一种批处理程序执行装置,应用于用户设备,所述批处理程序包括在共享设备上执行的异构子程序,所述共享设备配置有所述用户设备的镜像内存,所述镜像内存的虚拟地址与所述用户设备内存的虚拟地址一致,所述镜像内存在被访问前没有被分配对应的物理内存,所述装置包括:确定模块,用于确定所述批处理程序当前执行的子程序;发送模块,用于在所述子程序为所述异构子程序的情况下,将所述异构子程序对应的执行数据发送至所述共享设备,以使所述共享设备将所述执行数据同步至所述镜像内存中,其中同步至所述镜像内存的执行数据用于在所述共享设备的异构硬件上执行所述异构子程序;第一响应模块,用于响应于接收到所述共享设备执行所述异构子程序的执行结果,继续执行所述批处理程序。
[0013]本公开的第四方面提供一种批处理程序执行装置,应用于共享设备,所述共享设备包括用于执行异构子程序的异构硬件,所述批处理程序包括所述异构子程序,所述共享设备配置有用户设备的镜像内存,所述镜像内存的虚拟地址与所述用户设备内存的虚拟地址一致,所述镜像内存在被访问前没有被分配对应的物理内存,所述装置包括:第二响应模块,用于响应于接收到用户设备发送的用于执行所述异构子程序的执行数据,将所述执行数据同步至所述镜像内存;
第二执行模块,用于根据所述执行数据在所述异构硬件上执行所述异构子程序;反馈模块,用于将执行所述异构子程序的执行结果反馈至所述用户设备,以使所述用户设备继续执行所述批处理程序。
[0014]本公开的第五方面提供一种批处理程序执行系统,包括:用户设备以及共享设备;其中所述用户设备用于实现第一方面中任一项所述方法的步骤,所述共享设备用于实现第二方面中任一项所述方法的步骤。
[0015]通过上述技术方案,在共享设备上配置用户设备的镜像内存,并利用镜像内存实现批处理程序中子程序的镜像拷贝,从而可以仅将异构子程序发送至共享设备执行,由此降低数据传输的资源开销以及共享设备计算的资源开销。并且被配置在共享设备的镜像内存在被访问时才被分配对应的物理内存,这样可以降低共享设备内存的资源开销。相比于相关技术中全量拷贝以及统一内存编址的方式,采用本公开的这种方式,可以有效降低资源开销,从而提升批处理程序执行的性能。
[0016]本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
[0017]附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:图1是根据一示例性实施例示出的一种批处理程序执行方法的流程图。
[0018]图2是根据另一示例性实施例示出的一种批处理程序执行方法的流程图。
[0019]图3是根据一示例性实施例示出的一种第一批处理程序执行装置的框图。
[0020]图4是根据一示例性实施例示出的一种第二批处理程序执行装置的框图。
[本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种批处理程序执行方法,其特征在于,应用于用户设备,所述批处理程序包括在共享设备上执行的异构子程序,所述共享设备配置有所述用户设备的镜像内存,所述镜像内存的虚拟地址与所述用户设备内存的虚拟地址一致,所述镜像内存在被访问前没有被分配对应的物理内存,所述方法包括:确定所述批处理程序当前执行的子程序;在所述子程序为所述异构子程序的情况下,将所述异构子程序对应的执行数据发送至所述共享设备,以使所述共享设备将所述执行数据同步至所述镜像内存中,其中同步至所述镜像内存的执行数据用于在所述共享设备的异构硬件上执行所述异构子程序;响应于接收到所述共享设备执行所述异构子程序的执行结果,继续执行所述批处理程序。2.根据权利要求1所述的方法,其特征在于,所述执行数据包括计算数据以及目标虚拟地址,所述目标虚拟地址用于指示所述共享设备确定所述镜像内存中是否存在对应所述目标虚拟地址的目标物理内存,在确定存在所述目标物理内存的情况下,将所述计算数据写入所述目标物理内存中,在确定不存在所述目标物理内存的情况下,分配对应所述目标虚拟地址的目标物理内存,并将所述计算数据写入所述目标物理内存中。3.根据权利要求1所述的方法,其特征在于,所述确定所述批处理程序当前执行的子程序,包括:根据所述批处理程序当前调用的接口,确定所述批处理程序执行的子程序。4.根据权利要求1所述的方法,其特征在于,所述批处理程序还包括在所述用户设备上执行的普通子程序,所述方法还包括:在所述子程序为所述普通子程序的情况下,根据所述普通子程序对应的执行数据执行所述普通子程序。5.一种批处理程序执行方法,其特征在于,应用于共享设备,所述共享设备包括用于执行异构子程序的异构硬件,所述批处理程序包括所述异构子程序,所述共享设备配置有用户设备的镜像内存,所述镜像内存的虚拟地址与所述用户设备内存的虚拟地址一致,所述镜像内存在被访问前没有被分配对应的物理内存,所述方法包括:响应于接收到用户设备发送的用于执行所述异构子程序的执行数据,将所述执行数据同步至所述镜像内存;根据所述执行数据在所述异构硬件上执行所述异构子程序;将执行所述异构子程序的执行结果反馈至所述用户设备,以使所述用户设备继续执行所述批处理程序。6.根据权利要求5所述的方法,其特征在于,所述执行数据包括计算数据以及目标虚拟地址,所述将所述执行数据...

【专利技术属性】
技术研发人员:黄增士王鲲陈飞邹懋
申请(专利权)人:维塔科技北京有限公司
类型:发明
国别省市:

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

1