并行计算处理器中计算任务的分层资源管理系统及方法与流程

摘要: 本发明涉及处理器和资源管理,尤其涉及一种并行计算处理器中计算任务的分层资源管理系统及方法。背景技术:1、在并行计算处理器的任务调度运行过程中,中心化任务调度系统...
并行计算处理器中计算任务的分层资源管理系统及方法与流程

本发明涉及处理器和资源管理,尤其涉及一种并行计算处理器中计算任务的分层资源管理系统及方法。

背景技术:

1、在并行计算处理器的任务调度运行过程中,中心化任务调度系统可将上游输入的完整计算任务拆解为若干独立计算块,并将各计算块对应的执行线程分发至多个处理单元开展并行执行作业。计算块的正常运行依赖块级共享同步资源完成块内各线程的同步通信与协同运算,例如块内置屏障资源,且在单个计算块全部执行流程结束后,需及时完成对应同步资源的释放回收,保障后续全新计算块可顺利复用该部分硬件资源,以此支撑并行计算处理器持续、高效、迭代式完成多批次计算任务调度运行。

2、现有并行计算处理器普遍采用单一集中式资源管控架构开展资源管理与任务调度工作,未设置分层分级的精细化资源管控机制,全局任务跟踪统计、处理单元资源状态查询、多任务资源管控以及同步资源回收校验等所有核心工作均集中由单一模块完成,同时处理单元的实时子任务运行状态、空闲资源余量无法独立精细化维护,调度决策主要依赖被动式资源查询消息的往返应答,缺乏主动、实时、多维度的资源能力反馈渠道,同步资源回收流程与任务表项释放流程高度耦合,整体资源管控模式层级单一、功能耦合度高。

3、受限于单一集中式资源管控架构,现有技术存在诸多亟待解决的技术缺陷,其一,同步资源无效化操作与块跟踪表项释放强绑定,需等待所有远端处理单元的无效化响应返回后方可释放表项,互联网络往返延迟会持续占用块跟踪表项,造成同步资源无效化延迟阻塞资源释放的问题,大幅降低跟踪表利用率与计算块调度吞吐量;其二,调度器需依靠被动查询消息获取处理单元资源状态,查询往返延迟会导致资源可用性评估结果滞后,无法适配空闲处理单元快速启动首批线程的高效调度需求,调度决策实时性差;其三,多计算任务共享同一处理单元时,缺乏任务粒度的飞行线程计数跟踪机制,无法实现精细化任务级资源节流与资源隔离,易出现单个任务过度抢占硬件资源的情况,资源管控精度与多任务并行调度可靠性不足。

技术实现思路

1、本发明提供了一种并行计算处理器中计算任务的分层资源管理系统及方法,以解决同步资源释放延迟阻塞、资源可用性评估滞后、多任务场景资源隔离效果差以及单一管控模块处理压力大、资源调度精准度不足、层级耦合度高的问题。

2、根据本发明实施例的一方面,提供了一种并行计算处理器中计算任务的分层资源管理系统,包括:设置于集群层级的多个第一级资源管理器和设置于处理单元层级的多个第二级资源管理器;所述处理单元层级配置有多个处理单元,每一个第二级资源管理器对应配置一个处理单元,各所述第二级资源管理器分别用于管理对应配置的处理单元;各第一级资源管理器与匹配的第二级资源管理器之间通过标准化请求应答接口建立通信连接;各第一级资源管理器通过处理单元掩码确定匹配的第二级资源管理器;

3、在所述第一级资源管理器中实时维护当前处于执行状态的各计算任务的第一执行状态信息,在所述第二级资源管理器中实时维护所管理的处理单元中当前处于执行状态的各类型的子任务的第二执行状态信息,以及所管理的处理单元的最终可用信用值;

4、所述第一级资源管理器,用于接收上游调度器发送的目标计算任务的资源申请,向上游调度器返回第一执行状态信息,并在接收到上游调度器发送的目标资源请求时,完成目标计算任务对应的第一执行状态信息初始化;以及,根据目标处理单元向第一级资源管理器反馈的各目标子任务的执行完成信息,更新匹配的第一执行状态信息;

5、所述第二级资源管理器,用于接收上游调度器发送的目标计算任务的资源申请,向上游调度器返回第二执行状态信息和与目标计算任务匹配的目标处理单元的最终可用信用值,并根据接收到的上游调度器发送的目标资源请求,指示目标处理单元为目标计算任务分配目标执行资源后,基于目标执行资源执行目标计算任务中的各类型的目标子任务;以及,根据目标处理单元向第二级资源管理器反馈的各目标子任务的执行完成信息,更新匹配的第二执行状态信息和最终可用信用值;其中,目标资源请求为上游调度器在根据第一执行状态信息、第二执行状态信息和各目标处理单元的最终可用信用值确定目标计算任务满足执行条件时发送的;

