一种资源调度的方法、装置及计算节点制造方法及图纸

技术编号:36196074 阅读:10 留言:0更新日期:2023-01-04 11:48
一种资源调度的方法,应用于高性能计算领域,该方法包括:获取进程组和处理器的绑定关系,该绑定关系用于指示至少一个进程组中第一进程组的至少一个从线程和处理器中多个处理器核的绑定关系,第一进程组为至少一个进程组中任意一个进程组;然后,监测第一处理器核的工作状态,第一处理器核为上述多个处理器核中任意一个处理器核;当第一处理器核为空闲状态时,根据上述绑定关系调度第一处理器核运行第一从线程,第一从线程为第一进程组中与第一处理器核存在绑定关系的任意一个从线程。由此提高第一处理器核的利用率,提升高性能计算系统的性能。的性能。的性能。

【技术实现步骤摘要】
一种资源调度的方法、装置及计算节点


[0001]本申请涉及计算机
,尤其涉及高性能计算(high performance computing,HPC)领域中一种资源调度的方法、装置及计算节点。

技术介绍

[0002]HPC系统,是指使用同一计算机的多个处理器或者某一集群中多台计算机的计算系统和环境执行复杂运算处理的系统,以解决科学研究、工程应用等领域的超大计算问题。HPC系统中运行多种HPC应用,例如,气象预测、石油分析、天文观测和图像处理。
[0003]目前,用户在利用HPC系统实现超大计算任务时,通常将超大计算任务分解成多个子任务,然后通过编程让HPC系统并行运行多个进程从而实现多个子任务。在HPC系统并行运行多个进程时,由于多个进程中的每个进程的从线程所在的处理器核仅在进程的并行执行区域工作,在进程的串行执行区域以及通信区域时,从线程所在的处理器核空闲,而一个进程的运行过程包括的串行执行区域以及通信区域通常多于并行执行区域,也就是说,在HPC系统并行运行多个进程的过程中,多个进程中的从线程所在的处理器核大多时间是空闲的,利用率较低。
[0004]因此,如何提高从线程所在的处理器核的利用率,是本领域技术人员亟需解决的问题。

技术实现思路

[0005]本申请提供一种资源调度的方法、装置及计算节点,可以有效地提高从线程所在的处理器核的利用率,提升HPC系统的性能。
[0006]第一方面,提供一种资源调度的方法,该方法包括:获取进程组和处理器的绑定关系,该绑定关系用于指示至少一个进程组中第一进程组的至少一个从线程和处理器中多个处理器核的绑定关系,第一进程组为至少一个进程组中任意一个进程组;然后,监测第一处理器核的工作状态,第一处理器核为上述多个处理器核中任意一个处理器核;当第一处理器核为空闲状态时,根据上述绑定关系调度第一处理器核运行第一从线程,第一从线程为第一进程组中与第一处理器核存在绑定关系的任意一个从线程。
[0007]根据本方案,资源调度装置可以监测第一处理器核的工作状态,在第一处理器核为空闲状态时,根据获取的用于指示至少一个进程组中第一进程组的至少一个从线程和处理器中多个处理器核的绑定关系,调度第一处理器核运行第一从线程,使得第一处理器核在HPC系统并行运行多个进程的过程中,处于空闲状态的时间大大减少,从而提升第一处理器核的利用率,提升HPC系统的性能。
[0008]此外,在第一处理器核与至少两个从线程具有绑定关系的情况下,资源调度装置可以调度第一处理器核运行所述至少两个从线程,相较于现有技术中,一个处理器核仅负责运行一个从线程,本方案可以节省处理器核,节省下来的处理器核可以用于实现其他的计算任务,能够进一步提升HPC系统的性能。
[0009]在一种可能的实现方式中,在上述获取进程组和处理器的绑定关系之前,上述方法还包括:根据第一规则建立至少一个进程组;然后,根据第二规则建立至少一个进程组和处理器的绑定关系。
[0010]根据本实现方式,资源调度装置根据第一规则建立至少一个进程组,可以使得资源调度装置构建的进程组中的进程之间的差异较小,根据第二规则建立至少一个进程组和处理器的绑定关系,可以尽量使得选择出的每个处理器核都负责运行一个第一进程的从线程和一个第二进程的从线程,每个处理器核的利用率都可以得到提高。
[0011]在一种可能的实现方式中,上述第一规则用于指示按照进程配置划分上述至少一个进程组,则上述根据第一规则建立至少一个进程组,包括:选择进程配置满足第一条件的第一进程和第二进程构建上述第一进程组,其中,第一条件包括进程配置相同或进程配置的差异小于第一阈值。
[0012]根据本实现方式,资源调度装置选择进程配置满足第一条件的第一进程和第二进程构建上述第一进程组,若第一条件包括进程配置相同,可以使得资源调度装置建立第一进程组和处理器核的绑定关系时,选择出的处理器核的数量与第一进程组中的第一进程和第二进程的进程配置相同,从而使得选择出的每个处理器核都负责运行一个第一进程的从线程和一个第二进程的从线程,每个处理器核的利用率都可以得到提高;若第一条件包括进程配置的差异小于第一阈值,可以使得资源调度装置建立第一进程组和处理器核的绑定关系时,选择出的处理器核的数量与第一进程组中的第一进程和第二进程的进程配置的差异小于第一阈值,从而使得选择出的处理器核中的大多数处理器核都负责运行一个第一进程的从线程和一个第二进程的从线程,仅有极少数处理器核仅负责运行一个线程,可以提高大多数处理器核的利用率。
[0013]在一种可能的实现方式中,上述第二规则用于指示按照分时复用策略构建上述绑定关系,则上述根据第二规则建立至少一个进程组和处理器的绑定关系,包括:从第一进程组中选择至少两个从线程,至少两个从线程在同一时刻无需同时执行处理任务;然后,从处理器的多个处理器核中选择一个第一处理器核;然后,记录第一处理器核和上述至少两个从线程的对应关系,其中,第一处理器核用于运行上述至少两个从线程。
[0014]根据本实现方式,资源调度装置构建第一处理器核和上述至少两个从线程的对应关系,上述至少两个从线程在同一时刻无需同时执行处理任务,这样可以使得第一处理器核分时运行上述至少两个从线程,实现上述至少两个从线程分时复用第一处理器核,减少第一处理器核处于空闲状态的时间,提高第一处理器核的利用率。
[0015]在一种可能的实现方式中,上述方法还包括:接收导出指令;然后,根据导出指令导出进程组和处理器的绑定关系,导出的绑定关系包括处理器核与其对应的从线程之间的绑定关系,具体可以包括处理器核的标识、从线程的标识、处理器核所归属的处理器的标识,或者,从线程所归属的进程的标识中至少一种,导出的绑定关系可以以文件、表格、数据结构等形式呈现。
[0016]根据本实现方式,导出处理器中具有绑定关系的处理器核与其对应的从线程之间的绑定关系,用户可以很容易地获知处理器中的某个处理器核与进程组中的哪些从线程具有绑定关系,便于用户掌握处理器核运行从线程的详细情况,若用户有修改之前构建的处理器核与从线程之间的绑定关系的需求,也可以根据查看到的绑定关系进行修改。
[0017]在一种可能的实现方式中,上述第一进程组中任意一个进程包括主线程和从线程。
[0018]根据本实现方式,本申请提供的方法可以应用于任何需要并行运行包括主线程和从线程的多个进程的计算系统,使得这类计算系统在并行运行多个进程时,能够提高从线程所在的处理器核的利用率,提高计算系统的性能。
[0019]在一种可能的实现方式中,上述方法应用于HPC系统,上述第一进程组中任意一个进程为消息传递协议(message passing interface,MPI)进程。
[0020]根据本实现方式,本申请提供的方法可以应用于需要并行运行包括主线程和从线程的多个MPI进程的HPC系统,使得HPC系统在并行运行多个MPI进程时,能够提高MPI进程中的从线程所在的处理器核的利用率,提高HPC系统的性能。
...

