一种并行计算的管理方法和计算系统技术方案

技术编号:39319686 阅读:8 留言:0更新日期:2023-11-12 16:01
本申请实施例提供一种并行计算的管理方法和计算系统,所述计算系统包括多个计算核心,所述多个计算核心并行运行N个进程以执行N个并行计算任务,每个进程对应至少一个计算核心,所述方法包括:分别获取所述N个进程中的每个进程在第一时间段内用于执行计算操作的时长,得到N个第一时长;根据所述N个第一时长对所述N个进程中的至少两个进程对应的计算核心的频率进行调整,使得所述多个进程并行执行所述计算任务的总体时长减少,且执行所述多个进程的计算核心的总功率不增加。本申请实施例提供的方案提高了并行计算的效率。供的方案提高了并行计算的效率。供的方案提高了并行计算的效率。

【技术实现步骤摘要】
一种并行计算的管理方法和计算系统


[0001]本申请涉及计算机
,具体涉及一种并行计算的管理方法和计算系统。

技术介绍

[0002]在高性能计算(High Performance Computing,HPC)场景中,应用通常包括并行运行的多个进程,该多个进程通常会周期性的进行数据交互或同步以完成整体运行逻辑。然而,由于各个进程执行的逻辑不同、处理的数据量不同、或者代码质量的差异,可能导致各个进程负载不均衡,完成并行计算的时长不同,从而多个进程中执行快的进程需要等待执行慢的进程,导致了整体性能的下降。在一种相关技术中,根据各个进程的负载信息重新调整各个进程的计算数据量或任务量,以用于解决多个进程间负载不均衡的问题。该方案需要对多个进程重新进行任务划分,从而不适用于需要在多个进程中进行固定的任务划分的应用。

技术实现思路