6、所述第一级资源管理器,还用于在根据当前维护的第一执行状态信息确定目标计算任务中的全部目标子任务均执行完成后,向所述上游调度器通知目标计算任务的任务结束状态,并根据处理单元掩码,向目标处理单元下发指令,触发目标处理单元对目标执行资源执行本地共享同步资源的无效化操作,以及,在确定完成任务结束状态的通知且各目标处理单元均成功完成同步资源无效化操作后,确定目标计算任务执行结束。

7、根据本发明实施例的另一方面,提供了一种并行计算处理器中计算任务的分层资源管理方法,由如本发明任一实施例所述的并行计算处理器中计算任务的分层资源管理系统中的第一级资源管理器执行,该方法包括:

8、实时维护当前处于执行状态的各计算任务的第一执行状态信息;

9、在接收上游调度器发送的目标计算任务的资源申请时,向上游调度器返回第一执行状态信息,并在接收到上游调度器发送的目标资源请求时,完成目标计算任务对应的第一执行状态信息初始化;其中,目标资源请求为上游调度器在根据第一执行状态信息、第二执行状态信息和各目标处理单元的最终可用信用值确定目标计算任务满足执行条件时发送的;

10、在接收目标处理单元反馈的各目标子任务的执行完成信息时,根据执行完成信息,更新匹配的第一执行状态信息;

11、在根据当前维护的第一执行状态信息确定目标计算任务中的全部目标子任务均执行完成后,向所述上游调度器通知目标计算任务的任务结束状态,并根据处理单元掩码,向目标处理单元下发指令,触发目标处理单元对目标执行资源执行本地共享同步资源的无效化操作;

12、在确定完成任务结束状态的通知且各目标处理单元均成功完成同步资源无效化操作后,确定目标计算任务执行结束。

13、根据本发明实施例的另一方面,提供了一种并行计算处理器中计算任务的分层资源管理方法,由如本发明任一实施例所述的并行计算处理器中计算任务的分层资源管理系统中的第二级资源管理器执行,该方法包括:

14、实时维护所管理的处理单元中当前处于执行状态的各类型的子任务的第二执行状态信息,以及所管理的处理单元的最终可用信用值;

15、接收上游调度器发送的目标计算任务的资源申请,向上游调度器返回第二执行状态信息和与目标计算任务匹配的目标处理单元的最终可用信用值;

16、接收上游调度器发送的目标资源请求,指示目标处理单元为目标计算任务分配目标执行资源后,基于目标执行资源执行目标计算任务中的各类型的目标子任务;其中,目标资源请求为上游调度器在根据第一执行状态信息、第二执行状态信息和各目标处理单元的最终可用信用值确定目标计算任务满足执行条件时发送的;

17、根据各目标处理单元反馈的各目标子任务的执行完成信息更新匹配的第二执行状态信息和最终可用信用值。

18、本发明实施例的系统,通过集群层级第一级资源管理器与处理单元层级第二级资源管理器的分层架构设计,由第一级资源管理器维护计算任务维度的第一执行状态信息、第二级资源管理器维护处理单元内部子任务维度的第二执行状态信息以及处理单元的最终可用信用值,上游调度器结合两级管理器反馈的多维度状态信息统一完成任务执行条件判定后再下发目标资源请求,一方面可以将全局计算任务状态管理与单处理单元内部子任务资源管控进行解耦,避免单一管理器同时承担全局任务调度与细粒度子任务统计带来的处理压力过大的问题,另一方面两级资源管理器分别向上游调度器反馈对应维度的真实运行状态,依托第二级资源管理器本地实时输出的最终可用信用值,无需调度器发起额外查询交互,克服资源可用性评估滞后的缺陷,使得上游调度器能够获取更加完备准确的集群资源画像,减少因资源信息缺失造成的任务调度失败或者资源过度分配的现象;同时第一级资源管理器在识别全部子任务执行完毕后再触发同步资源无效化操作,并需要等待任务结束通知完成以及全部处理单元同步资源无效化操作均执行成功之后才判定计算任务执行结束,能够保障共享同步资源可靠回收,避免任务尚未完全收尾就释放资源引发的数据不一致、资源污染问题,借助标准化请求应答接口实现两级管理器之间的交互,也便于不同层级模块之间解耦对接,提升并行计算处理器整体任务调度的可靠性与资源利用效率。

19、应当理解,本部分所描述的内容并非旨在标识本发明的实施例的关键或重要特征,也不用于限制本发明的范围。本发明的其它特征将通过以下的说明书而变得容易理解。