【技术保护点】

【技术特征摘要】
1.一种资源调度的方法,其特征在于,所述方法包括:获取进程组和处理器的绑定关系,所述绑定关系用于指示至少一个进程组中第一进程组的至少一个从线程和所述处理器中多个处理器核的绑定关系,所述第一进程组为所述至少一个进程组中任意一个进程组;监测所述第一处理器核的工作状态,所述第一处理器核为所述多个处理器核中任意一个处理器核;当所述第一处理器核为空闲状态时,根据所述绑定关系调度所述第一处理器核运行所述第一从线程,所述第一从线程为所述第一进程组中与所述第一处理器核存在绑定关系的任意一个从线程。2.根据权利要求1所述的方法,其特征在于,在所述获取进程组和处理器的绑定关系之前,所述方法还包括:根据第一规则建立所述至少一个进程组;根据第二规则建立所述至少一个进程组和所述处理器的绑定关系。3.根据权利要求2所述的方法,其特征在于,所述第一规则用于指示按照进程配置划分所述至少一个进程组,则所述根据第一规则建立至少一个进程组,包括:选择进程配置满足第一条件的第一进程和第二进程构建所述第一进程组,所述第一条件包括所述进程配置相同或所述进程配置的差异小于第一阈值。4.根据权利要求2所述的方法,其特征在于,所述第二规则用于指示按照分时复用策略构建所述绑定关系,则所述根据第二规则建立所述至少一个进程组和所述处理器的绑定关系,包括:从所述第一进程组中选择至少两个从线程,所述至少两个从线程在同一时刻无需同时执行处理任务;从所述处理器的多个处理器核中选择一个第一处理器核;记录所述第一处理器核和所述至少两个从线程的对应关系,所述第一处理器核用于运行所述至少两个从线程。5.根据权利要求1至4中任一所述的方法,其特征在于,所述方法还包括:接收导出指令;根据所述导出指令导出所述进程组和处理器的绑定关系。6.根据权利要求1至5中任一所述的方法,其特征在于,所述第一进程组中任意一个进程包括主线程和从线程。7.根据权利要求1至6中任一所述的方法,其特征在于,所述方法应用于高性能计算HPC系统,所述第一进程组中任意一个进程为消息通信协议MPI进程。8.根据权利要求1至7中任一所述的方法,其特征在于,所述方法应用于多线程并发OpenMP系统,所述第一进程组中任意一个进程为OpenMP进程。9.一种资源调度装置,其特征在于,所述装置包括:调度模块,用于获取进程组和处理器的绑定关系,所述绑定关系用于指示至少一个进程组中第一进程组的至少一个...

【专利技术属性】
技术研发人员:朱明明许中虎王淑倩
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

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

1