[0003]本申请实施例旨在提供一种更有效的并行计算管理方法,以提高并行计算效率。
[0004]为实现上述目的,本申请一方面提供一种并行计算的管理方法,由计算系统执行,所述计算系统包括多个计算核心,所述多个计算核心并行运行N个进程以执行N个并行计算任务,每个进程对应至少一个计算核心,所述方法包括:分别获取所述N个进程中的每个进程在第一时间段内用于执行计算操作的时长,得到N个第一时长;根据所述N个第一时长对所述N个进程中的至少两个进程对应的计算核心的频率进行调整,使得所述N个进程并行执行所述计算任务的总体时长减少,且执行所述N个进程的计算核心的总功率不增加。
[0005]通过根据第一时段中各个进程的计算操作时长调整计算核心的频率来均衡多个进程执行并行计算任务的时长,减少了多个进程并行执行所述计算任务的总体时长,提高了并行计算的效率,并且不需要对应用的代码进行更改,具有更高的普适性。
[0006]在第一方面的一种可能的实施方式中,所述方法还包括:逐一获取所述第一时间段内运行所述N个进程的计算核心的第一频率,得到N个第一频率;根据所述N个第一时长对所述N个进程中的至少两个进程对应的计算核心的频率进行调整包括:根据所述N个第一时长和所述N个第一频率确定运行所述第一进程的计算核心的第二频率,所述第一进程为所述N个进程中的任意一个进程;当所述第一进程对应的计算核心的第一频率与所述第二频率的差值的绝对值大于预设值时,将运行所述第一进程的计算核心的频率调整为所述第二频率。
[0007]通过根据第一时段的各个进程的计算操作时长和计算核心的频率调整计算核心的频率,使得可以进一步均衡多个进程执行并行计算任务的时长。
[0008]在第一方面的一种可能的实施方式中,所述第一进程在所述第一时间段内的操作还包括通信操作,所述获取所述N个进程中的第一进程在第一时间段内用于执行计算操作的时长包括:获取所述第一进程执行所述通信操作的第二时长;从所述第一时间段减去所
述第二时长得到所述第一时长。
[0009]在第一方面的一种可能的实施方式中,所述获取所述第一进程执行所述通信操作的第二时长包括:侦测消息传递接口MPI获取所述第一进程在所述第一时间段内的执行所述通信操作的第二时长。
[0010]在第一方面的一种可能的实施方式中,每个所述并行计算任务中包括多个并行子任务,所述第一时间段为预设的调整周期,所述第一时长为所述一个调整周期内一个或多个并行子任务的时长。
[0011]在第一方面的一种可能的实施方式中,每个所述并行计算任务包括多个并行子任务,所述第一时间段为所述N个进程在并行执行一次并行子任务时,最早完成计算操作的进程的执行计算操作的时长加上从通信操作开始计时,到计时时长超过预设值的时间。
[0012]在第一方面的一种可能的实施方式中,所述计算系统还包括用于运行所述N个进程的M个非计算核心,所述方法还包括:获取所述M个非计算核心在所述第一时间段内的负载信息,根据所述N个第一时长对所述N个进程中的至少两个进程对应的计算核心的频率进行调整包括:根据所述N个第一时长和所述负载信息对所述N个进程中的至少两个进程对应的计算核心的频率进行调整。
[0013]本申请第二方面提供一种计算系统,所述计算系统包括多个计算核心,所述多个计算核心并行运行N个进程以执行N个并行计算任务,每个进程对应至少一个计算核心,所述计算系统包括:获取单元,用于分别获取所述N个进程中的每个进程在第一时间段内用于执行计算操作的时长,得到N个第一时长;调整单元,用于根据所述N个第一时长对所述N个进程中的至少两个进程对应的计算核心的频率进行调整,使得所述N个进程并行执行所述计算任务的总体时长减少,且执行所述N个进程的计算核心的总功率不增加。
[0014]在第二方面的一种可能的实施方式中,所述获取单元还用于逐一获取所述第一时间段内运行所述N个进程的计算核心的第一频率,得到N个第一频率;所述调整单元还用于:根据所述N个第一时长和所述N个第一频率确定运行所述第一进程的计算核心的第二频率,所述第一进程为所述N个进程中的任意一个进程;当所述第一进程对应的计算核心的第一频率与所述第二频率的差值的绝对值大于预设值时,将运行所述第一进程的计算核心的频率调整为所述第二频率。
[0015]在第二方面的一种可能的实施方式中,所述第一进程在所述第一时间段内的操作还包括通信操作,所述获取单元还用于:获取所述第一进程执行所述通信操作的第二时长;从所述第一时间段减去所述第二时长得到所述第一时长。
[0016]在第二方面的一种可能的实施方式中,所述获取单元还用于:侦测消息传递接口MPI获取所述第一进程在所述第一时间段内的执行所述通信操作的第二时长。
[0017]在第二方面的一种可能的实施方式中,每个所述并行计算任务中包括多个并行子任务,所述第一时间段为预设的调整周期,所述第一时长为所述一个调整周期内一个或多个并行子任务的时长。
[0018]在第二方面的一种可能的实施方式中,每个所述并行计算任务包括多个并行子任务,所述第一时间段为所述N个进程在并行执行一次并行子任务时,最早完成计算操作的进程的执行计算操作的时长加上从通信操作开始计时,到计时时长超过预设值的时间。
[0019]在第二方面的一种可能的实施方式中,所述计算系统还包括用于运行所述N个进
程的M个非计算核心,所述获取单元还用于:获取所述M个非计算核心在所述第一时间段内的负载信息,所述调整单元还用于:根据所述N个第一时长和所述负载信息对所述N个进程中的至少两个进程对应的计算核心的频率进行调整。
[0020]本申请第三方面提供一种计算系统,包括处理单元和存储单元,所述存储单元中存储有可执行代码,所述处理单元执行所述可执行代码以实现第一方面所述的方法。
[0021]本申请第四方面提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,当所述计算机程序在计算机或处理器中执行时,令所述计算机或处理器执行第一方面所述的方法。
附图说明
[0022]通过结合附图描述本申请实施例,可以使得本申请实施例更加清楚本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种并行计算的管理方法,由计算系统执行,其特征在于,所述计算系统包括多个计算核心,所述多个计算核心并行运行N个进程以执行N个并行计算任务,每个进程对应至少一个计算核心,所述方法包括:分别获取所述N个进程中的每个进程在第一时间段内用于执行计算操作的时长,得到N个第一时长;根据所述N个第一时长对所述N个进程中的至少两个进程对应的计算核心的频率进行调整,使得所述N个进程并行执行所述计算任务的总体时长减少,且执行所述N个进程的计算核心的总功率不增加。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:逐一获取所述第一时间段内运行所述N个进程的计算核心的第一频率,得到N个第一频率;根据所述N个第一时长对所述N个进程中的至少两个进程对应的计算核心的频率进行调整包括:根据所述N个第一时长和所述N个第一频率确定运行所述第一进程的计算核心的第二频率,所述第一进程为所述N个进程中的任意一个进程;当所述第一进程对应的计算核心的第一频率与所述第二频率的差值的绝对值大于预设值时,将运行所述第一进程的计算核心的频率调整为所述第二频率。3.根据权利要求2所述的方法,其特征在于,所述第一进程在所述第一时间段内的操作还包括通信操作,所述获取所述N个进程中的第一进程在第一时间段内用于执行计算操作的时长包括:获取所述第一进程执行所述通信操作的第二时长;从所述第一时间段减去所述第二时长得到所述第一时长。4.根据权利要求3所述的方法,其特征在于,所述获取所述第一进程执行所述通信操作的第二时长包括:侦测消息传递接口MPI获取所述第一进程在所述第一时间段内的执行所述通信操作的第二时长。5.根据权利要求1所述的方法,其特征在于,每个所述并行计算任务中包括多个并行子任务,所述第一时间段为预设的调整周期,所述第一时长为所述一个调整周期内一个或多个并行子任务的时长。6.根据权利要求1所述的方法,其特征在于,每个所述并行计算任务包括多个并行子任务,所述第一时间段为所述N个进程在并行执行一次并行子任务时,最早完成计算操作的进程的执行计算操作的时长加上从通信操作开始计时,到计时时长超过预设值的时间。7.根据权利要求1

6任一项所述的方法,其特征在于,所述计算系统还包括用于运行所述N个进程的M个非计算核心,所述方法还包括:获取所述M个非计算核心在所述第一时间段内的负载信息,根据所述N个第一时长对所述N个进程中的至少两个进程对应的计算核心的频率进行调整包括:根据所述N个第一时长和所述负载信息对所述N个进程中的至少两个进程对应的计算核心的频率进行调整。8.一种计算系统,其特征在于...

【专利技术属性】
技术研发人员:朱延超李思聪
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

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

1