CN105426249A - 一种规模动态可伸缩的高可用并行作业控制方法 - Google Patents
一种规模动态可伸缩的高可用并行作业控制方法 Download PDFInfo
- Publication number
- CN105426249A CN105426249A CN201510826934.5A CN201510826934A CN105426249A CN 105426249 A CN105426249 A CN 105426249A CN 201510826934 A CN201510826934 A CN 201510826934A CN 105426249 A CN105426249 A CN 105426249A
- Authority
- CN
- China
- Prior art keywords
- control
- concurrent
- job
- resource
- scale
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 44
- 230000008569 process Effects 0.000 claims abstract description 29
- 230000008859 change Effects 0.000 claims description 11
- 230000006870 function Effects 0.000 claims description 4
- 230000004075 alteration Effects 0.000 claims description 3
- 239000004744 fabric Substances 0.000 claims description 3
- 230000004048 modification Effects 0.000 abstract description 5
- 238000012986 modification Methods 0.000 abstract description 5
- 238000005516 engineering process Methods 0.000 description 3
- 230000009467 reduction Effects 0.000 description 3
- 230000003750 conditioning effect Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000008570 general process Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3885—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Hardware Redundancy (AREA)
Abstract
本发明提供了一种规模动态可伸缩的高可用并行作业控制方法,包括:第一步骤,根据并行计算中作业的规模,确定并行作业控制中所需启动的作业分控数量;第二步骤,作业总控动态启动第一步骤中确定的需要数量的作业分控,将并行作业使用的计算节点按组划分,分配给作业分控进行按组管理,从而形成一个多层的作业任务控制树;第三步骤,在作业运行过程中,执行作业资源变更;第四步骤,作业控制模块将第三步骤执行后的作业资源变更情况通知到底层并行语言,由底层并行语言与作业控制协同进行并行作业的运行环境重构,使并行作业在环境重构后的新作业资源规模下继续运行。
Description
技术领域
本发明涉及计算机技术领域,具体涉及一种规模动态可伸缩的高可用并行作业控制方法。
背景技术
在并行计算中,当并行作业提交后,由于并行作业进程间的相关性及作业控制通路的建立都与作业规模相关,所以并行作业的规模在作业创建时就已经固定,不能动态改变。当作业运行过程中使用的节点出现故障或者有更多空闲资源可用时,一般需要终止当前作业并重新提交,以适应当前的可用资源规模。
但是,另一方面,当前并行计算机一般系统规模巨大,并行作业运行过程中极易由于节点故障等原因,导致作业可使用资源规模缩小,或者由于其他作业退出以及资源重分配等原因使当前可用资源增加,在这种情况下,现有技术只能将原作业终止并重新提交以适应新的节点规模,不能够进行动态伸缩,这样不但影响作业运行的持续性,也会较大的降低系统资源利用率与好用性。
发明内容
本发明所要解决的技术问题是针对现有技术中存在的并行作业提交运行后基于并行作业的运行及管理特性而使得作业规模在运行过程中很难改变上述缺陷,提供一种规模动态可伸缩的高可用并行作业控制方法,能够解决并行作业运行过程中不可动态伸缩的问题,以提高并行作业运行效率和系统资源利用率。
根据本发明,提供了一种规模动态可伸缩的高可用并行作业控制方法,包括:
第一步骤:根据并行计算中作业的规模,确定并行作业控制中所需启动的作业分控数量;
第二步骤:作业总控动态启动第一步骤中确定的需要数量的作业分控,将并行作业使用的计算节点按组划分,分配给作业分控进行按组管理,从而形成一个多层的作业任务控制树;
第三步骤:在作业运行过程中,执行作业资源变更;
第四步骤:作业控制模块将第三步骤执行后的作业资源变更情况通知到底层并行语言,由底层并行语言与作业控制协同进行并行作业的运行环境重构,使并行作业在环境重构后的新作业资源规模下继续运行。
优选地,作业资源变更包括第一作业资源变更步骤和第二作业资源变更步骤。
优选地,在第一作业资源变更步骤,在作业运行过程中,当特定故障节点不能继续工作时,通知作业控制树中对所述故障节点进行管理的作业分控,该作业分控处理所述故障节点的退出,启动资源释放,将该故障节点从作业任务控制树移除。
优选地,在第二作业资源变更步骤,在作业运行过程中,当可以向运行中的作业提供更多的可用资源时,作业管理启动资源再分配功能,改变作业使用的计算资源规模,并按需启动新的作业分控,将所述新的作业分控纳入作业控制树中对新分配的作业资源进行管理,在新分配的作业资源上启动并行作业任务并进行控制。
优选地,作业分控管理计算节点的比例为1:256。
本发明解决了在并行系统中,并行作业运行过程中作业规模不能动态伸缩的问题。当作业使用的资源需要动态缩小或增加时,能够动态的缩减或扩展作业控制通路,并根据需要启动并行作业任务,实现作业控制规模的动态可伸缩,提高系统资源利用率。
附图说明
结合附图,并通过参考下面的详细描述,将会更容易地对本发明有更完整的理解并且更容易地理解其伴随的优点和特征,其中:
图1示意性地示出了根据本发明优选实施例的规模动态可伸缩的高可用并行作业控制方法的流程图。
需要说明的是,附图用于说明本发明,而非限制本发明。注意,表示结构的附图可能并非按比例绘制。并且,附图中,相同或者类似的元件标有相同或者类似的标号。
具体实施方式
为了使本发明的内容更加清楚和易懂,下面结合具体实施例和附图对本发明的内容进行详细描述。
在并行计算中,当作业规模确定后,并行作业任务进程一般会依据规模确定进程之间的联系与相关性,作业运行过程中消息发送等均与该联系密切相关。同时由于作业控制通路的建立也与作业规模相关,所以并行作业的规模在作业提交后,一般较难动态改变。当作业可以使用的节点资源规模发生变化时,一般的处理是将原作业终止并重新提交以适应新的节点规模,不能够进行动态伸缩。
本发明结合作业分控、作业控制通路的动态缩减与扩展,实现并行作业控制规模的动态伸缩。其中,本发明主要针对并行作业运行过程中作业规模较难动态伸缩的问题,通过作业控制通路的动态调整及与并行语言的协作处理,实现动态的缩减或扩展作业控制通路,并根据需要启动新增的并行作业任务,实现作业控制规模的动态可伸缩,提高系统资源利用率。
图1示意性地示出了根据本发明优选实施例的规模动态可伸缩的高可用并行作业控制方法的流程图。
如图1所示,根据本发明优选实施例的规模动态可伸缩的高可用并行作业控制方法包括:
第一步骤S1:根据并行计算中作业的规模,确定并行作业控制中所需启动的作业分控数量;
第二步骤S2:作业总控动态启动第一步骤S1中确定的需要数量的作业分控,将并行作业使用的计算节点按组划分,分配给作业分控进行按组管理,从而形成一个多层的作业任务控制树;优选地,作业分控管理计算节点的比例为1:256。
第三步骤S3:在作业运行过程中,执行作业资源变更;
其中,优选地,作业资源变更可以包括第一作业资源变更步骤S31和第二作业资源变更步骤S32。
第一作业资源变更步骤S31:在作业运行过程中,当特定故障节点例如由于故障或其他原因不能继续工作时,首先通知到作业控制树中对所述故障节点进行管理的作业分控,该作业分控处理所述故障节点的退出,启动资源释放,将该故障节点从作业任务控制树移除;
第二作业资源变更步骤S32:在作业运行过程中,当由于其他作业退出或者空闲资源划分导致可以向运行中的作业提供更多的可用资源时,作业管理启动资源再分配功能,改变作业使用的计算资源规模,并按需启动新的作业分控,将所述新的作业分控纳入作业控制树中对新分配的作业资源进行管理,在新分配的作业资源上启动并行作业任务并进行控制;
第四步骤S4:作业控制模块将第三步骤S3执行后的作业资源变更情况通知到底层并行语言,由底层并行语言与作业控制协同进行并行作业的运行环境重构,使并行作业在环境重构后的新作业资源规模下继续运行。
在上述处理流程中,基于作业控制通路的动态调整及与并行语言的协同,能够有效的应对作业资源规模伸缩的各种需求,实现作业规模动态可伸缩。
当有计算节点发生故障时,可以动态的抛弃故障的节点任务,维持作业的持续运行,而不需要将作业终止。
当有额外空闲资源可用时,能够动态扩展作业规模,将空闲资源纳入作业控制并启动作业任务,重构作业环境形成完整并行作业以继续运行,提高资源使用效率。
为了更好地说明本发明,下面对术语进行简要的解释:
并行计算(ParallelComputing):并行计算是指同时使用多种计算资源解决计算问题的过程,通过多节点/处理器来并发协同求解同一问题,以提高计算速度和处理能力。
并行作业:一般指由MPI等并行语言编写,运行于并行计算机计算资源上的任务进程集合,由作业管理系统启动和控制,通过进程间协同完成同一问题求解。
并行作业管理系统:指运行于并行计算机中,用于进行并行作业调度、任务启动、控制与回收等功能的管理控制系统
此外,需要说明的是,除非特别指出,否则说明书中的术语“第一”、“第二”、“第三”等描述仅仅用于区分说明书中的各个组件、元素、步骤等,而不是用于表示各个组件、元素、步骤之间的逻辑关系或者顺序关系等。
可以理解的是,虽然本发明已以较佳实施例披露如上,然而上述实施例并非用以限定本发明。对于任何熟悉本领域的技术人员而言,在不脱离本发明技术方案范围情况下,都可利用上述揭示的技术内容对本发明技术方案作出许多可能的变动和修饰,或修改为等同变化的等效实施例。因此,凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所做的任何简单修改、等同变化及修饰,均仍属于本发明技术方案保护的范围内。
Claims (5)
1.一种规模动态可伸缩的高可用并行作业控制方法,其特征在于包括:
第一步骤:根据并行计算中作业的规模,确定并行作业控制中所需启动的作业分控数量;
第二步骤:作业总控动态启动第一步骤中确定的需要数量的作业分控,将并行作业使用的计算节点按组划分,分配给作业分控进行按组管理,从而形成一个多层的作业任务控制树;
第三步骤:在作业运行过程中,执行作业资源变更;
第四步骤:作业控制模块将第三步骤执行后的作业资源变更情况通知到底层并行语言,由底层并行语言与作业控制协同进行并行作业的运行环境重构,使并行作业在环境重构后的新作业资源规模下继续运行。
2.根据权利要求1所述的规模动态可伸缩的高可用并行作业控制方法,其特征在于,作业资源变更包括第一作业资源变更步骤和第二作业资源变更步骤。
3.根据权利要求1或2所述的规模动态可伸缩的高可用并行作业控制方法,其特征在于,在第一作业资源变更步骤,在作业运行过程中,当特定故障节点不能继续工作时,通知作业控制树中对所述故障节点进行管理的作业分控,该作业分控处理所述故障节点的退出,启动资源释放,将该故障节点从作业任务控制树移除。
4.根据权利要求1或2所述的规模动态可伸缩的高可用并行作业控制方法,其特征在于,在第二作业资源变更步骤,在作业运行过程中,当可以向运行中的作业提供更多的可用资源时,作业管理启动资源再分配功能,改变作业使用的计算资源规模,并按需启动新的作业分控,将所述新的作业分控纳入作业控制树中对新分配的作业资源进行管理,在新分配的作业资源上启动并行作业任务并进行控制。
5.根据权利要求1或2所述的规模动态可伸缩的高可用并行作业控制方法,其特征在于,作业分控管理计算节点的比例为1:256。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510826934.5A CN105426249A (zh) | 2015-11-24 | 2015-11-24 | 一种规模动态可伸缩的高可用并行作业控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510826934.5A CN105426249A (zh) | 2015-11-24 | 2015-11-24 | 一种规模动态可伸缩的高可用并行作业控制方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105426249A true CN105426249A (zh) | 2016-03-23 |
Family
ID=55504473
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510826934.5A Pending CN105426249A (zh) | 2015-11-24 | 2015-11-24 | 一种规模动态可伸缩的高可用并行作业控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105426249A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112486576A (zh) * | 2019-09-12 | 2021-03-12 | 无锡江南计算技术研究所 | 大规模并行作业的规模动态扩展控制方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102932410A (zh) * | 2012-09-24 | 2013-02-13 | 无锡江南计算技术研究所 | 并行计算中作业全局任务信息传递方法 |
CN103810041A (zh) * | 2014-02-13 | 2014-05-21 | 北京大学 | 一种支持动态伸缩的并行计算的方法 |
-
2015
- 2015-11-24 CN CN201510826934.5A patent/CN105426249A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102932410A (zh) * | 2012-09-24 | 2013-02-13 | 无锡江南计算技术研究所 | 并行计算中作业全局任务信息传递方法 |
CN103810041A (zh) * | 2014-02-13 | 2014-05-21 | 北京大学 | 一种支持动态伸缩的并行计算的方法 |
Non-Patent Citations (2)
Title |
---|
宋长明 等: "《一种并行作业任务启动模型及其可扩展性分析》", 《计算机工程与科学》 * |
陈斌 等: "《分布式系统可伸缩性研究综述》", 《计算机科学》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112486576A (zh) * | 2019-09-12 | 2021-03-12 | 无锡江南计算技术研究所 | 大规模并行作业的规模动态扩展控制方法 |
CN112486576B (zh) * | 2019-09-12 | 2022-07-12 | 无锡江南计算技术研究所 | 大规模并行作业的规模动态扩展控制方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104536937B (zh) | 基于cpu‑gpu异构集群的大数据一体机实现方法 | |
US20210191780A1 (en) | Method and apparatus for processing development machine operation task, device and storage medium | |
CN102073546A (zh) | 一种云计算环境中分布式计算模式下的任务动态调度方法 | |
CN104506620A (zh) | 一种可扩展的自动化计算服务平台及其构建方法 | |
CN103036930A (zh) | 用于管理存储设备的方法和设备 | |
US11740921B2 (en) | Coordinated container scheduling for improved resource allocation in virtual computing environment | |
CN108985937A (zh) | 一种基于区块链技术的计算资源共享方法及区块链系统 | |
CN105159783A (zh) | 一种系统任务分配方法 | |
CN102789394B (zh) | 一种并行处理消息的方法、装置、节点及服务器集群 | |
CN106020970A (zh) | 一种私有云环境下的异构虚拟化平台管理框架 | |
CN102624558A (zh) | 一种基于云计算技术解决通信行业网管系统性能瓶颈的方法 | |
CN105573907B (zh) | 用于在解聚的硬件组件上安装软件的方法和系统 | |
US9158470B2 (en) | Managing CPU resources for high availability micro-partitions | |
CN106227397A (zh) | 基于应用虚拟化技术的计算集群作业管理系统及方法 | |
CN109032587A (zh) | 一种数据流管理框架、方法、终端设备及存储介质 | |
CN105740085A (zh) | 容错处理方法及装置 | |
CN105786447A (zh) | 服务器处理数据的方法、装置及服务器 | |
CN107807854A (zh) | 一种自动调度节点机的方法及渲染任务处理方法 | |
CN114691050B (zh) | 基于kubernetes的云原生存储方法、装置、设备及介质 | |
CN104572286A (zh) | 一种基于分布式内存集群的任务调度方法 | |
CN105426249A (zh) | 一种规模动态可伸缩的高可用并行作业控制方法 | |
CN103970611A (zh) | 基于计算机集群的任务处理方法 | |
WO2017101247A1 (zh) | 一种自助设备硬件管理方法和装置 | |
CN104951346A (zh) | 一种用于嵌入式系统的进程管理方法及系统 | |
CN105653347A (zh) | 一种服务器、资源管理方法及虚拟机管理器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20160323 |
|
RJ01 | Rejection of invention patent application after publication |