CN114564309B - 基于灵活配置实现性能提优的复杂算力***并行处理方法 - Google Patents
基于灵活配置实现性能提优的复杂算力***并行处理方法 Download PDFInfo
- Publication number
- CN114564309B CN114564309B CN202210195273.0A CN202210195273A CN114564309B CN 114564309 B CN114564309 B CN 114564309B CN 202210195273 A CN202210195273 A CN 202210195273A CN 114564309 B CN114564309 B CN 114564309B
- Authority
- CN
- China
- Prior art keywords
- parallel
- task
- algorithm
- mark
- job
- 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.)
- Active
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 57
- 230000006872 improvement Effects 0.000 title claims abstract description 19
- 238000000034 method Methods 0.000 claims abstract description 24
- 238000012545 processing Methods 0.000 claims abstract description 22
- 230000008569 process Effects 0.000 claims abstract description 18
- 238000004364 calculation method Methods 0.000 claims description 40
- 238000004891 communication Methods 0.000 claims description 10
- 230000009471 action Effects 0.000 claims description 9
- 230000007246 mechanism Effects 0.000 claims description 6
- 230000005856 abnormality Effects 0.000 claims description 5
- 230000005540 biological transmission Effects 0.000 claims description 5
- 238000005457 optimization Methods 0.000 claims description 5
- 230000002159 abnormal effect Effects 0.000 claims description 4
- 238000012544 monitoring process Methods 0.000 claims description 4
- 230000003993 interaction Effects 0.000 claims description 3
- 230000000694 effects Effects 0.000 description 5
- 238000011161 development Methods 0.000 description 4
- 230000001133 acceleration Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 238000009960 carding Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012795 verification 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/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
- G06F9/4451—User profiles; Roaming
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
Abstract
本发明属于复杂算力***技术领域,具体涉及一种基于灵活配置实现性能提优的复杂算力***并行处理方法,包括:应用***接收多条并行作业任务,完成对任务关联性配置文件的配置;主控节点机对各个并行节点机的空闲算力资源进行监控,获得空闲算力资源结果;主控节点机对并行作业任务分配并行节点机的空闲算力资源;主控节点机根据并行节点机的空闲算力资源的分配结果,生成对应每一个并行节点机的任务执行指令;并行节点机进行对应的作业处理,在作业处理过程中,根据任务关联性配置文件进行流程控制,直至作业完成或中止。本发明可以实现对不同任务类型下的多算法、可分组任务下的快速并行计算,大幅提升并行计算的执行效率。
Description
技术领域
本发明属于复杂算力***技术领域,具体涉及一种基于灵活配置实现性能提优的复杂算力***并行处理方法。
背景技术
伴随着应用***对软件服务的不断提高,应用软件的执行效率已被越来越多的人关注,同时,软件开发模式的不断改进,***中多个组件集成已经成为一种主流的开发模式。自90年代以来,并行计算得以空前的飞速发展,一方面,由于单处理机的计算速度不断提高,并行计算机的体系结构趋于成熟,数据传输网络的标准化和传输速率的大幅提升,为研制并行计算机***创造了有利条件。另一方面,推动并行计算发展的主要动力来自于国际上的一些重要研究计划。在经历了现代计算机两个明显的发展历程:串行计算时代和并行计算时代。每一个计算时代都从体系结构发展开始,接着是***软件(特别是编译器与操作***)、应用软件,最后随着问题求解环境的发展而达到顶峰。为求解大规模问题和复杂***,创建和使用并行计算机是其解决单处理器速度瓶颈的最好方法之一
传统的并行计算机是由一组处理单元组成的,这组处理单元通过相互之间的通信与协作,以更快的速度共同完成一项大规模的计算任务,但并行间缺少任务的沟通,计算效率没有发挥到最大。
传统的并行计算方法主要通过主控机将并行任务下发至并行节点机上,由并行节点机对最小执行单元任务进行解算,计算完成后向主控端发送请求,由主控根据需要确定是否安排下一个任务,在一定范围内实现了软件的加速效果,但是对于复杂算例情况下,尤其是任务间有一定交联时,即有些任务的完成或者信息直接可以为正在计算或者后续计算的并行计算任务进行指导、干预时,由于其传统的并行计算方法决定了它无法实现对任务的快速处理,从而也就无法实现更为快速的提优效果,这对于大规模复杂算例下的并行计算性能提优无疑是致命的缺陷。
发明内容
(一)要解决的技术问题
本发明要解决的技术问题是:如何提升复杂算力***并行处理能力。
(二)技术方案
为解决上述技术问题,本发明提供一种基于灵活配置实现性能提优的复杂算力***并行处理方法,所述方法基于复杂算力***并行处理***来实施,所述复杂算力***并行处理***包括:应用***、主控节点机、多个并行节点机;
所述应用***与主控节点机,以及主控节点机与各个并行节点机之间建立网络通信机制;
所述复杂算力***并行处理方法包括如下步骤:
步骤1:所述应用***接收多条并行作业任务,根据业务需求分解并行作业任务,根据每一条并行作业任务完成对任务关联性配置文件的配置,并将并行作业任务及任务关联性配置文件一并下发到主控节点机;
步骤2:所述主控节点机对各个并行节点机的空闲算力资源进行监控,获得空闲算力资源结果;
步骤3:所述主控节点机接收来自应用***的多条并行作业任务,结合空闲算力资源结果,根据任务关联性配置文件,对并行作业任务分配并行节点机的空闲算力资源;
所述主控节点机根据并行节点机的空闲算力资源的分配结果,生成对应每一个并行节点机的任务执行指令;所述任务执行指令用于指示一个并行节点机向一个或多个并行作业任务提供其空闲算力资源;
步骤4:所述并行节点机接收到主控节点机分发的任务执行指令,进行对应的作业处理,在作业处理过程中,根据任务关联性配置文件进行流程控制,直至作业完成或中止。
其中,所述步骤1中,所述任务关联性配置文件包括:“优化开关标志”、“单任务多算法标志”、“单任务算法组合方案标志”、“分组管理标志”、“分组并行数量”、“任务并行单元处理方法标志”、“执行结果标志”;
所述根据每一条并行作业任务完成对任务关联性配置文件的配置,具体为:
步骤1-1:根据并行作业任务的类型,若并行作业任务之间为简单的“无关联”计算且单条并行作业任务内部算法为串联关系时,则将“优化开关标志”置为“0”;若并行作业任务之间存在“关联性”计算或单条并行作业任务内部算法不为串联关系时,则将“优化开关标志”置为“1”;
步骤1-2:根据并行作业任务的类型,若单条并行作业任务下无可并行计算的算法时,则将“单任务多算法标志”置为“0”,反正则置为“1”;
步骤1-3:当“单任务多算法标志”为“1”时,根据单条并行作业任务的算法类型进行分配,配置“单任务算法组合方案标志”;其中,在单条并行作业任务的算法类型包括识别算法时,配置“单任务算法组合方案标志”为“1”;在单条并行作业任务的算法类型包括跟踪算法时,配置“单任务算法组合方案标志”为“2”;在单条并行作业任务的算法类型包括通视算法时,配置“单任务算法组合方案标志”为“3”;在单条并行作业任务的算法类型包括雷达算法时,配置“单任务算法组合方案标志”为“4”;在单条并行作业任务的算法类型包括截获算法时,配置“单任务算法组合方案标志”为“5”;
步骤1-4:若并行作业任务之间存在“关联性”计算时,则将“分组管理标志”置为“1”;若并行作业任务之间为简单的“无关联”计算时,则将“分组管理标志”置为“0”;
步骤1-5:当“分组管理标志”为“1”时,根据并行作业任务之间的关联情况配置“分组并行数量”,具体为将“分组并行数量”配置为并行作业任务能够分配的最小分组数量;
步骤1-6:根据作业任务类型和客户作业目的,对“任务并行单元处理方法标志”进行配置,其中,将“任务并行单元处理方法标志”配置为“-1”,表示获得计算结果后进行人为判定;将“任务并行单元处理方法标志”配置为“0”,表示停止单条并行作业任务内的所有并行计算单元的作业动作;将“任务并行单元处理方法标志”配置为“1”,表示作业成功或服务异常导致作业失败时,分组内并行作业取消;将“任务并行单元处理方法标志”配置为“2”,表示所有并行作业任务全部取消;将“任务并行单元处理方法标志”配置为“3”,表示不干预当前作业动作,作业继续;
步骤1-7:对于“执行结果标志”,在初始配置时置空;
当单条并行作业任务执行后,将其任务执行结果反填到该“执行结果标志”上;其中,“执行结果标志”为“1”表示单台并行节点机作业完成,为“2”表示单条并行作业任务作业完成,为“-1”表示数据断开作业失败,为“-2”表示服务异常作业失败。
其中,所述步骤3中,根据任务关联性配置文件,对并行作业任务分配并行节点机的空闲算力资源的过程如下:
步骤3-1:判断任务关联性配置文件中的“优化开关标志”是否为“1”,则进入步骤3-2;若为“0”,则以单条并行作业任务为最小粒度,并根据并行节点机的空闲算力资源按比例进行并行作业任务分发,作业任务分发结束;
步骤3-2:读取任务关联性配置文件中的“单任务多算法标志”,若为“1”则进入步骤3-3;若为“0”则以单条并行作业任务为最小粒度,并根据并行节点机的空闲算力资源按比例进行并行作业任务分发,作业任务分发结束;
步骤3-3:读取任务关联性配置文件中的“单任务算法组合方案标志”,根据“单任务算法组合方案标志”对单条并行作业任务中的算法进行组合,以该并行作业任务所含的算力需求最小的算法组合为最小粒度,并根据并行节点机的空闲算力资源按比例进行并行作业任务分发。
其中,所述步骤3-3中,所述进行并行作业任务分发,即主控节点机生成任务执行指令并发送给并行节点机,该任务执行指令中明确了对于某一并行节点机,对应一个或多个并行作业任务需要其提供空闲算力资源,且明确了对于该一个或多个并行作业任务所需执行的算法组合,该并行节点机对应需提供的空闲算力资源量;
至此,作业任务分发结束。
其中,所述步骤4中,根据任务关联性配置文件进行流程控制的过程如下:
步骤4-1:读取任务关联性配置文件中的“分组管理标志”,若为“1”则进入步骤4-2;若为“0”则进入步骤4-3;
步骤4-2:读取任务相关性配置文件中的“分组并行数量”,根据读取到的分组数对并行作业任务进行分组,为同一组内的所有并行作业任务分配唯一的“组号”,进入步骤4-3;
步骤4-3:各个并行节点机根据所接收到的任务执行指令,以单条并行作业任务或其所包含的算法组合为最小粒度并行开展作业,每完成最小粒度的作业或作业失败时,则根据步骤1-7的规则填写“执行结果标志”,并根据任务相关性配置文件中的“任务并行单元处理方法标志”,对任务流程进行干预;
其中,若“任务并行单元处理方法标志”为“-1”,则根据执行结果进行人工干预;
若“任务并行单元处理方法标志”为“0”,则中止该单条并行作业任务中的所有作业,其余并行作业任务继续进行,重复执行步骤4-3;
若“任务并行单元处理方法标志”为“1”,则根据该单条并行作业任务的“组号”,中止相同分组内的所有并行作业任务,其余分组的作业任务继续进行,重复执行步骤4-3;
若“任务并行单元处理方法标志”为“2”,则中止所有并行作业任务,并行作业任务结束;
若“任务并行单元处理方法标志”为“3”,则不干预当前作业动作,剩余执行中的所有作业任务继续进行,重复执行步骤4-3;
若无剩余作业任务,则并行作业任务结束。
其中,所述步骤1-1中,所述“关联性”计算是指在作业处理过程中,并行作业任务之间产生数据交互。
其中,所述步骤1-3中,对于某一并行作业任务,其算法类型包括识别算法,跟踪算法和通视算法,其中,识别算法和跟踪算法之间为并行关系,通视算法与另外两算法之间为串行关系,则将“单任务算法组合方案标志”配置为“1,2;3”。
其中,所述应用***与主控节点机,以及主控节点机与各个并行节点机之间所建立的网络通信机制,能够实现相互间数据的进程重启、数据传输、掉线重连以及空闲算力资源监控功能。
(三)有益效果
本发明通过对并行计算单元间的任务通信、分布式部署、网络通信、网络监控、任务进程、资源的充分利用以及对不同任务类型的灵活配置,形成一种通用的基于灵活配置实现性能提优的复杂算力***并行处理方法,将任务间的耦合关系进行梳理并形成配置文件,通过对任务执行过程中返回的作业成果信息,指导当前及后续并行计算任务的状态,最终实现对整体并行计算任务的最优加速效果。
与现有技术相比较,本发明可以实现对不同任务类型下的多算法、可分组任务下的快速并行计算,大幅提升并行计算的执行效率,给主控与节点机安装了“大脑”,通过本发明,可在同等计算机资源的情况下,实现对不同任务的“灵活可配置”,尤其是对多算法、复杂“关联”算例有非常高的提升效果。
附图说明
图1为并行计算内部算法逻辑示意图。
具体实施方式
为使本发明的目的、内容、和优点更加清楚,下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。
为解决上述技术问题,本发明提供一种基于灵活配置实现性能提优的复杂算力***并行处理方法,所述方法基于复杂算力***并行处理***来实施,所述复杂算力***并行处理***包括:应用***、主控节点机、多个并行节点机;
所述应用***与主控节点机,以及主控节点机与各个并行节点机之间建立网络通信机制;
所述复杂算力***并行处理方法包括如下步骤:
步骤1:所述应用***接收多条并行作业任务,根据业务需求分解并行作业任务,根据每一条并行作业任务完成对任务关联性配置文件的配置,并将并行作业任务及任务关联性配置文件一并下发到主控节点机;
步骤2:所述主控节点机对各个并行节点机的空闲算力资源进行监控,获得空闲算力资源结果;
步骤3:所述主控节点机接收来自应用***的多条并行作业任务,结合空闲算力资源结果,根据任务关联性配置文件,对并行作业任务分配并行节点机的空闲算力资源;
所述主控节点机根据并行节点机的空闲算力资源的分配结果,生成对应每一个并行节点机的任务执行指令;所述任务执行指令用于指示一个并行节点机向一个或多个并行作业任务提供其空闲算力资源;
步骤4:所述并行节点机接收到主控节点机分发的任务执行指令,进行对应的作业处理,在作业处理过程中,根据任务关联性配置文件进行流程控制,直至作业完成或中止。
其中,所述步骤1中,所述任务关联性配置文件包括:“优化开关标志”、“单任务多算法标志”、“单任务算法组合方案标志”、“分组管理标志”、“分组并行数量”、“任务并行单元处理方法标志”、“执行结果标志”;
所述根据每一条并行作业任务完成对任务关联性配置文件的配置,具体为:
步骤1-1:根据并行作业任务的类型,若并行作业任务之间为简单的“无关联”计算且单条并行作业任务内部算法为串联关系时,则将“优化开关标志”置为“0”;若并行作业任务之间存在“关联性”计算或单条并行作业任务内部算法不为串联关系时,则将“优化开关标志”置为“1”;
步骤1-2:根据并行作业任务的类型,若单条并行作业任务下无可并行计算的算法时,则将“单任务多算法标志”置为“0”,反正则置为“1”;
步骤1-3:当“单任务多算法标志”为“1”时,根据单条并行作业任务的算法类型进行分配,配置“单任务算法组合方案标志”;其中,在单条并行作业任务的算法类型包括识别算法时,配置“单任务算法组合方案标志”为“1”;在单条并行作业任务的算法类型包括跟踪算法时,配置“单任务算法组合方案标志”为“2”;在单条并行作业任务的算法类型包括通视算法时,配置“单任务算法组合方案标志”为“3”;在单条并行作业任务的算法类型包括雷达算法时,配置“单任务算法组合方案标志”为“4”;在单条并行作业任务的算法类型包括截获算法时,配置“单任务算法组合方案标志”为“5”;
步骤1-4:若并行作业任务之间存在“关联性”计算时,则将“分组管理标志”置为“1”;若并行作业任务之间为简单的“无关联”计算时,则将“分组管理标志”置为“0”;
步骤1-5:当“分组管理标志”为“1”时,根据并行作业任务之间的关联情况配置“分组并行数量”,具体为将“分组并行数量”配置为并行作业任务能够分配的最小分组数量;
步骤1-6:根据作业任务类型和客户作业目的,对“任务并行单元处理方法标志”进行配置,其中,将“任务并行单元处理方法标志”配置为“-1”,表示获得计算结果后进行人为判定;将“任务并行单元处理方法标志”配置为“0”,表示停止单条并行作业任务内的所有并行计算单元的作业动作;将“任务并行单元处理方法标志”配置为“1”,表示作业成功或服务异常导致作业失败时,分组内并行作业取消;将“任务并行单元处理方法标志”配置为“2”,表示所有并行作业任务全部取消;将“任务并行单元处理方法标志”配置为“3”,表示不干预当前作业动作,作业继续;
步骤1-7:对于“执行结果标志”,在初始配置时置空;
当单条并行作业任务执行后,将其任务执行结果反填到该“执行结果标志”上;其中,“执行结果标志”为“1”表示单台并行节点机作业完成,为“2”表示单条并行作业任务作业完成,为“-1”表示数据断开作业失败,为“-2”表示服务异常作业失败。
其中,所述步骤3中,根据任务关联性配置文件,对并行作业任务分配并行节点机的空闲算力资源的过程如下:
步骤3-1:判断任务关联性配置文件中的“优化开关标志”是否为“1”,则进入步骤3-2;若为“0”,则以单条并行作业任务为最小粒度,并根据并行节点机的空闲算力资源按比例进行并行作业任务分发,作业任务分发结束;
步骤3-2:读取任务关联性配置文件中的“单任务多算法标志”,若为“1”则进入步骤3-3;若为“0”则以单条并行作业任务为最小粒度,并根据并行节点机的空闲算力资源按比例进行并行作业任务分发,作业任务分发结束;
步骤3-3:读取任务关联性配置文件中的“单任务算法组合方案标志”,根据“单任务算法组合方案标志”对单条并行作业任务中的算法进行组合,以该并行作业任务所含的算力需求最小的算法组合为最小粒度,并根据并行节点机的空闲算力资源按比例进行并行作业任务分发。
其中,所述步骤3-3中,所述进行并行作业任务分发,即主控节点机生成任务执行指令并发送给并行节点机,该任务执行指令中明确了对于某一并行节点机,对应一个或多个并行作业任务需要其提供空闲算力资源,且明确了对于该一个或多个并行作业任务所需执行的算法组合,该并行节点机对应需提供的空闲算力资源量;
至此,作业任务分发结束。
其中,所述步骤4中,根据任务关联性配置文件进行流程控制的过程如下:
步骤4-1:读取任务关联性配置文件中的“分组管理标志”,若为“1”则进入步骤4-2;若为“0”则进入步骤4-3;
步骤4-2:读取任务相关性配置文件中的“分组并行数量”,根据读取到的分组数对并行作业任务进行分组,为同一组内的所有并行作业任务分配唯一的“组号”,进入步骤4-3;
步骤4-3:各个并行节点机根据所接收到的任务执行指令,以单条并行作业任务或其所包含的算法组合为最小粒度并行开展作业,每完成最小粒度的作业或作业失败时,则根据步骤1-7的规则填写“执行结果标志”,并根据任务相关性配置文件中的“任务并行单元处理方法标志”,对任务流程进行干预;
其中,若“任务并行单元处理方法标志”为“-1”,则根据执行结果进行人工干预;
若“任务并行单元处理方法标志”为“0”,则中止该单条并行作业任务中的所有作业,其余并行作业任务继续进行,重复执行步骤4-3;
若“任务并行单元处理方法标志”为“1”,则根据该单条并行作业任务的“组号”,中止相同分组内的所有并行作业任务,其余分组的作业任务继续进行,重复执行步骤4-3;
若“任务并行单元处理方法标志”为“2”,则中止所有并行作业任务,并行作业任务结束;
若“任务并行单元处理方法标志”为“3”,则不干预当前作业动作,剩余执行中的所有作业任务继续进行,重复执行步骤4-3;
若无剩余作业任务,则并行作业任务结束。
其中,所述步骤1-1中,所述“关联性”计算是指在作业处理过程中,并行作业任务之间产生数据交互。
其中,所述步骤1-3中,对于某一并行作业任务,其算法类型包括识别算法,跟踪算法和通视算法,其中,识别算法和跟踪算法之间为并行关系,通视算法与另外两算法之间为串行关系,则将“单任务算法组合方案标志”配置为“1,2;3”。
其中,所述应用***与主控节点机,以及主控节点机与各个并行节点机之间所建立的网络通信机制,能够实现相互间数据的进程重启、数据传输、掉线重连以及空闲算力资源监控功能。
实施效果验证
针对并行计算方法,根据应用软件中算法的不同,现举例分步说明:
第一步,通过对项目背景的算法进行梳理,得出单条任务下的不同算法间的计算时间如下表所示:
第二步,结合项目背景,任务间存在“关联性”,当一条任务完成时,同一方向下的不同高度层可以停止计算,即可将5条任务分为一组。
第三步,创建任务,设定任务总数为30条,并行机器数量为18台,则分别开展串行,传统并行计算时间。
串行时间:T串行=30*(6+4+8+2+1+9)=900秒
传统并行时间,算法间不能绑定,即算法间为串行,且任务间无“关联性”,则并行计算时间,使用最大并行量18台,时间为ceil(30/18)*(6+4+8+2+1+9)=60秒
第四步,优化后并行算法时间统计,可以将单个任务根据算法分为三组,算法1、算法2作为节点机1,算法3、算法4作为节点机2,算法5、算法6作为节点机3,并将任务[1,5]分为组1,具体分配如下:
通过上表可进行计算,当使用“任务关联性配置文件”进行多算法、分组配置后,当出现计算异常时,最快可在1秒后根据异常情况(服务异常、数据断开等),通过主控停止所有计算,并行计算时间约为2秒(1秒节点机计算+1秒节点机向主控发送中断消息及主控执行);当单任务下各算法均完成计算时,并停止组内相应任务,30条任务最多可以分为6组,每组优先执行一条任务,其时间最多可以优化为T优化后=10*(3*6/18)=10秒。
第五步,对比优化前后的试验效果,如下表所示:
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。
Claims (10)
1.一种基于灵活配置实现性能提优的复杂算力***并行处理方法,其特征在于,所述方法基于复杂算力***并行处理***来实施,所述复杂算力***并行处理***包括:应用***、主控节点机、多个并行节点机;
所述应用***与主控节点机,以及主控节点机与各个并行节点机之间建立网络通信机制;
所述复杂算力***并行处理方法包括如下步骤:
步骤1:所述应用***接收多条并行作业任务,根据业务需求分解并行作业任务,根据每一条并行作业任务完成对任务关联性配置文件的配置,并将并行作业任务及任务关联性配置文件一并下发到主控节点机;
步骤2:所述主控节点机对各个并行节点机的空闲算力资源进行监控,获得空闲算力资源结果;
步骤3:所述主控节点机接收来自应用***的多条并行作业任务,结合空闲算力资源结果,根据任务关联性配置文件,对并行作业任务分配并行节点机的空闲算力资源;
所述主控节点机根据并行节点机的空闲算力资源的分配结果,生成对应每一个并行节点机的任务执行指令;所述任务执行指令用于指示一个并行节点机向一个或多个并行作业任务提供其空闲算力资源;
步骤4:所述并行节点机接收到主控节点机分发的任务执行指令,进行对应的作业处理,在作业处理过程中,根据任务关联性配置文件进行流程控制,直至作业完成或中止。
2.如权利要求1所述的基于灵活配置实现性能提优的复杂算力***并行处理方法,其特征在于,所述步骤1中,所述任务关联性配置文件包括:“优化开关标志”、“单任务多算法标志”、“单任务算法组合方案标志”、“分组管理标志”、“分组并行数量”、“任务并行单元处理方法标志”、“执行结果标志”;
所述根据每一条并行作业任务完成对任务关联性配置文件的配置,具体为:
步骤1-1:根据并行作业任务的类型,若并行作业任务之间为简单的“无关联”计算且单条并行作业任务内部算法为串联关系时,则将“优化开关标志”置为“0”;若并行作业任务之间存在“关联性”计算或单条并行作业任务内部算法不为串联关系时,则将“优化开关标志”置为“1”;
步骤1-2:根据并行作业任务的类型,若单条并行作业任务下无可并行计算的算法时,则将“单任务多算法标志”置为“0”,反正则置为“1”;
步骤1-3:当“单任务多算法标志”为“1”时,根据单条并行作业任务的算法类型进行分配,配置“单任务算法组合方案标志”;其中,在单条并行作业任务的算法类型包括识别算法时,配置“单任务算法组合方案标志”为“1”;在单条并行作业任务的算法类型包括跟踪算法时,配置“单任务算法组合方案标志”为“2”;在单条并行作业任务的算法类型包括通视算法时,配置“单任务算法组合方案标志”为“3”;在单条并行作业任务的算法类型包括雷达算法时,配置“单任务算法组合方案标志”为“4”;在单条并行作业任务的算法类型包括截获算法时,配置“单任务算法组合方案标志”为“5”;
步骤1-4:若并行作业任务之间存在“关联性”计算时,则将“分组管理标志”置为“1”;若并行作业任务之间为简单的“无关联”计算时,则将“分组管理标志”置为“0”;
步骤1-5:当“分组管理标志”为“1”时,根据并行作业任务之间的关联情况配置“分组并行数量”,具体为将“分组并行数量”配置为并行作业任务能够分配的最小分组数量;
步骤1-6:根据作业任务类型和客户作业目的,对“任务并行单元处理方法标志”进行配置,其中,将“任务并行单元处理方法标志”配置为“-1”,表示获得计算结果后进行人为判定;将“任务并行单元处理方法标志”配置为“0”,表示停止单条并行作业任务内的所有并行计算单元的作业动作;将“任务并行单元处理方法标志”配置为“1”,表示作业成功或服务异常导致作业失败时,分组内并行作业取消;将“任务并行单元处理方法标志”配置为“2”,表示所有并行作业任务全部取消;将“任务并行单元处理方法标志”配置为“3”,表示不干预当前作业动作,作业继续;
步骤1-7:对于“执行结果标志”,在初始配置时置空;
当单条并行作业任务执行后,将其任务执行结果反填到该“执行结果标志”上;其中,“执行结果标志”为“1”表示单台并行节点机作业完成,为“2”表示单条并行作业任务作业完成,为“-1”表示数据断开作业失败,为“-2”表示服务异常作业失败。
3.如权利要求2所述的基于灵活配置实现性能提优的复杂算力***并行处理方法,其特征在于,所述步骤3中,根据任务关联性配置文件,对并行作业任务分配并行节点机的空闲算力资源的过程如下:
步骤3-1:判断任务关联性配置文件中的“优化开关标志”是否为“1”,则进入步骤3-2;若为“0”,则以单条并行作业任务为最小粒度,并根据并行节点机的空闲算力资源按比例进行并行作业任务分发,作业任务分发结束;
步骤3-2:读取任务关联性配置文件中的“单任务多算法标志”,若为“1”则进入步骤3-3;若为“0”则以单条并行作业任务为最小粒度,并根据并行节点机的空闲算力资源按比例进行并行作业任务分发,作业任务分发结束;
步骤3-3:读取任务关联性配置文件中的“单任务算法组合方案标志”,根据“单任务算法组合方案标志”对单条并行作业任务中的算法进行组合,以该并行作业任务所含的算力需求最小的算法组合为最小粒度,并根据并行节点机的空闲算力资源按比例进行并行作业任务分发。
4.如权利要求3所述的基于灵活配置实现性能提优的复杂算力***并行处理方法,其特征在于,所述步骤3-3中,所述进行并行作业任务分发,即主控节点机生成任务执行指令并发送给并行节点机,该任务执行指令中明确了对于某一并行节点机,对应一个或多个并行作业任务需要其提供空闲算力资源,且明确了对于该一个或多个并行作业任务所需执行的算法组合,该并行节点机对应需提供的空闲算力资源量;
至此,作业任务分发结束。
5.如权利要求4所述的基于灵活配置实现性能提优的复杂算力***并行处理方法,其特征在于,所述步骤4中,根据任务关联性配置文件进行流程控制的过程如下:
步骤4-1:读取任务关联性配置文件中的“分组管理标志”,若为“1”则进入步骤4-2;若为“0”则进入步骤4-3;
步骤4-2:读取任务相关性配置文件中的“分组并行数量”,根据读取到的分组数对并行作业任务进行分组,为同一组内的所有并行作业任务分配唯一的“组号”,进入步骤4-3;
步骤4-3:各个并行节点机根据所接收到的任务执行指令,以单条并行作业任务或其所包含的算法组合为最小粒度并行开展作业,每完成最小粒度的作业或作业失败时,则根据步骤1-7的规则填写“执行结果标志”,并根据任务相关性配置文件中的“任务并行单元处理方法标志”,对任务流程进行干预;
其中,若“任务并行单元处理方法标志”为“-1”,则根据执行结果进行人工干预;
若“任务并行单元处理方法标志”为“0”,则中止该单条并行作业任务中的所有作业,其余并行作业任务继续进行,重复执行步骤4-3;
若“任务并行单元处理方法标志”为“1”,则根据该单条并行作业任务的“组号”,中止相同分组内的所有并行作业任务,其余分组的作业任务继续进行,重复执行步骤4-3;
若“任务并行单元处理方法标志”为“2”,则中止所有并行作业任务,并行作业任务结束;
若“任务并行单元处理方法标志”为“3”,则不干预当前作业动作,剩余执行中的所有作业任务继续进行,重复执行步骤4-3;
若无剩余作业任务,则并行作业任务结束。
6.如权利要求2所述的基于灵活配置实现性能提优的复杂算力***并行处理方法,其特征在于,所述步骤1-1中,所述“关联性”计算是指在作业处理过程中,并行作业任务之间产生数据交互。
7.如权利要求2所述的基于灵活配置实现性能提优的复杂算力***并行处理方法,其特征在于,所述步骤1-3中,对于某一并行作业任务,其算法类型包括识别算法,跟踪算法和通视算法,其中,识别算法和跟踪算法之间为并行关系,通视算法与另外两算法之间为串行关系,则将“单任务算法组合方案标志”配置为“1,2;3”。
8.如权利要求1所述的基于灵活配置实现性能提优的复杂算力***并行处理方法,其特征在于,所述应用***与主控节点机,以及主控节点机与各个并行节点机之间所建立的网络通信机制,能够实现相互间数据的进程重启、数据传输、掉线重连以及空闲算力资源监控功能。
9.如权利要求3所述的基于灵活配置实现性能提优的复杂算力***并行处理方法,其特征在于,所述步骤3-1中,若任务关联性配置文件中的“优化开关标志”为“0”,则以单条并行作业任务为最小粒度,并根据并行节点机的空闲算力资源按比例进行并行作业任务分发,作业任务分发结束。
10.如权利要求3所述的基于灵活配置实现性能提优的复杂算力***并行处理方法,其特征在于,所述步骤3-2中,若任务关联性配置文件中的“单任务多算法标志”为“0”,则以单条并行作业任务为最小粒度,并根据并行节点机的空闲算力资源按比例进行并行作业任务分发,作业任务分发结束。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210195273.0A CN114564309B (zh) | 2022-03-01 | 2022-03-01 | 基于灵活配置实现性能提优的复杂算力***并行处理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210195273.0A CN114564309B (zh) | 2022-03-01 | 2022-03-01 | 基于灵活配置实现性能提优的复杂算力***并行处理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114564309A CN114564309A (zh) | 2022-05-31 |
CN114564309B true CN114564309B (zh) | 2024-04-09 |
Family
ID=81714918
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210195273.0A Active CN114564309B (zh) | 2022-03-01 | 2022-03-01 | 基于灵活配置实现性能提优的复杂算力***并行处理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114564309B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009057208A1 (ja) * | 2007-10-31 | 2009-05-07 | Fujitsu Limited | 資源割当プログラム、管理ノード、資源割当方法、および並列計算機システム |
CN102981912A (zh) * | 2012-11-06 | 2013-03-20 | 无锡江南计算技术研究所 | 一种资源分配方法及*** |
CN105677486A (zh) * | 2016-01-08 | 2016-06-15 | 上海交通大学 | 数据并行处理方法及*** |
CN112631986A (zh) * | 2020-12-28 | 2021-04-09 | 西南电子技术研究所(中国电子科技集团公司第十研究所) | 大规模dsp并行计算装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7716336B2 (en) * | 2006-04-28 | 2010-05-11 | International Business Machines Corporation | Resource reservation for massively parallel processing systems |
-
2022
- 2022-03-01 CN CN202210195273.0A patent/CN114564309B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009057208A1 (ja) * | 2007-10-31 | 2009-05-07 | Fujitsu Limited | 資源割当プログラム、管理ノード、資源割当方法、および並列計算機システム |
CN102981912A (zh) * | 2012-11-06 | 2013-03-20 | 无锡江南计算技术研究所 | 一种资源分配方法及*** |
CN105677486A (zh) * | 2016-01-08 | 2016-06-15 | 上海交通大学 | 数据并行处理方法及*** |
CN112631986A (zh) * | 2020-12-28 | 2021-04-09 | 西南电子技术研究所(中国电子科技集团公司第十研究所) | 大规模dsp并行计算装置 |
Non-Patent Citations (1)
Title |
---|
云计算架构在银行批处理流程优化中的应用研究;赵曦;;软件导刊;20131025(10);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN114564309A (zh) | 2022-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7689996B2 (en) | Method to distribute programs using remote Java objects | |
CN107038069B (zh) | Hadoop平台下动态标签匹配DLMS调度方法 | |
Hui et al. | Improved strategies for dynamic load balancing | |
CN102508718B (zh) | 一种虚拟机负载均衡方法和装置 | |
CN111338774A (zh) | 分布式定时任务调度***及计算装置 | |
CN103812949B (zh) | 一种面向实时云平台的任务调度与资源分配方法及*** | |
US20080229320A1 (en) | Method, an apparatus and a system for controlling of parallel execution of services | |
Hac | A distributed algorithm for performance improvement through file replication, file migration, and process migration | |
US20140040474A1 (en) | Maximizing server utilization within a datacenter | |
US20080294872A1 (en) | Defragmenting blocks in a clustered or distributed computing system | |
CN103179048A (zh) | 云数据中心的主机QoS策略变换方法及*** | |
CN113157710B (zh) | 区块链数据并行写入方法、装置、计算机设备及存储介质 | |
CN114625534B (zh) | 基于灵活配置实现性能提优的复杂算力***并行处理*** | |
CN111160873A (zh) | 基于分布式架构的跑批处理装置及方法 | |
CN106874067B (zh) | 基于轻量级虚拟机的并行计算方法、装置及*** | |
CN103294540A (zh) | 一种通过至强融核协处理器提升Erlang虚拟机性能的方法 | |
CN112231098A (zh) | 任务处理方法、装置、设备及存储介质 | |
WO2024060788A1 (zh) | 面向智能计算的流水并行训练自适应调整***、方法 | |
Wagenländer et al. | Spotnik: Designing distributed machine learning for transient cloud resources | |
CN109739634A (zh) | 一种原子任务执行方法及装置 | |
Jonathan et al. | Rethinking Adaptability in {Wide-Area} Stream Processing Systems | |
CN114564309B (zh) | 基于灵活配置实现性能提优的复杂算力***并行处理方法 | |
CN110084507A (zh) | 云计算环境下分级感知的科学工作流调度优化方法 | |
CN114115140B (zh) | 多核主控制器、主辅多核控制器间数据同步***和方法 | |
CN110780999A (zh) | 一种多核cpu的调度***和方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |