调度仿真云平台与HPC平台的方法、装置及设备
文献发布时间:2024-04-18 19:58:21
技术领域
本申请属于汽车仿真技术领域,尤其涉及一种调度仿真云平台与HPC平台的方法、装置及设备。
背景技术
汽车仿真云是指利用云计算技术,将汽车仿真技术和云计算技术相结合构建的一种仿真云平台,能够高效的实现汽车仿真技术的在线分析、预测和优化。
仿真过程一般包含前处理、求解、后处理、优化、报告这几个核心流程,在设计师设计过程中,通常要搭配各种汽车设计软件,在汽车仿真云进行不同阶段的汽车仿真模拟实验。在仿真过程中产生的计算任务,需要提交到高性能计算(High PerformanceComputing,HPC)平台,进行高效的求解计算。
仿真云平台和HPC平台是两个平台,只关注自己的任务目标,在汽车仿真云上的任务执行过程(仿真过程)中产生的需要求解的计算任务会被提交到HPC平台,而HPC平台则会根据接收到的任务的时序以及优先级进行求解计算。
由于仿真云平台和HPC平台这两个平台独立运行,仿真云平台上产生的计算任务可能无法在合适的时机被提交到HPC进行计算,导致两个平台的资源不能进行统一的协调与调度,存在资源浪费的情况,降低了两个平台的资源利用率。
发明内容
本申请的目的是提供一种调度仿真云平台与HPC平台的方法、装置及设备,通过协调调度仿真云平台和HPC平台的资源,提高资源的利用率和整体计算效率。
第一方面,本申请提供了一种调度仿真云平台与高性能计算HPC平台的方法,应用于协调调度平台,所述方法包括:
响应于仿真操作指令,基于HPC平台的计算资源占用状态,确定所述HPC平台具有空闲计算资源的资源空闲时间范围;
基于所述仿真操作指令对应的资源需求、所述空闲资源时间范围以及预先配置的资源池选择策略,从各仿真云平台的空闲资源池中确定执行仿真任务的目标资源池;
将资源创建指令发送给所述目标资源池所属的目标仿真云平台,以使所述目标仿真云平台在所述目标资源池中创建执行所述仿真任务的资源。
在一种可能的实施方式中,所述计算资源占用状态包括所述HPC平台的计算资源总体规格、任务处理效率及待处理任务量;所述基于HPC平台的计算资源占用状态,确定所述HPC平台具有空闲计算资源的空闲资源时间范围,包括:
基于所述HPC平台的待处理任务量及任务处理效率,确定所述HPC平台处理各待处理任务所需的计算资源规格及所述HPC平台处理各待处理任务所需的预测时长;
基于所述HPC平台的计算资源总体规格、所述HPC平台处理各待处理任务所需的计算资源规格及所述HPC平台处理各待处理任务所需的预测时长,确定所述HPC平台具有空闲计算资源的空闲资源时间范围。
在一种可能的实施方式中,所述基于所述仿真操作指令对应的资源需求、所述空闲资源时间范围及预先配置的资源池选择策略,从各仿真云平台的资源池中确定执行所述任务的目标资源池,包括:
基于所述仿真操作指令对应的资源需求,从各仿真云平台的空闲资源池中确定满足所述资源需求的第一资源池;
将所述第一资源池中对应的预测时间范围处于所述空闲资源时间范围内的资源池,作为满足所述空闲资源时间范围的第二资源池,其中,所述第一资源池对应的预测时间范围为所述第一资源池执行所述仿真任务对应的时间范围;
基于所述预先配置的资源池选择策略,从所述第二资源池中确定执行所述仿真任务的目标资源池。
在一种可能的实施方式中,所述将所述第一资源池中对应的预测时间范围处于所述空闲资源时间范围内的资源池,作为满足所述空闲资源时间范围的第二资源池,其中,所述第一资源池对应的预测时间范围为所述第一资源池执行所述仿真任务对应的时间范围,包括:
确定在所述第一资源池中执行所述仿真任务对应的预测时间范围,所述预测时间范围包括所述第一资源池提交计算任务到所述HPC平台对应的预测时间范围,所述计算任务为在所述第一资源池中执行所述仿真任务的过程中产生的;
将所述第一资源池中提交计算任务到所述HPC平台对应的预测时间范围处于所述空闲资源时间范围内的资源池,作为满足所述空闲资源时间范围的第二资源池。
在一种可能的实施方式中,所述基于所述预先配置的资源池选择策略,从所述第二资源池中确定执行所述仿真任务的目标资源池,包括:
所述预先配置的资源池选择策略为价格优先策略时,在所述第二资源池中,选择价格最低的第二资源池作为执行所述任务的目标资源池;和/或
所述预先配置的资源池选择策略为资源均等策略时,在所述第二资源池中,选择资源占用率最低的第二资源池作为执行所述仿真任务的目标资源池。
第二方面,本申请提供了一种调度仿真云平台与HPC平台的方法,应用于HPC平台,所述方法包括:
在接收到协调调度平台发送的状态获取需求后,确定当前的计算资源占用状态;
将所述计算资源占用状态发送给所述协调调度平台,以使所述协调调度平台基于由所述HPC平台的计算资源占用状态确定的资源空闲时间范围,从各仿真云平台的空闲资源池中确定执行仿真任务的目标资源池,将资源创建指令发送给所述目标资源池所属的目标仿真云平台,以通过所述目标资源池创建执行所述仿真任务的资源。
第三方面,本申请提供了一种调度仿真云平台与HPC平台的方法,应用于仿真云平台,所述方法包括:
接收协调调度平台发送的资源创建指令;
根据所述资源创建指令,在所述资源创建指令对应的目标资源池中创建执行仿真任务的资源;
其中,所述资源创建指令为所述协调调度平台基于由所述HPC平台的计算资源占用状态确定的资源空闲时间范围,从各仿真云平台的空闲资源池中确定执行仿真任务的目标资源池后发送的。
第四方面,本申请提供了一种应用于协调调度平台侧的调度仿真云平台与HPC平台的装置,所述装置包括:
指令响应模块,用于响应于仿真操作指令,基于获取的HPC平台的计算资源占用状态,确定所述HPC平台具有空闲计算资源的资源空闲时间范围;
资源池确定模块,用于基于所述仿真操作指令对应的资源需求、所述空闲资源时间范围以及预先配置的资源池选择策略,从各仿真云平台的空闲资源池中确定执行仿真任务的目标资源池;
指令下发模块,用于将资源创建指令发送给所述目标资源池所属的目标仿真云平台,以使所述目标仿真云平台在所述目标资源池中创建执行所述仿真任务的资源。
在一个或多个实施例中,所述计算资源占用状态包括所述HPC平台的计算资源总体规格、任务处理效率及待处理任务量;
所述指令响应模块响应于仿真操作指令,基于获取的HPC平台的计算资源占用状态,确定所述HPC平台具有空闲计算资源的资源空闲时间范围,具体包括:
基于所述HPC平台的待处理任务量及任务处理效率,确定所述HPC平台处理各待处理任务所需的计算资源规格及所述HPC平台处理各待处理任务所需的预测时长;
基于所述HPC平台的计算资源总体规格、所述HPC平台处理各待处理任务所需的计算资源规格及所述HPC平台处理各待处理任务所需的预测时长,确定所述HPC平台具有空闲计算资源的空闲资源时间范围。
在一个或多个实施例中,所述资源池确定模块基于所述仿真操作指令对应的资源需求、所述空闲资源时间范围及预先配置的资源池选择策略,从各仿真云平台的资源池中确定执行所述任务的目标资源池,具体包括:
基于所述仿真操作指令对应的资源需求,从各仿真云平台的空闲资源池中确定满足所述资源需求的第一资源池;
将所述第一资源池中对应的预测时间范围处于所述空闲资源时间范围内的资源池,作为满足所述空闲资源时间范围的第二资源池,其中,所述第一资源池对应的预测时间范围为所述第一资源池执行所述仿真任务对应的时间范围;
基于所述预先配置的资源池选择策略,从所述第二资源池中确定执行所述仿真任务的目标资源池。
在一个或多个实施例中,所述资源池确定模块将所述第一资源池中对应的预测时间范围处于所述空闲资源时间范围内的资源池,作为满足所述空闲资源时间范围的第二资源池,其中,所述第一资源池对应的预测时间范围为所述第一资源池执行所述仿真任务对应的时间范围,具体包括:
确定在所述第一资源池中执行所述仿真任务对应的预测时间范围,所述预测时间范围包括所述第一资源池提交计算任务到所述HPC平台对应的预测时间范围,所述计算任务为在所述第一资源池中执行所述仿真任务的过程中产生的;
将所述第一资源池中提交计算任务到所述HPC平台对应的预测时间范围处于所述空闲资源时间范围内的资源池,作为满足所述空闲资源时间范围的第二资源池。
在一个或多个实施例中,所述资源池确定模块基于所述预先配置的资源池选择策略,从所述第二资源池中确定执行所述仿真任务的目标资源池,具体包括:
所述预先配置的资源池选择策略为价格优先策略时,在所述第二资源池中,选择价格最低的第二资源池作为执行所述任务的目标资源池;和/或
所述预先配置的资源池选择策略为资源均等策略时,在所述第二资源池中,选择资源占用率最低的第二资源池作为执行所述仿真任务的目标资源池。
第五方面,本申请提供了一种应用于HPC平台侧的调度仿真云平台与HPC平台的装置,所述装置包括:
计算资源占用状态确认模块,用于在接收到协调调度平台发送的状态获取需求后,确定当前的计算资源占用状态;
计算资源占用状态发送模块,用于将所述计算资源占用状态发送给所述协调调度平台,以使所述协调调度平台基于由所述HPC平台的计算资源占用状态确定的资源空闲时间范围,从各仿真云平台的空闲资源池中确定执行仿真任务的目标资源池,将资源创建指令发送给所述目标资源池所属的目标仿真云平台,以通过所述目标资源池创建执行所述仿真任务的资源。
第六方面,本申请提供了一种应用于仿真云平台侧的调度仿真云平台与HPC平台的装置,所述装置包括:
指令接收模块,用于接收协调调度平台发送的资源创建指令;
资源创建模块,用于根据所述资源创建指令,在所述资源创建指令对应的目标资源池中创建执行仿真任务的资源;
其中,所述资源创建指令为所述协调调度平台基于由所述HPC平台的计算资源占用状态确定的资源空闲时间范围,从各仿真云平台的空闲资源池中确定执行仿真任务的目标资源池后发送的。
第七方面,本申请实施例提供了一种调度仿真云平台与HPC平台的设备,包括至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如本申请第一方面中提供的任一项所述的调度仿真云平台与HPC平台的方法,或者执行如本申请第二方面中提供的所述的调度仿真云平台与HPC平台的方法,或者执行如本申请第三方面中提供的所述的调度仿真云平台与HPC平台的方法。
第八方面,本申请实施例还提供了一种计算机可读存储介质,当所述计算机可读存储介质中的指令由终端设备的处理器执行时,使得终端设备能够执行如本申请第一方面中提供的任一项所述的调度仿真云平台与高性能计算HPC平台的方法,或者执行如本申请第二方面中提供的所述的调度仿真云平台与HPC平台的方法,或者执行如本申请第三方面中提供的所述的调度仿真云平台与HPC平台的方法。
本申请的实施例提供的技术方案至少带来以下有益效果:
本申请提供的一种调度仿真云平台与HPC平台的方法、装置及设备,接收到用户提交的仿真任务的资源需求后,首先基于HPC平台的计算资源占用状态确定所述HPC平台具有空闲计算资源的资源空闲时间范围,之后基于所述资源空闲时间范围以及所述资源需求,从各仿真云平台的空闲资源池中确定执行所述仿真任务的目标资源池,使用户在所述目标资源池中参考所述资源空闲时间范围执行所述仿真任务以及提交计算任务到HPC平台,达到兼顾不占用过多仿真云平台的资源配置与充分利用HPC平台的资源空闲时间范围的效果,在从用户申请仿真任务到用户操作结束仿真任务的过程中,通过仿真云平台与HPC平台这两个独立平台的协调调度,实现资源的有效利用和优化配置,提高资源的利用率和整体计算效率。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,显而易见地,下面所介绍的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的应用场景图;
图2为本申请实施例提供的一种调度仿真云平台与HPC平台系统的框架示意图;
图3为本申请实施例提供的一种调度仿真云平台与HPC平台的方法的交互流程图;
图4为本申请实施例提供的协调调度平台侧的调度仿真云平台与HPC平台的方法流程示意图;
图5为本申请实施例提供的HPC平台侧的调度仿真云平台与HPC平台的方法流程示意图;
图6为本申请实施例提供的仿真云平台侧的调度仿真云平台与HPC平台的方法流程示意图;
图7为本申请实施例提供的应用于协调调度平台侧的调度仿真云平台与HPC平台的装置示意图;
图8为本申请实施例提供的应用于HPC平台侧的调度仿真云平台与HPC平台的装置示意图;
图9为本申请实施例提供的应用于仿真云平台侧的调度仿真云平台与HPC平台的装置示意图;
图10为本申请实施例提供的一种调度仿真云平台与HPC平台的设备示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。其中,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
汽车仿真云是指利用云计算技术,将汽车仿真技术和云计算技术相结合构建的一种仿真云平台,能够高效的实现汽车仿真技术的在线分析、预测和优化。
仿真过程一般包含前处理、求解、后处理、优化、报告这几个核心流程,在设计师设计过程中,通常要搭配各种汽车设计软件,在汽车仿真云进行不同阶段的汽车仿真模拟实验。在仿真过程中产生的计算任务,需要提交模型高性能计算(High PerformanceComputing,HPC)平台,进行高效的求解计算。
如图1所示,为本申请实施例所提供的应用场景图。参照图1,HPC平台10中的计算资源会并行执行多个计算任务,所述计算任务由仿真云平台20中执行的仿真任务中产生,仿真云平台20的数量可以是一个或多个,同时仿真云平台20的类型可以是私有云,也可以是公有云,每个仿真云平台12包括至少一个资源池,用来创建执行所述仿真任务的资源。
仿真云平台和HPC平台是两个平台,只关注自己的任务目标,在汽车仿真云上产生的需要求解的计算任务被提交到HPC平台后,HPC平台则会根据接收到的任务的时序以及优先级进行求解计算。
因此,由于仿真云平台和HPC平台这两个平台独立运行,仿真云平台上产生的计算任务可能无法在合适的时机被提交到HPC进行计算,导致两个平台的资源不能进行统一的协调与调度,存在资源浪费的情况,降低了两个平台的资源利用率。
鉴于上述问题,本申请提供的一种调度仿真云平台与HPC平台的方法、装置及设备,接收到用户提交的仿真任务的资源需求后,首先基于HPC平台的计算资源占用状态确定所述HPC平台具有空闲计算资源的资源空闲时间范围,之后基于所述资源空闲时间范围以及所述资源需求,从各仿真云平台的空闲资源池中确定执行所述仿真任务的目标资源池,使用户在所述目标资源池中参考所述资源空闲时间范围执行所述仿真任务以及提交计算任务到HPC平台,达到兼顾不占用过多仿真云平台的资源配置与充分利用HPC平台的资源空闲时间范围的效果,在从用户申请仿真任务到用户操作结束仿真任务的过程中,通过仿真云平台与HPC平台这两个独立平台的协调调度,实现资源的有效利用和优化配置,提高资源的利用率和整体计算效率。
下面结合附图对本公开实施例作进一步详细描述。
如图2所示,为本申请实施例所提供的一种调度仿真云平台与HPC平台的系统的框架示意图,所述系统包括HPC平台10、仿真云平台20、协调调度平台30。
协调调度平台30接收到仿真操作指令后,向HPC平台10发送状态获取需求,以获取HPC平台10的计算资源占用状态。
在一种可能的实施例中,所述仿真操作指令中包括资源需求,所述框架还包括用户操作平台40,所述仿真操作指令为用户通过用户操作平台40提交到协调调度平台的,所述仿真操作指令中包括用户根据需要执行的仿真任务确定的资源需求。
具体的,所述用户操作平台40可以是通过平台即服务(Platform as a Service,PaaS)部署的,PaaS为生成、测试和部署软件应用程序提供一个环境,将软件研发的平台作为一种服务,以软件即服务模式交付给用户。
HPC平台10在接收到协调调度平台30发送的状态获取需求后,确定当前的计算资源占用状态,将所述计算资源占用状态发送给所述协调调度平台30。
在一种可能的实施例中,所述计算资源占用状态包括HPC平台10的计算资源总体规格、任务处理效率及待处理任务量。
其中,所述计算资源总体规格为HPC平台10中用于执行计算任务的所有计算资源。
协调调度平台30基于HPC平台10的计算资源占用状态,确定HPC平台10具有空闲计算资源的资源空闲时间范围;
作为一种可行的实施方式,所述基于HPC平台的计算资源占用状态,确定所述HPC平台具有空闲计算资源的空闲资源时间范围,包括:
基于所述HPC平台的待处理任务量及任务处理效率,确定所述HPC平台处理各待处理任务所需的计算资源规格及所述HPC平台处理各待处理任务所需的预测时长;
基于所述HPC平台的计算资源总体规格、所述HPC平台处理各待处理任务所需的计算资源规格及所述HPC平台处理各待处理任务所需的预测时长,确定所述HPC平台具有空闲计算资源的空闲资源时间范围。
本申请实施例中,由于所述HPC平台是基于并行方式处理计算任务的,所以在确定所述HPC平台何时具有空闲计算资源时,所述协调调度平台要基于所述HPC平台的计算资源总体规格、所述HPC平台处理各待处理任务所需的计算资源规格及所述HPC平台处理各待处理任务所需的预测时长,确定所述HPC平台具有空闲计算资源的空闲资源时间范围。
具体的,采用如下方式确定空闲资源时间范围:
首先,基于所述HPC平台的待处理任务量,确定出所述HPC平台处理各待处理任务所需的计算资源规格,并基于所述HPC平台的任务处理效率确定处理各待处理任务所需的预测时长。
之后,基于所述HPC平台的计算资源总体规格、所述HPC平台处理各待处理任务所需的计算资源规格及所述HPC平台处理各待处理任务所需的预测时长,确定所述HPC平台具有空闲计算资源的空闲资源时间范围。
示例性的,若所述HPC平台有甲、乙、丙这三个待处理任务且处理任务的顺序为甲、乙、丙时:
先分别确定出处理这三个待处理任务所需的计算资源规格A、B、C,以及基于所述HPC平台的任务处理效率确定出处理这三个待处理任务所需的预测时长a、b、c;
再基于所述HPC平台的计算资源总体规格D、计算资源规格A、B、C及预测时长a、b、c,即可确定所述HPC平台在并行处理甲、乙、丙这三个任务时,甲、乙、丙会占用多少计算资源总体规格D以及占用时长,相应的,可以确定所述HPC平台具有空闲计算资源的空闲资源时间范围。
例如,甲所需的计算资源规格A等于计算资源总体规格D,甲所需的预测时长a为2小时,乙和丙所需的计算资源规格B、C均等于计算资源总体规格D的二分之一,但乙所需的预测时长b为1小时,丙所需的预测时长c为0.5小时,则甲占用所述HPC平台2小时后,所述HPC平台同时开始处理乙和丙,但是丙比乙早0.5小时处理完,因此,可以确定2.5小时后所述HPC平台具有空闲计算资源。
协调调度平台30基于所述仿真操作指令对应的资源需求、所述空闲资源时间范围以及预先配置的资源池选择策略,从各仿真云平台的空闲资源池中确定执行仿真任务的目标资源池;
在一种可能的实施例中,所述资源需求包括所述仿真任务需求的计算资源规格、存储资源规格及网络资源规格。
具体的,所述仿真任务可以理解为用户在仿真云平台配置的虚拟机资源中,基于相应的汽车建模需求进行的仿真任务,所述计算资源规格为执行所述仿真任务的虚拟机需求的处理器配置,如对CPU的性能需求;所述存储资源规格为执行所述仿真任务的虚拟机需求的存储资源配置,如硬盘存储空间的大小;所述网络资源规格为执行所述仿真任务的虚拟机需求的网络资源配置,如带宽资源的大小。
需要说明的是,上述空闲资源池,指各仿真云平台的资源池中,资源可以满足所述资源需求的资源池,作为空闲资源池;所述空闲资源池中可能有其他在执行的仿真任务。
在本申请实施例中,协调调度平台30接收到仿真操作指令后,先基于HPC平台的计算资源占用状态确定资源空闲时间范围,再基于所述仿真操作指令对应的资源需求、所述空闲资源时间范围以及预先配置的资源池选择策略,从各仿真云平台的空闲资源池中确定执行仿真任务的目标资源池。
作为一种可行的实施方式,所述基于所述仿真操作指令对应的资源需求、所述空闲资源时间范围及预先配置的资源池选择策略,从各仿真云平台的资源池中确定执行所述任务的目标资源池,包括如下步骤A、步骤B及步骤C:
步骤A,基于所述仿真操作指令对应的资源需求,从各仿真云平台的空闲资源池中确定满足所述资源需求的第一资源池;
由前述实施例可知,仿真云平台20的数量为至少一个,且每个仿真云平台中有多个资源池可以用于创建执行仿真任务的资源,因此协调调度平台30在接收到仿真操作指令后,首先需要基于所述仿真操作指令对应的资源需求,从各仿真云平台的空闲资源池中确定出所有满足所述资源需求的资源池为第一资源池。
步骤B,将所述第一资源池中对应的预测时间范围处于所述空闲资源时间范围内的资源池,作为满足所述空闲资源时间范围的第二资源池,其中,所述第一资源池对应的预测时间范围为所述第一资源池执行所述仿真任务对应的时间范围;
在本申请实施例中,从各仿真云平台的空闲资源池中确定出所有满足所述仿真任务的资源需求的第一资源池后,协调调度平台30需要在所述第一资源池中确定出执行所述仿真任务对应的预测时间范围,所述预测时间范围包括所述第一资源池提交计算任务到所述HPC平台对应的预测时间范围,所述计算任务为在所述第一资源池中执行所述仿真任务的过程中产生的。
作为一种可行的实施方式,所述仿真操作指令中还可以携带所述仿真任务的类型,在所述第一资源池中确定出执行所述仿真任务对应的预测时间范围时,可以提取与所述仿真任务的类型相似的历史仿真任务在各第一资源池提交计算任务的参考时间范围,取所有提交计算任务的参考时间范围的平均值作为在所述第一资源池中执行所述仿真任务对应的预测时间范围。
在本申请实施例中,在确定在所述第一资源池中执行所述仿真任务对应的预测时间范围后,将所述第一资源池中提交计算任务到所述HPC平台对应的预测时间范围处于所述空闲资源时间范围内的资源池,作为满足所述空闲资源时间范围的第二资源池。
需要说明的是,由于满足资源需求的第一资源池中,各第一资源池的配置有高低之分,在具有相对较高资源配置的第一资源池中执行所述仿真任务对应的预测时间范围是小于在具有相对较低资源配置的第一资源池中执行所述仿真任务对应的预测时间范围的。
因此,通过参考所述空闲资源时间范围,从第一资源池中筛选提交计算任务到所述HPC平台对应的预测时间范围处于所述空闲资源时间范围内的资源池,作为满足所述空闲资源时间范围的第二资源池,可以在不占用过多仿真云平台的资源配置的前提下,使用户在所述目标资源池中参考所述资源空闲时间范围执行所述仿真任务以及提交计算任务到HPC平台,达到充分利用仿真云平台与HPC平台两个平台的资源的效果。
示例性的,上午八点提交仿真任务A对应的仿真操作指令后,协调调度平台确认HPC平台在下午四点后有空闲计算资源,并在所有空闲资源池中确定出满足所述仿真任务A的资源需求的资源池包括第一资源池a、第一资源池b,且第一资源池a的资源配置高于第一资源池b;
之后,确定出仿真任务A在第一资源池a中提交计算任务到所述HPC平台对应的预测时间范围为上午十点到十二点,以及确定出仿真任务A在第一资源池b中提交计算任务到所述HPC平台对应的预测时间范围为下午四点到六点,因此,虽然第一资源池a的资源配置高于第一资源池b,但考虑到HPC平台在下午四点后才有空闲计算资源,故为了不浪费过多仿真云平台的资源配置,将提交计算任务到所述HPC平台对应的预测时间范围处于所述空闲资源时间范围外的第一资源池a筛除,将第一资源池b可以确定为第二资源池。
步骤C,基于所述预先配置的资源池选择策略,从所述第二资源池中确定执行所述仿真任务的目标资源池。
在本申请实施例中,从满足资源需求的第一资源池中确定出满足所述空闲资源时间范围的所有第二资源池后,可以基于所述预先配置的资源池选择策略,再从所述第二资源池中确定执行所述仿真任务的目标资源池。
可选的,所述资源池选择策略为基于用户操作指令配置的,或为在所述协调调度平台中默认配置的。
作为一种可行的实施方式,所述基于所述预先配置的资源池选择策略,从所述第二资源池中确定执行所述仿真任务的目标资源池,包括:
所述预先配置的资源池选择策略为价格优先策略时,在所述第二资源池中,选择价格最低的第二资源池作为执行所述任务的目标资源池;和/或
所述预先配置的资源池选择策略为资源均等策略时,在所述第二资源池中,选择资源占用率最低的第二资源池作为执行所述仿真任务的目标资源池。
需要说明的是,由于第二资源池的数量可以为多个,故在所述预先配置的资源池选择策略为资源均等策略时,在各第二资源池中,选取资源占用率最低的第二资源池作为执行所述仿真任务的目标资源池,使目标资源池的资源占用率接近其他资源池的资源占用率。
在具体实施中,上述价格优先策略及资源均等策略在筛选目标资源池时同时使用,或按照设定的先后顺序使用。
作为一种可行的实施方式,在确定目标资源池时同时使用上述价格优先策略及资源均等策略时,一方面,基于价格优先策略按照价格从小到大的顺序对所有第二资源池进行价格排序,另一方面基于资源均等策略按照各第二资源池的资源占用率从小到大的顺序对所有第二资源池进行资源占用率排序,然后对分别对价格排序和资源占用率排序下的各第二资源池进行打分,价格越低或资源占用率越低,分数越高。
最后,将价格排序和资源占用率排序下的各第二资源池的分数乘上设定权重后再相加,选取相加后分数最高的第二资源池为目标资源池。
作为一种可行的实施方式,在确定目标资源池时按照设定的先后顺序使用上述价格优先策略及资源均等策略,且优先使用所述价格优先策略时,若基于所述价格优先策略选择的目标资源池的数量是多个,即价格最低的第二资源池的数量多于一个,此时可以再基于所述资源均等策略从多个价格最低的第二资源池中选取资源占用率最低的第二资源池作为执行所述仿真任务的目标资源池。
需要说明的是,基于所述预先配置的资源池选择策略,从所述第二资源池中确定执行所述仿真任务的目标资源池的数量仍为多个时,可以发送给用户由用户确认使用哪个目标资源池,或者基于预先配置的其他资源池选择策略选择出一个目标资源池,本申请对此不作限定。
协调调度平台30将资源创建指令发送给所述目标资源池所属的目标仿真云平台,以使所述目标仿真云平台在所述目标资源池中创建执行所述仿真任务的资源。
在一个或多个实施例中,在协调调度平台30确定目标资源池后,发送资源创建指令前,与所述目标资源池所属的目标仿真云平台进行交互,确认在所述目标仿真云平台中的所述目标资源池是否仍为空闲状态,即是否仍能满足所述仿真任务的资源需求,在确认所述目标仿真云平台中的所述目标资源池仍为空闲状态时,再下发资源创建指令。
仿真云平台20接收到协调调度平台发送的资源创建指令后,根据所述资源创建指令,在所述资源创建指令对应的目标资源池中创建执行仿真任务的资源;
在一个或多个实施例中,在协调调度平台30下发资源创建指令到所述目标资源池所属的目标仿真云平台后,确认所述资源是否创建成功,并在确认所述资源创建成功后,下发初始化指令到所述目标仿真云平台,以使所述资源完成初始化配置。
具体的,完成初始化配置时需要完成一些常用的系统默认配置,例如:处理共享目录的挂载、系统权限的创建、系统默认时间的配置等。
在一个或多个实施例中,上述协调调度平台还提供包括日志、租户管理、认证、安全审计、异步调度、方法配置管理、中间件的公共服务能力。
在本申请实施例中,在目标资源池中创建执行仿真任务的资源后,用户即可使用所述资源完成仿真任务,如在所述资源中使用各种汽车设计软件进行汽车模型设计,进行不同阶段的模拟实验,待在所述资源中将模型设计完成后,则可按照HPC平台10具有空闲计算资源的空闲资源时间范围提交模型相关的计算任务到所述HPC平台,进行求解计算。
如图3所示,为本申请实施例所提供的一种调度仿真云平台与HPC平台的方法的交互流程图,包括以下步骤:
在步骤S301中,协调调度平台响应于仿真操作指令,向HPC平台发送状态获取需求;
具体的,所述状态获取需求用于获取当前HPC平台的计算资源占用状态。
在步骤S302中,HPC平台在接收到协调调度平台发送的状态获取需求后,确定当前的计算资源占用状态,将所述计算资源占用状态发送给所述协调调度平台;
在步骤S303中,协调调度平台基于HPC平台的计算资源占用状态,确定所述HPC平台具有空闲计算资源的资源空闲时间范围;
在步骤S304中,协调调度平台基于所述仿真操作指令对应的资源需求、所述空闲资源时间范围以及预先配置的资源池选择策略,从各仿真云平台的空闲资源池中确定执行仿真任务的目标资源池;
在步骤S305中,协调调度平台将资源创建指令发送给所述目标资源池所属的目标仿真云平台,以使所述目标仿真云平台在所述目标资源池中创建执行所述仿真任务的资源。
在步骤S306中,仿真云平台接收协调调度平台发送的资源创建指令,并根据所述资源创建指令,在所述资源创建指令对应的目标资源池中创建执行仿真任务的资源。
如图4所示,为本申请实施例所提供的协调调度平台侧的调度仿真云平台与HPC平台的方法流程示意图,该方法可以包括以下步骤:
在步骤S401中,响应于仿真操作指令,基于HPC平台的计算资源占用状态,确定所述HPC平台具有空闲计算资源的资源空闲时间范围;
在步骤S402中,基于所述仿真操作指令对应的资源需求、所述空闲资源时间范围以及预先配置的资源池选择策略,从各仿真云平台的空闲资源池中确定执行仿真任务的目标资源池;
在步骤S403中,将资源创建指令发送给所述目标资源池所属的目标仿真云平台,以使所述目标仿真云平台在所述目标资源池中创建执行所述仿真任务的资源。
在一个或多个实施例中,所述计算资源占用状态包括所述HPC平台的计算资源总体规格、任务处理效率及待处理任务量;所述基于HPC平台的计算资源占用状态,确定所述HPC平台具有空闲计算资源的空闲资源时间范围,包括:
基于所述HPC平台的待处理任务量及任务处理效率,确定所述HPC平台处理各待处理任务所需的计算资源规格及所述HPC平台处理各待处理任务所需的预测时长;
基于所述HPC平台的计算资源总体规格、所述HPC平台处理各待处理任务所需的计算资源规格及所述HPC平台处理各待处理任务所需的预测时长,确定所述HPC平台具有空闲计算资源的空闲资源时间范围。
在一个或多个实施例中,所述基于所述仿真操作指令对应的资源需求、所述空闲资源时间范围及预先配置的资源池选择策略,从各仿真云平台的资源池中确定执行所述任务的目标资源池,包括:
基于所述仿真操作指令对应的资源需求,从各仿真云平台的空闲资源池中确定满足所述资源需求的第一资源池;
将所述第一资源池中对应的预测时间范围处于所述空闲资源时间范围内的资源池,作为满足所述空闲资源时间范围的第二资源池,其中,所述第一资源池对应的预测时间范围为所述第一资源池执行所述仿真任务对应的时间范围;
基于所述预先配置的资源池选择策略,从所述第二资源池中确定执行所述仿真任务的目标资源池。
在一个或多个实施例中,所述将所述第一资源池中对应的预测时间范围处于所述空闲资源时间范围内的资源池,作为满足所述空闲资源时间范围的第二资源池,其中,所述第一资源池对应的预测时间范围为所述第一资源池执行所述仿真任务对应的时间范围,包括:
确定在所述第一资源池中执行所述仿真任务对应的预测时间范围,所述预测时间范围包括所述第一资源池提交计算任务到所述HPC平台对应的预测时间范围,所述计算任务为在所述第一资源池中执行所述仿真任务的过程中产生的;
将所述第一资源池中提交计算任务到所述HPC平台对应的预测时间范围处于所述空闲资源时间范围内的资源池,作为满足所述空闲资源时间范围的第二资源池。
在一个或多个实施例中,所述基于所述预先配置的资源池选择策略,从所述第二资源池中确定执行所述仿真任务的目标资源池,包括:
所述预先配置的资源池选择策略为价格优先策略时,在所述第二资源池中,选择价格最低的第二资源池作为执行所述任务的目标资源池;和/或
所述预先配置的资源池选择策略为资源均等策略时,在所述第二资源池中,选择资源占用率最低的第二资源池作为执行所述仿真任务的目标资源池。
如图5所示,为本申请实施例所提供的HPC平台侧的调度仿真云平台与HPC平台的方法流程示意图,该方法可以包括以下步骤:
在步骤S501中,在接收到协调调度平台发送的状态获取需求后,确定当前的计算资源占用状态;
在步骤S502中,将所述计算资源占用状态发送给所述协调调度平台,以使所述协调调度平台基于由所述HPC平台的计算资源占用状态确定的资源空闲时间范围,从各仿真云平台的空闲资源池中确定执行仿真任务的目标资源池,将资源创建指令发送给所述目标资源池所属的目标仿真云平台,以通过所述目标资源池创建执行所述仿真任务的资源。
如图6所示,为本申请实施例所提供的仿真云平台侧的调度仿真云平台与HPC平台的方法流程示意图,该方法可以包括以下步骤:
在步骤S601中,接收协调调度平台发送的资源创建指令;
在步骤S602中,根据所述资源创建指令,在所述资源创建指令对应的目标资源池中创建执行仿真任务的资源;
其中,所述资源创建指令为所述协调调度平台基于由所述HPC平台的计算资源占用状态确定的资源空闲时间范围,从各仿真云平台的空闲资源池中确定执行仿真任务的目标资源池后发送的。
本申请提供的上述调度仿真云平台与高性能计算HPC平台的方法,接收到仿真操作指令后,先基于HPC平台的计算资源占用状态确定资源空闲时间范围,再基于所述仿真操作指令对应的资源需求、所述空闲资源时间范围以及预先配置的资源池选择策略,从各仿真云平台的空闲资源池中确定执行仿真任务的目标资源池,使用户在所述目标资源池中参考所述资源空闲时间范围执行所述仿真任务以及提交计算任务到HPC平台,达到兼顾不占用过多仿真云平台的资源配置与充分利用HPC平台的资源空闲时间范围的效果,在从用户申请仿真任务到用户操作结束仿真任务的过程中,实现仿真云平台与HPC平台的资源的有效利用和优化配置,提高资源的利用率和整体计算效率。
如图7所示,为本申请实施例所提供的应用于协调调度平台侧的调度仿真云平台与HPC平台的装置示意图,所述装置包括:
指令响应模块701,用于响应于仿真操作指令,基于获取的HPC平台的计算资源占用状态,确定所述HPC平台具有空闲计算资源的资源空闲时间范围;
资源池确定模块702,用于基于所述仿真操作指令对应的资源需求、所述空闲资源时间范围以及预先配置的资源池选择策略,从各仿真云平台的空闲资源池中确定执行仿真任务的目标资源池;
指令下发模块703,用于将资源创建指令发送给所述目标资源池所属的目标仿真云平台,以使所述目标仿真云平台在所述目标资源池中创建执行所述仿真任务的资源。
在一个或多个实施例中,所述计算资源占用状态包括所述HPC平台的计算资源总体规格、任务处理效率及待处理任务量;
所述指令响应模块701响应于仿真操作指令,基于获取的HPC平台的计算资源占用状态,确定所述HPC平台具有空闲计算资源的资源空闲时间范围,具体包括:
基于所述HPC平台的待处理任务量及任务处理效率,确定所述HPC平台处理各待处理任务所需的计算资源规格及所述HPC平台处理各待处理任务所需的预测时长;
基于所述HPC平台的计算资源总体规格、所述HPC平台处理各待处理任务所需的计算资源规格及所述HPC平台处理各待处理任务所需的预测时长,确定所述HPC平台具有空闲计算资源的空闲资源时间范围。
在一个或多个实施例中,所述资源池确定模块702基于所述仿真操作指令对应的资源需求、所述空闲资源时间范围及预先配置的资源池选择策略,从各仿真云平台的资源池中确定执行所述任务的目标资源池,具体包括:
基于所述仿真操作指令对应的资源需求,从各仿真云平台的空闲资源池中确定满足所述资源需求的第一资源池;
将所述第一资源池中对应的预测时间范围处于所述空闲资源时间范围内的资源池,作为满足所述空闲资源时间范围的第二资源池,其中,所述第一资源池对应的预测时间范围为所述第一资源池执行所述仿真任务对应的时间范围;
基于所述预先配置的资源池选择策略,从所述第二资源池中确定执行所述仿真任务的目标资源池。
在一个或多个实施例中,所述资源池确定模块702将所述第一资源池中对应的预测时间范围处于所述空闲资源时间范围内的资源池,作为满足所述空闲资源时间范围的第二资源池,其中,所述第一资源池对应的预测时间范围为所述第一资源池执行所述仿真任务对应的时间范围,具体包括:
确定在所述第一资源池中执行所述仿真任务对应的预测时间范围,所述预测时间范围包括所述第一资源池提交计算任务到所述HPC平台对应的预测时间范围,所述计算任务为在所述第一资源池中执行所述仿真任务的过程中产生的;
将所述第一资源池中提交计算任务到所述HPC平台对应的预测时间范围处于所述空闲资源时间范围内的资源池,作为满足所述空闲资源时间范围的第二资源池。
在一个或多个实施例中,所述资源池确定模块702基于所述预先配置的资源池选择策略,从所述第二资源池中确定执行所述仿真任务的目标资源池,具体包括:
所述预先配置的资源池选择策略为价格优先策略时,在所述第二资源池中,选择价格最低的第二资源池作为执行所述任务的目标资源池;和/或
所述预先配置的资源池选择策略为资源均等策略时,在所述第二资源池中,选择资源占用率最低的第二资源池作为执行所述仿真任务的目标资源池。
如图8所示,为本申请实施例所提供的应用于HPC平台侧的调度仿真云平台与HPC平台的装置示意图,所述装置包括:
计算资源占用状态确认模块801,用于在接收到协调调度平台发送的状态获取需求后,确定当前的计算资源占用状态;
计算资源占用状态发送模块802,用于将所述计算资源占用状态发送给所述协调调度平台,以使所述协调调度平台基于由所述HPC平台的计算资源占用状态确定的资源空闲时间范围,从各仿真云平台的空闲资源池中确定执行仿真任务的目标资源池,将资源创建指令发送给所述目标资源池所属的目标仿真云平台,以通过所述目标资源池创建执行所述仿真任务的资源。
如图9所示,为本申请实施例所提供的应用于仿真云平台侧的调度仿真云平台与HPC平台的装置示意图,所述装置包括:
指令接收模块901,用于接收协调调度平台发送的资源创建指令;
资源创建模块902,用于根据所述资源创建指令,在所述资源创建指令对应的目标资源池中创建执行仿真任务的资源;
其中,所述资源创建指令为所述协调调度平台基于由所述HPC平台的计算资源占用状态确定的资源空闲时间范围,从各仿真云平台的空闲资源池中确定执行仿真任务的目标资源池后发送的。
基于相同的发明构思,本申请还提供一种调度仿真云平台与HPC平台的设备,如图10所示,包括至少一个处理器1002;以及与所述至少一个处理器通信连接的存储器1001;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述应用于协调调度平台侧调度仿真云平台与高性能计算HPC平台的方法,或者执行上述应用于HPC平台侧调度仿真云平台与HPC平台的方法,或者执行上述应用于仿真云平台侧调度仿真云平台与HPC平台的方法。
存储器1001用于存储程序。具体地,程序可以包括程序代码,程序代码包括计算机操作指令。存储器1001可以为易失性存储器(volatile memory),例如随机存取存储器(random-access memory,简称RAM);也可以为非易失性存储器(non-volatile memory),例如快闪存储器(flash memory),硬盘(hard disk drive,简称HDD)或固态硬盘(solid-state drive,简称SSD);还可以为上述任一种或任多种易失性存储器和非易失性存储器的组合。
处理器1002可以是中央处理器(central processing unit,简称CPU),网络处理器(network processor,简称NP)或者CPU和NP的组合。还可以是硬件芯片。上述硬件芯片可以是专用集成电路(application-specific integrated circuit,简称ASIC),可编程逻辑器件(programmable logic device,简称PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(complex programmable logic device,简称CPLD),现场可编程逻辑门阵列(field-programmable gate array,简称FPGA),通用阵列逻辑(generic array logic,简称GAL)或其任意组合。
基于相同的发明构思,本申请实施例提供一种计算机程序介质,所述计算机存储介质存储有计算机程序,所述计算机程序用于使计算机执行上述应用于协调调度平台侧调度仿真云平台与高性能计算HPC平台的方法,或者执行上述应用于HPC平台侧调度仿真云平台与HPC平台的方法,或者执行上述应用于仿真云平台侧调度仿真云平台与HPC平台的方法。
上述存储介质可以是非临时性计算机可读存储介质,例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。
以上对本申请所提供的技术方案进行了详细介绍,本申请中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
- 多节点路径选择方法、装置、云平台资源调度方法及装置
- 一种云平台的资源监控方法、装置及设备
- 基于区块链的挖矿方法、云平台、装置、设备和介质
- 资源调度方法、装置、云平台、设备及存储介质
- 资源调度方法、装置、云平台、设备及存储介质