CN112148439B - 任务处理方法、装置、设备及存储介质 - Google Patents
任务处理方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN112148439B CN112148439B CN201910580585.1A CN201910580585A CN112148439B CN 112148439 B CN112148439 B CN 112148439B CN 201910580585 A CN201910580585 A CN 201910580585A CN 112148439 B CN112148439 B CN 112148439B
- Authority
- CN
- China
- Prior art keywords
- computing
- target
- slave
- task
- scheduling
- 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 53
- 238000012545 processing Methods 0.000 claims abstract description 102
- 238000000034 method Methods 0.000 claims abstract description 56
- 238000004422 calculation algorithm Methods 0.000 claims description 142
- 238000004891 communication Methods 0.000 claims description 50
- 230000008569 process Effects 0.000 claims description 24
- 230000004044 response Effects 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 6
- 230000000873 masking effect Effects 0.000 claims description 2
- 238000012546 transfer Methods 0.000 claims description 2
- 230000006870 function Effects 0.000 description 14
- 238000004364 calculation method Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 6
- 230000007246 mechanism Effects 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 238000010276 construction Methods 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 206010063385 Intellectualisation Diseases 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000001483 mobilizing effect Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001960 triggered effect Effects 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/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
-
- 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/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
-
- 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
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)
- Computer And Data Communications (AREA)
Abstract
本发明实施例公开了一种任务处理方法、装置、设备及存储介质。所述方法包括:响应于用户的任务处理请求,接收用户发起的目标计算任务;从所述至少两个从属调度服务器中,选取目标从属调度服务器;向所述目标从属调度服务器发送所述目标计算任务,以指示所述目标从属调度服务器从连接的计算集群中选择目标计算集群,以通过所述目标计算集群中的主计算设备将所述目标计算任务分发给所述目标计算集群中的从属计算设备处理。采用本发明实施例的方案,能够大幅度降低了调度服务器的压力,实现了对大规模计算设备的调度,在接收到计算任务可以依次将接收到的计算任务分配到合适的从属计算设备进行处理。
Description
技术领域
本发明实施例涉及计算机技术领域,尤其涉及一种任务处理方法、装置、设备及存储介质。
背景技术
随着人工智能的兴起和视频监控的建设需求,以安防行业为例,安防行业以智能化、规模化和云边端融合的趋势不断发展,随着安防计算能力逐渐从中心向边缘、端进行延伸,导致无法“统管”这些计算资源。
目前,主要是将具备相同算法、相同芯片的各个计算设备管理起来,获取各个计算设备的CPU、GPU、内存等基础资源,形成统一的管理,然后根据负载分担策略调度合适的设备进行任务处理。然而,现在的项目建设呈现规模化发展,而现有的GPU调度系统无法应对大规模的设备调度能力,导致无法正常的应对接收到各个任务。
发明内容
鉴于上述问题,本发明实施例中提供了一种任务处理方法、装置、设备及存储介质,以实现在大规模的设备集群中及时地将响应的任务分配到对应的设备进行处理。
第一方面,本发明实施例中提供了一种任务处理方法,由调度中心的主调度服务器执行,所述主调度服务器连接有至少两个从属调度服务器;所述方法包括:
响应于用户的任务处理请求,接收用户发起的目标计算任务;
从所述至少两个从属调度服务器中,选取目标从属调度服务器;
向所述目标从属调度服务器发送所述目标计算任务,以指示所述目标从属调度服务器从连接的计算集群中选择目标计算集群,以通过所述目标计算集群中的主计算设备将所述目标计算任务分发给所述目标计算集群中的从属计算设备处理。
第二方面,本发明实施例中还提供了一种任务处理方法,由调度中心的从属调度服务器执行,所述从属调度服务器连接有一个主调度服务器,所述从属调度服务器连接至少两个计算集群;所述方法包括:
接收从连接的主调度服务器发送的目标计算任务;所述目标计算任务是所述主调度服务器响应于用户的任务处理请求,接收到的用户发起的计算任务;
从所述至少两个计算集群中,选取目标计算集群;
向所述目标计算集群的主计算设备发送所述目标计算任务,以指示所述目标计算集群中的主计算设备将所述目标计算任务分发给所述目标计算集群中的从属计算设备处理。
第三方面,本发明实施例中还提供了一种任务处理方法,由计算中心的计算集群中的主计算设备执行,主计算设备连接有至少两个从属计算设备;所述方法包括:
接收从目标从属调度服务器发送的目标计算任务;其中所述目标从属调度服务器连接所述主计算设备,且所述目标从属调度服务器由调度中心的主调度服务器从至少两个从属调度服务器中确定;所述目标计算任务是所述主调度服务器接收到用户发起的计算任务,并将接收的计算任务发送到所述目标从属调度服务器确定的;
向目标计算集群中的从属计算设备发送所述目标计算任务,指示所述目标计算集群中的从属计算设备处理所述目标计算任务;其中所述目标计算集群是由所述目标从属调度服务器从连接的至少两个计算集群中确定。
第四方面,本发明实施例中还提供了一种任务处理装置,配置于调度中心的主调度服务器,所述主调度服务器连接有至少两个从属调度服务器;所述装置包括:
任务响应接收模块,用于响应于用户的任务处理请求,接收用户发起的目标计算任务;
从属调度选取模块,用于从所述至少两个从属调度服务器中,选取目标从属调度服务器;
目标任务发送模块,用于向所述目标从属调度服务器发送所述目标计算任务,以指示所述目标从属调度服务器从连接的计算集群中选择目标计算集群,以通过所述目标计算集群中的主计算设备将所述目标计算任务分发给所述目标计算集群中的从属计算设备处理。
第五方面,本发明实施例中还提供了一种任务处理装置,配置于调度中心的从属调度服务器,所述从属调度服务器连接有一个主调度服务器,所述从属调度服务器连接至少两个计算集群;所述装置包括:
目标任务接收模块,用于接收从连接的主调度服务器发送的目标计算任务;所述目标计算任务是所述主调度服务器响应于用户的任务处理请求,接收到的用户发起的计算任务;
计算集群选取模块,用于从所述至少两个计算集群中,选取目标计算集群;
目标任务下发模块,用于向所述目标计算集群的主计算设备发送所述目标计算任务,以指示所述目标计算集群中的主计算设备将所述目标计算任务分发给所述目标计算集群中的从属计算设备处理。
第六方面,本发明实施例中还提供了一种任务处理装置,配置于计算中心的计算集群中的主计算设备,主计算设备连接有至少两个从属计算设备;所述装置包括:
下发任务接收模块,用于接收从目标从属调度服务器发送的目标计算任务;其中所述目标从属调度服务器连接所述主计算设备,且所述目标从属调度服务器由调度中心的主调度服务器从至少两个从属调度服务器中确定;所述目标计算任务是所述主调度服务器接收到用户发起的计算任务,并将接收的计算任务发送到所述目标从属调度服务器确定的;
下发任务转发模块,用于向目标计算集群中的从属计算设备发送所述目标计算任务,指示所述目标计算集群中的从属计算设备处理所述目标计算任务;其中所述目标计算集群是由所述目标从属调度服务器从连接的至少两个计算集群中确定。
第七方面,本发明实施例中还提供了一种电子设备,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本发明实施例中提供的任意所述的任务处理方法。
第四方面,本发明实施例中还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明实施例中提供的任意所述的任务处理方法。
本发明实施例中提供了一种任务处理方案,可以对调度中心的调度服务器进行层级部署为主调度服务器和从属调度服务器,以及对计算中心的计算设备进行分组部署,将计算中心的计算设备分配到不同的计算集群中,同时将每一计算集群中的计算设备分级部署为主计算设备和从属计算设备,通过扩展调度服务器的数量和采用一种多级调度机制,使得上一级的主调度服务器可以管理下一级的从属调度服务器,而每一从属调度服务器可以继续管理下一级的主计算设备,进而每一主计算设备可以继续管理下一级的从属计算设备,大幅度降低了调度服务器的压力,实现了对大规模计算设备的调度,在接收到计算任务可以依次将接收到的计算任务分配到合适的从属计算设备进行处理。
上述发明内容仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1是本发明实施例中提供的一种任务处理方法的流程图;
图2是本发明实施例中提供的一种调度服务器和计算设备之间的层级关系示意图;
图3是本发明实施例中提供的一种算法仓库的建设结构示意图;
图4是本发明实施例中提供的一种通信代理组件的实现流程结构;
图5是本发明实施例中提供的另一种任务处理方法的流程图;
图6是本发明实施例中提供的又一种任务处理方法的流程图;
图7是本发明实施例中提供的一种任务处理装置的结构示意图;
图8是本发明实施例中提供的另一种任务处理装置的流程图;
图9是本发明实施例中提供的又一种任务处理装置的流程图;
图10是本发明实施例中提供的一种主调度服务器的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
在更加详细地讨论示例性实施例之前,应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各项操作(或步骤)描述成顺序的处理,但是其中的许多操作(或步骤)可以被并行地、并发地或者同时实施。此外,各项操作的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。
图1是本发明实施例中提供的一种任务处理方法的流程图。本发明实施例可适用于在具有大规模计算设备中实现任务处理的情况,尤其是在具备大规模计算设备情况下实现对任务进行分配处理的情形。该任务处理方法可以由任务处理装置执行,该任务处理装置可以采用软件和/或硬件的方式实现,并可集成在任何具有网络通信功能的调度中心的主调度服务器上。如图1所示,本发明实施例中提供的任务处理方法具体包括以下步骤:
S110、响应于用户的任务处理请求,接收用户发起的目标计算任务。
在本实施例中,在总体的任务分配处理流程上,是由调度中心将接收到的计算任务分配到计算中心进行任务处理。图2是本发明实施例中提供的一种调度服务器和计算设备之间的层级关系示意图。参见图2,调度中心包含有多个调度服务器,比如GPU调度服务器,且将调度中心中包含的各个调度服务器分级部署为主调度服务器和从属调度服务器。可选地,每一个主调度服务器连接有多个从属调度服务器,每一个从属调度服务器受与其连接的上一级的主调度服务器进行统一调度,从而在调度中心实现计算任务的层级调度分配。
在本实施例中,调度中心的主调度服务器可以由kafka选举产生,当调度中心的主调度服务器出现故障后,可以由kafka再从调度中心的其他调度服务器中选举产生一个新的调度服务器作为主调度服务器。调度中心的主调度服务器统一对外提供服务接口,调度中心的各个从属调度服务器受主调度服务器的统一调度,从属调度服务器管理下面各计算设备。
在本实施例中,继续参见图2,计算中心包含大规模的计算设备,可以将计算中心中包含的各个计算设备依次划分到不同的计算集群中,实现计算中心中计算设备的分组。相应地,调度中心中的每一从属调度服务器可以连接计算中心的至少一个计算集群,保证各个从属调度服务器只允许管理调度与其具有连接关系的计算集群,而不能管理其他计算集群,从而可以降低调度中心中各调度服务器的压力,实现在计算中心中对大规模计算设备进行设备调度。
在本实施例中,继续参见图2,计算中心可能包含数量级的计算设备,即便将计算中心的计算设备划分到各个计算集群,每一个计算集群中也可能包含大量的计算设备,并且每一个从属调度服务器可能需要管理调度多个计算集群的各个计算设备,从而导致从属调度服务器的压力仍然非常大。为此,在对计算中心的计算设备进行分组,并划分到不同的计算集群后,可以对每一计算集群中的计算设备进行分级部署,具体将每一个计算机群中的计算设备分级为主计算设备和从属计算设备。可选地,每一个主计算设备连接有多个从属计算设备,每一个从属计算设备受与其连接的上一级的主计算设备进行统一调度,从而在计算中心实现计算任务的层级调度分配。
示例性地,以计算中心包含主计算设备和从属计算设备为例,由于计算中心中可能包含大量IPC、智能NVR、中心计算单元、PC等计算设备,因此计算设备先进行分组,如100台设备为一个计算集群,该计算集群的主计算设备由主调度服务器或者从属调度服务器根据各个计算设备的注册时间顺序选定,如将第一个注册的计算设备作为主计算设备,然后根据IP地址的排序,把余下99个计算设备作为从属计算设备,汇总到该主计算设备下面,这样100台计算设备的计算集群由此产生,计算中心的主计算设备负责管理调度该计算集群内的各个从属计算设备。
在本实施例中,经过上述度调度中心中各个调度服务器的分级部署和对计算中心中各个计算设备的分级部署,调度中心的主调度服务器实现管理调度与其连接的多个从属调度服务器,每一个从属调度服务器实现管理调度与其连接的多个计算集群的主计算设备,每一个计算集群的主计算设备实现管理调度与其连接的多个从属计算设备,实现从上至下的多层多级调度机制。
在本实施例中,以用户通过客户端向调度中心的主调度服务器发送任务处理请求发起一个计算任务进行详细说明。调度中心的主调度服务器可以响应用户在客户端触发的任务处理请求,接收用户通过客户端发送过来的目标计算任务。
S120、从主调度服务器连接的至少两个从属调度服务器中,选取目标从属调度服务器。
在本实施例中,主调度服务器接收到用户发起的目标计算任务后,不会对目标计算任务进行任务处理,而是将目标计算任务继续向下分配,以将该目标计算任务分配到其连接的从属调度服务器。考虑到主调度服务器连接有多个从属调度服务器,为此主调度服务器需要从连接的多个从属调度服务器中选取合适的从属调度服务器,作为目标从属调度服务器,以便将目标计算任务发送给目标从属调度服务器,进而目标调度服务器可以继续分配上述目标计算任务。
在本实施例的一种可选方式中,从至少两个从属调度服务器中,选取目标从属调度服务器,具体包括S1201~S1202:
S1201、确定主调度服务器连接的各从属调度服务器可调动的空闲计算资源。
在本实施方式中,主调度服务器连接有多个从属调度服务器,每一个从属调度服务器可以正常管理调度各自连接的计算集群,以使得各个计算集群进行正常的任务处理。然而,由于各从属调度服务器管理调度的各个计算集群的计算资源使用情况存在差异,使得各从属调度服务器自身所能调动的计算资源有所差异。因此,当主调服务器在向自身连接的从属调度服务器中下发目标计算任务时,并不是向任意从属调度服务器进行下发,而是需要考虑先确定各个从属调度服务器可调动的空闲计算资源,然后采用从属调度服务器可调动的空闲计算资源。
在本实施方式中,参见图2,每一个从属调度服务器可以连接有至少一个计算集群,而每一个计算集群中包括主计算设备和从属计算设备。在确定从属调度服务器可调动的空闲计算资源时,主调度服务器可以依据从自身连接的从属调度服务器获取的第一资源调度信息,来确定从属调度服务器可调动的空闲计算资源。其中,第一资源调度信息由从属调度服务器根据从主计算设备获取的第二资源调度信息确定的,第二资源调度信息由主计算设备从连接的从属计算设备获取的第三资源调度信息确定的。
下面对上述提到的第一资源调度信息、第二资源调度信息和第三资源调度信息的生成过程进行详细阐述。
具体地,对于每一个计算集群的从属计算设备而言,从属计算设备可以定期收集并统计自身的实际计算资源使用情况,并将自身的实际计算资源使用情况以第三资源调度信息发送至从属计算设备所在计算集群的主计算设备中。其中第三资源调度信息包括但不限于从属计算设备的CPU资源使用信息、GPU资源使用信息、内存资源使用信息、外部网络存储使用情况,以及算法内部的模型与参数信息中的至少一项。计算集群的主计算设备包含有针对第三资源调度信息的资源汇聚池,可以收集汇总与其连接的各个从属计算设备所上报的第三资源调度信息。进而,计算集群中的主计算设备可以依据各个从属计算设备上报的第三资源调度信息计算得到第二资源调度信息。其中第二资源调度信息可以反映当前主计算设备所能调动的空闲计算资源。
具体地,每一从属调度服务器连接的主计算设备可以通过向上接口将自身计算得到的第二资源调度信息上报到对应的从属调度服务器中,而从属调度服务器可以依据收集得到的第二资源调度信息计算得到第一资源调度信息,并将第一资源调度信息上传至主调度服务器;相应地,主调度服务器可以将连接的各个从属调度服务器上报的第一资源调度信息写入预设的资源数据库列表,供日后针对目标计算任务选取目标从属调度服务器的依据。
S1202、依据至少两个从属调度服务器可调动的空闲计算资源,从至少两个从属调度服务器中选取目标从属调度服务器。
在本实施方式中,可选地,主调度服务器在确定自身连接的各从属调度服务器的可调动的空闲计算资源后,可以依据各从属调度服务器的可调动的空闲计算资源对各个从属调度服务器进行筛选,从中选择可调动空闲计算资源比较多的从属调度服务器作为目标从属调度服务器。
S130、向目标从属调度服务器发送目标计算任务,以指示目标从属调度服务器从连接的计算集群中选择目标计算集群,以通过目标计算集群中的主计算设备将目标计算任务分发给目标计算集群中的从属计算设备处理。
在本实施例中,主调度服务器在从自身连接的多个从属调度服务器中确定目标从属调度服务器后,可以将接收到的用户发起的目标计算任务向目标从属调度服务器发送。这样的话,目标从属调度服务器就可以继续从连接的计算集群中选择目标计算集群,以便以通过目标计算集群中的主计算设备将目标计算任务分发给目标计算集群中的从属计算设备处理。
在本实施例的一种可选方式中,在向目标从属调度服务器发送目标计算任务之前,还包括以下步骤S1001~S1002:
S1001、依据目标计算任务的任务特征,确定目标计算任务要使用的目标计算算法。
在本实施方式中,不同的计算任务所需要的计算算法有所差异,为了方便计算中心的从属计算设备能够快速处理目标计算任务,主调度服务器在将目标计算任务向目标从属调度服务器发送之前,可以确定处理目标计算任务时所要使用的目标计算算法。可选地,主调度服务器可以根据目标计算任务的任务特征在预设的算法仓库中查找适配目标计算任务的计算算法,并将查找得到适配的计算算法作为处理目标计算任务时所要使用的目标计算算法。
在本实施方式中,图3是本发明实施例中提供的一种算法仓库的建设结构示意图。参见图3,算法仓库中包括但不限于示例的人脸识别算法、视频结构化算法、人体识别算法、车辆分析算法、全结构化算法、行为分析算法、人数统计算法以及视频摘要算法。算法仓库中集合了各厂家的不同算法和不同算法版本。可选地,算法仓库存储在调度中心的调度服务器的硬盘上,且在调度服务器的硬盘上形成多副本,增加算法仓库的可靠性。
在本实施方式中,调度中心的主调度服务器或从属调度服务器可以提供算法插件的上传接口,不同厂家的算法或不同版本的算法插件可以通过调度服务器提供的算法插件的上传接口上传到算法仓库。当算法仓库中的算法版本更新后,可以支持算法的替换。
S1002、向目标从属调度服务器发送目标计算算法的算法存储信息,指示目标从属调度服务器向目标计算集群中的主计算设备发送算法存储信息,以通过目标计算集群中的主计算设备将算法存储信息发给目标计算集群中的从属计算设备,供目标计算集群中的从属计算设备依据算法存储信息加载目标计算算法。
在本实施方式中,考虑到主调度服务器需要接收大量计算任务并下发,而不仅限于目标计算任务,而且目标计算算法的数据量比较大。如果主调度服务器直接将目标计算算法向从属调度服务器下发,必然会占用一定的网络资源,不仅会造成主调度服务器下发目标计算任务到从属调度服务器的速度减缓,并且还会影响主调度服务器对其他计算任务的下发操作。基于上述考虑,主调度服务器在确定目标计算任务要使用的目标计算算法后,不会将目标计算算法直接向目标从属调度服务器下发,而是选择将目标计算算法的算法存储信息向目标从属调度服务器下发,以便快速地向下传送目标计算算法的相关信息。其中算法存储信息是指计算任务需要的算法在算法仓库中的存储路径信息。
在本实施方式中,目标从属调度服务器可以将目标计算算法的算法存储信息向目标计算集群中的主计算设备发送,目标计算集群中的主计算设备可以接收目标从属调度服务器下发的目标计算任务的算法存储信息,并将接收到目标计算算法的算法存储信息向其连接的从属计算设备发送。从属计算设备可以接收主计算设备下发的目标计算算法的算法存储信息,并依据算法存储信息加载目标计算算法。可选地,从属计算设备可以依据算法存储信息从算法仓库下载对应的目标计算算法的算法插件,并加载目标计算算法的算法插件,以便在加载目标计算算法后对目标计算任务进行处理。采用上述方式,通过算法仓库的使用,兼容多厂家、多版本的算法,可以根据计算任务的实际需求来选取合适的计算算法,符合业界趋势,也方便算法的快速更新;同时,各级设备在下发目标计算算法时,并不是下发计算算法的算法插件,而是将计算算法的算法存储信息进行下发,避免由于下发数据量过大的算法插件,造成网络拥堵。
本发明实施例中提供了一种任务处理方案,可以对调度中心的调度服务器进行层级部署为主调度服务器和从属调度服务器,以及对计算中心的计算设备进行分组部署,将计算中心的计算设备分配到不同的计算集群中,同时将每一计算集群中的计算设备分级部署为主计算设备和从属计算设备,通过扩展调度服务器的数量和采用一种多级调度机制,使得上一级的主调度服务器可以管理下一级的从属调度服务器,而每一从属调度服务器可以继续管理下一级的主计算设备,进而每一主计算设备可以继续管理下一级的从属计算设备,降低了调度服务器的压力,实现对大规模调度计算设备,在接收到计算任务可以依次将接收到的计算任务分配到合适的从属计算设备进行处理;并且,通过将计算设备分组和分级后,综合计算中心的资源信息,统一发给调度服务器,通过降低调度服务器的压力实现前端计算设备的大规模部署和调度。
在上述实施例的基础上,可选地,本发明实施例可以与上述一个或者多个实施例中各个可选方案结合。本发明实施例中的主调度服务器、从属调度服务器、主计算设备和从属计算设备均配置关联有通信代理组件,通信代理组件能够屏蔽异构设备间的差异,且通信代理组件用于执行异构设备间的数据传输。
在本实施例中,图4是本发明实施例中提供的一种通信代理组件的实现流程结构。参见图4,通信代理组件是一个轻量化的软件,能够安装在各类型的设备上,包括X86服务器、嵌入式设备(NVR/IPC)、PC等,主要用于实现自下而上的资源信息收集和自上而下的任务转发。通信代理组件主要由任务处理模块和资源收集模块组成,向下面向计算中心的各类计算设备,从而屏蔽各操作系统的差异形成统一接口,向上面向调度中心的各类调度服务器,实现向各类调度服务器提供标准化的接口。
在本实施例中,调度中心的主调度服务器和从属调度服务器关联设置有通信代理组件,同时计算中心的主计算设备和从属计算设备均配置关联有通信代理组件,从而可以通过通信代理组件实现屏蔽异构设备间的差异,且通信代理组件用于执行异构设备间的数据传输。主调度服务器可以依靠通信代理组件将目标计算任务从主调度服务器转发至从属调度服务器,从属调度服务器可以依靠通信代理组件将目标计算任务从从属调度服务器转发至其连接的计算中心的主计算设备;主计算设备可以依靠通信代理组件将目标计算任务从主计算设备转发至从属计算设备。通过通信代理组件可以实现异构设备间的各类资源调度信息的上报操作,具体实现从属计算设备上报第三资源调度信息到主计算设备、主计算设备上报第二资源调度信息到从属调度服务器和从属调度服务器上报第一资源调度信息到主调度服务器等过程。
采用上述方式的好处在于,通过通信代理组件的方式,可以实现空闲计算资源信息的上报和计算任务的下达,并且通过通信代理组件可以在底层屏蔽各系统的差异,能够适配不同的系统架构,并通过屏蔽不同系统的接口,抽象成统一调度接口,实现异构设备的统一接入和调度。
图5是本发明实施例中提供的另一种任务处理方法的流程图。本发明实施例可以与上述一个或者多个实施例中各个可选方案结合。本发明实施例可适用于在具有大规模计算设备中实现任务处理的情况,尤其是在具备大规模计算设备情况下实现对任务进行分配处理的情形。该任务处理方法可以由任务处理装置执行,该任务处理装置可以采用软件和/或硬件的方式实现,并可集成在任何具有网络通信功能的调度中心的从属调度服务器上。如图5所示,本发明实施例中提供的任务处理方法包括以下步骤:
S510、接收从连接的主调度服务器发送的目标计算任务;目标计算任务是主调度服务器响应于用户的任务处理请求,接收到的用户发起的计算任务。
在本实施例中,继续参见图2,主调度服务器可以响应用户的任务处理请求,接收用户发起的计算任务,并将接收到的计算任务作为目标计算任务。相应地,主调度服务器可以根据需求将目标计算任务发送至选中的从属调度服务器。在当前的从属调度服务器为主调度服务器从连接的多个从属调度服务器中选中的目标从属调度服务器时,当前的从属调度服务器可以接收从连接的主调度服务器发送的目标计算任务。
在本实施例中,可选地,调度中心的主调度服务器和主调度服务器连接的从属调度服务器配置关联有通信代理组件,主调度服务器可以将目标计算任务发送至通信代理组件,主调度服务器的通信代理组件可以将目标计算任务转发至从属调度服务器的通信代理组件,进而从属调度服务器的通信代理组件再将目标计算任务转发给从属调度服务器本身。其中关于通信代理组件的具体描述信息可以参见前述实施例的详细介绍,这里不再赘述。
S520、从从属调度服务器连接的至少两个计算集群中,选取目标计算集群。
在本实施例中,调度中心的每一个从属调度服务器可以连接至少一个计算集群。当从属调度服务器连接有一个计算集群时,可以直接将唯一的计算集群作为目标计算集群;当从属调度服务器连接有至少两个计算集群时,需要从至少两个计算集群中选取合适的目标计算集群。
在本实施例中,从从属调度服务器连接的至少两个计算集群中,选取目标计算集群,具体包括:从属调度服务器可以确定连接的计算集群可调动的空闲计算资源,并依据至少两个计算集群可调动的空闲计算资源,从至少两个计算集群中选取目标计算集群。
在本实施例中,可选地,从属调度服务器确定连接的计算集群可调动的空闲计算资源,具体包括为:从属调度服务器根据从该计算集群的主计算设备获取的第二资源调度信息,确定计算集群可调动的空闲计算资源;其中,第二资源调度信息由主计算设备从连接的从属计算设备获取的第三资源调度信息确定的。可选地,第三资源调度信息包括从属计算设备的CPU资源使用信息、GPU资源使用信息、内存资源使用信息,以及算法内部的模型与参数信息中的至少一项。需要说明的是,具体第二资源调度信息和第三资源调度信息的描述信息可以参见前述实施例的详细介绍,这里不再赘述。
S530、向目标计算集群的主计算设备发送目标计算任务,以指示目标计算集群中的主计算设备将目标计算任务分发给目标计算集群中的从属计算设备处理。
在本实施例中,计算中心的主计算设备和从属计算设备也配置关联有通信代理组件。从属调度服务器可以将目标计算任务发送至从属调度服务器的通信代理组件上,从属调度服务器的通信代理组件可以再将目标计算任务转发至目标计算集群的主计算设备所配置关联的通信组件上,以通过该通信代理组件转发至主计算设备。主计算设备可以通过自身的通信代理组件将目标计算任务转发给与其连接的从属计算设备,相应地,从属计算设备可以接收到该目标计算任务,并对该目标计算任务进行处理。
在本实施例中,从属调度服务器在接收连接的主调度服务器发送的目标计算任务时,还需要接收主调度服务器发送的目标计算任务需要的目标计算算法的算法存储信息。其中,该目标计算任务是主调度服务器依据接收到用户发起的计算任务确定的。从属调度服务器可以将接收到的目标计算算法的算法存储信息与目标计算任务均发送至目标计算集群的主计算设备,进而主计算设备可以将目标计算算法的算法存储信息与目标计算任务再转发至对应的从属计算设备,供目标计算集群中的从属计算设备依据算法存储信息指示的加载路径加载目标计算算法,并在加载目标计算算法后处理该目标计算任务。可选地,目标计算算法的算法存储信息的下发过程可以参照目标计算任务的下发过程,也采用通信代理组件进行算法存储信息的转发,具体采用通信代理组件的好处可参见前述实施例的详细描述。
本发明实施例中提供了一种任务处理方案,可以对调度中心的调度服务器进行层级部署为主调度服务器和从属调度服务器,以及对计算中心的计算设备进行分组部署,将计算中心的计算设备分配到不同的计算集群中,同时将每一计算集群中的计算设备分级部署为主计算设备和从属计算设备,通过扩展调度服务器的数量和采用一种多级调度机制,使得上一级的主调度服务器可以管理下一级的从属调度服务器,而每一从属调度服务器可以继续管理下一级的主计算设备,进而每一主计算设备可以继续管理下一级的从属计算设备,降低了调度服务器的压力,实现对大规模调度计算设备,在接收到计算任务可以依次将接收到的计算任务分配到合适的从属计算设备进行处理。
图6是本发明实施例中提供的又一种任务处理方法的流程图。本发明实施例可以与上述一个或者多个实施例中各个可选方案结合。本发明实施例可适用于在具有大规模计算设备中实现任务处理的情况,尤其是在具备大规模计算设备情况下实现对任务进行分配处理的情形。该任务处理方法可以由任务处理装置执行,该任务处理装置可以采用软件和/或硬件的方式实现,并可集成在任何具有网络通信功能的计算中心的主计算设备上。如图6所示,本发明实施例中提供的任务处理方法包括以下步骤:
S610、接收从目标从属调度服务器发送的目标计算任务;其中目标从属调度服务器连接主计算设备,且目标从属调度服务器由调度中心的主调度服务器从至少两个从属调度服务器中确定;目标计算任务是所述主调度服务器接收到用户发起的计算任务,并将接收的计算任务发送到目标从属调度服务器确定的。
在本实施例中,本实施例的方法主要由计算中心的计算集群中的主计算设备来执行,且主计算设备连接有至少两个从属计算设备。计算中心的主计算设备可以接收从目标从属调度服务器发送的目标计算任务。其中具体目标计算任务和目标从属调度服务器的确定过程可以参见前述实施例中主调度服务器确定目标计算任务和确定目标从属调度服务器的详细描述过程,这里不再赘述。
S620、向目标计算集群中的从属计算设备发送目标计算任务,指示目标计算集群中的从属计算设备处理目标计算任务;其中目标计算集群是由目标从属调度服务器从连接的至少两个计算集群中确定。
在本实施例中,目标计算集群中的主计算设备连接有多个从属计算设备,主计算设备在向其连接的从属计算设备发送目标计算任务时,并不是向其连接的任意从属计算设备发送,而是需要从其连接的多个从属计算设备中选取合适的从属计算设备进行发送。具体为:从目标计算集群中的主计算设备连接的至少两个从属计算设备,选取目标从属计算设备,并向目标从属计算设备发送目标计算任务。
在本实施例中,从目标计算集群中的主计算设备连接的至少两个从属计算设备,选取目标从属计算设备,包括:主计算设备确定从属计算设备可调动的空闲计算资源,并依据至少两个从属计算设备可调动的空闲计算资源,从至少两个从属计算设备中选取目标从属计算设备。可选地,主计算设备确定从属计算设备可调动的空闲计算资源包括:根据从目标计算集群的从属计算设备获取的第三资源调度信息,确定从属计算设备可调动的空闲计算资源。其中,第三资源调度信息包括所述从属计算设备的CPU资源使用信息、GPU资源使用信息、内存资源使用信息,以及算法内部的模型与参数信息中的至少一项。
在本实施例中,主计算设备在接收从目标从属调度服务器发送的目标计算任务之前,还包括:主计算设备接收从目标从属调度服务器发送的目标计算算法的算法存储信息;向目标计算集群的从属计算设备发送目标计算算法的算法存储信息,以指示从属计算设备执行如下:依据目标计算算法的算法存储信息从预设的算法仓库中加载目标计算算法,供采用目标计算算法执行任务。其中目标计算算法是由主调度服务器依据用户发起的目标计算任务的任务特征,所确定的目标计算任务要使用的算法。
在本实施例中,可选地,主调度服务器、从属调度服务器、主计算设备和从属计算设备均配置关联有通信代理组件,通信代理组件能够屏蔽异构设备间的差异,且通信代理组件用于执行异构设备间的数据传输。
在本实施例中,计算集群中的主计算设备或从属计算设备中可以包含一个或多个GPU处理器。当从属计算设备中包含多个GPU处理器时,从属计算设备可以从多个GPU处理器中选取至少一个空闲的GPU处理器对目标计算任务进行处理。CPU处理器在处理目标计算任务时,会定期上报目标计算任务的任务处理进度至从属计算设备。相应地,从属计算设备会将目标计算任务的任务处理进度,通过通信代理组件依次经过主计算设备、从属调度服务器,上报至主调度服务器,以便主调度服务器将任务处理进度反馈给客户端。
本发明实施例中提供了一种任务处理方案,可以对调度中心的调度服务器进行层级部署为主调度服务器和从属调度服务器,以及对计算中心的计算设备进行分组部署,将计算中心的计算设备分配到不同的计算集群中,同时将每一计算集群中的计算设备分级部署为主计算设备和从属计算设备,通过扩展调度服务器的数量和采用一种多级调度机制,使得上一级的主调度服务器可以管理下一级的从属调度服务器,而每一从属调度服务器可以继续管理下一级的主计算设备,进而每一主计算设备可以继续管理下一级的从属计算设备,降低了调度服务器的压力,实现对大规模调度计算设备,在接收到计算任务可以依次将接收到的计算任务分配到合适的从属计算设备进行处理。
图7是本发明实施例中提供的一种任务处理装置的结构示意图。本发明实施例可适用于在具有大规模计算设备中实现任务处理的情况,尤其是在具备大规模计算设备情况下实现对任务进行分配处理的情形。该任务处理装置可以采用软件和/或硬件的方式实现,并可集成在任何具有网络通信功能的调度中心的主调度服务器上。本发明实施例中提供的任务处理装置配置于调度中心的主调度服务器,主调度服务器连接有至少两个从属调度服务器。如图7所示,本发明实施例中提供的任务处理装置具体包括:任务响应接收模块710、从属调度选取模块720和目标任务发送模块730。其中:
任务响应接收模块710,用于响应于用户的任务处理请求,接收用户发起的目标计算任务;
从属调度选取模块720,用于从所述至少两个从属调度服务器中,选取目标从属调度服务器;
目标任务发送模块730,用于向所述目标从属调度服务器发送所述目标计算任务,以指示所述目标从属调度服务器从连接的计算集群中选择目标计算集群,以通过所述目标计算集群中的主计算设备将所述目标计算任务分发给所述目标计算集群中的从属计算设备处理。
在上述实施例可选方案的基础上,可选地,从属调度选取模块720包括:
从属调度计算资源确定单元,用于确定所述从属调度服务器可调动的空闲计算资源;
从属调度选取单元,用于依据所述至少两个从属调度服务器可调动的空闲计算资源,从所述至少两个从属调度服务器中选取目标从属调度服务器。
在上述实施例可选方案的基础上,可选地,所述从属调度服务器连接的计算集群中包括主计算设备和从属计算设备;
相应地,所述从属调度计算资源确定单元用于:根据从所述从属调度服务器获取的第一资源调度信息,确定所述从属调度服务器可调动的空闲计算资源;
其中,所述第一资源调度信息由所述从属调度服务器根据从主计算设备获取的第二资源调度信息确定的;所述第二资源调度信息由所述主计算设备从连接的所述从属计算设备获取的第三资源调度信息确定的。
在上述实施例可选方案的基础上,可选地,所述装置还包括:
计算算法确定模块740,用于依据所述目标计算任务的任务特征,确定所述目标计算任务要使用的目标计算算法;
计算算法发送模块750,用于向所述目标从属调度服务器发送所述目标计算算法的算法存储信息,指示所述目标从属调度服务器向所述目标计算集群中的主计算设备发送所述算法存储信息,以通过所述目标计算集群中的主计算设备将所述算法存储信息发给所述目标计算集群中的从属计算设备,供所述目标计算集群中的从属计算设备依据所述算法存储信息加载所述目标计算算法。
在上述实施例可选方案的基础上,可选地,所述第三资源调度信息包括所述从属计算设备的CPU资源使用信息、GPU资源使用信息、内存资源使用信息,以及算法内部的模型与参数信息中的至少一项。
在上述实施例可选方案的基础上,可选地,主调度服务器、从属调度服务器、主计算设备和从属计算设备均配置关联有通信代理组件,所述通信代理组件能够屏蔽异构设备间的差异,且所述通信代理组件用于执行异构设备间的数据传输。
本发明实施例中所提供的配置于主调度服务器的任务处理装置可执行上述本发明任意实施例中所提供的应用于主调度服务器的任务处理方法,具备执行该任务处理方法相应的功能和有益效果,未在上述实施例中详尽描述的技术细节,可参见本申请任意实施例中所提供的任务处理方法。
图8是本发明实施例中提供的另一种任务处理装置的流程图。本发明实施例可以与上述一个或者多个实施例中各个可选方案结合。该任务处理装置可以采用软件和/或硬件的方式实现,并可集成在任何具有网络通信功能的调度中心的从属调度服务器上。本发明实施例中提供的任务处理装置配置于调度中心的从属调度服务器执行,所述从属调度服务器连接有一个主调度服务器,所述从属调度服务器连接至少两个计算集群。如图8所示,本发明实施例中提供的任务处理装置具体包括:目标任务接收模块810、计算集群选取模块820和目标任务下发模块830。其中:
目标任务接收模块810,用于接收从连接的主调度服务器发送的目标计算任务;所述目标计算任务是所述主调度服务器响应于用户的任务处理请求,接收到的用户发起的计算任务;
计算集群选取模块820,用于从所述至少两个计算集群中,选取目标计算集群;
目标任务下发模块830,用于向所述目标计算集群的主计算设备发送所述目标计算任务,以指示所述目标计算集群中的主计算设备将所述目标计算任务分发给所述目标计算集群中的从属计算设备处理。
在上述实施例可选方案的基础上,可选地,计算集群选取模块820包括:
集群计算资源确定单元,用于确定连接的所述计算集群可调动的空闲计算资源;
计算集群选取单元,用于依据所述至少两个计算集群可调动的空闲计算资源,从所述至少两个计算集群中选取目标计算集群。
在上述实施例可选方案的基础上,可选地,集群计算资源确定单元用于:根据从所述计算集群的主计算设备获取的第二资源调度信息,确定所述计算集群可调动的空闲计算资源;
其中,所述第二资源调度信息由所述主计算设备从连接的所述从属计算设备获取的第三资源调度信息确定的。
在上述实施例可选方案的基础上,可选地,所述第三资源调度信息包括所述从属计算设备的CPU资源使用信息、GPU资源使用信息、内存资源使用信息,以及算法内部的模型与参数信息中的至少一项。
在上述实施例可选方案的基础上,可选地,主调度服务器、从属调度服务器、主计算设备和从属计算设备均配置关联有通信代理组件,所述通信代理组件能够屏蔽异构设备间的差异,且所述通信代理组件用于执行异构设备间的数据传输。
本发明实施例中所提供的配置于从属调度服务器的任务处理装置可执行上述本发明任意实施例中所提供的应用于从属调度服务器的任务处理方法,具备执行该任务处理方法相应的功能和有益效果,未在上述实施例中详尽描述的技术细节,可参见本申请任意实施例中所提供的任务处理方法。
图9是本发明实施例中提供的又一种任务处理装置的流程图。本发明实施例可以与上述一个或者多个实施例中各个可选方案结合。该任务处理装置可以采用软件和/或硬件的方式实现,并可集成在任何具有网络通信功能的计算中心的主计算设备上。本发明实施例中提供的任务处理装置配置于计算中心的计算集群中的主计算设备,所述主计算设备连接有至少两个从属计算设备。如图9所示,本发明实施例中提供的任务处理装置包括:下发任务接收模块910和下发任务转发模块920。其中:
下发任务接收模块910,用于接收从目标从属调度服务器发送的目标计算任务;其中所述目标从属调度服务器连接所述主计算设备,且所述目标从属调度服务器由调度中心的主调度服务器从至少两个从属调度服务器中确定;所述目标计算任务是所述主调度服务器接收到用户发起的计算任务,并将接收的计算任务发送到所述目标从属调度服务器确定的;
下发任务转发模块920,用于向目标计算集群中的从属计算设备发送所述目标计算任务,指示所述目标计算集群中的从属计算设备处理所述目标计算任务;其中所述目标计算集群是由所述目标从属调度服务器从连接的至少两个计算集群中确定。
在上述实施例可选方案的基础上,可选地,下发任务转发模块920用于:从所述目标计算集群中的主计算设备连接的至少两个从属计算设备,选取目标从属计算设备,并向所述目标从属计算设备发送所述目标计算任务。
在上述实施例可选方案的基础上,可选地,下发任务转发模块920包括:
从属设备调度资源确定单元,用于确定所述从属计算设备可调动的空闲计算资源;
从属设备选取单元,用于依据所述至少两个从属计算设备可调动的空闲计算资源,从所述至少两个从属计算设备中选取目标从属计算设备。
在上述实施例可选方案的基础上,可选地,从属设备调度资源确定单元用于:根据从所述目标计算集群的从属计算设备获取的第三资源调度信息,确定所述从属计算设备可调动的空闲计算资源;
其中,所述第三资源调度信息包括所述从属计算设备的CPU资源使用信息、GPU资源使用信息、内存资源使用信息,以及算法内部的模型与参数信息中的至少一项。
在上述实施例可选方案的基础上,可选地,所述装置还包括:
下发算法存储信息接收模块930,用于接收从所述目标从属调度服务器发送的目标计算算法的算法存储信息;其中所述目标计算算法是由所述主调度服务器依据用户发起的目标计算任务的任务特征,所确定的所述目标计算任务要使用的算法;
下发算法存储信息转发模块940,用于向所述目标计算集群的从属计算设备发送所述目标计算算法的算法存储信息,以指示从属计算设备执行如下:依据所述目标计算算法的算法存储信息从预设的算法仓库中加载所述目标计算算法,供采用所述目标计算算法执行任务。
在上述实施例可选方案的基础上,可选地,主调度服务器、从属调度服务器、主计算设备和从属计算设备均配置关联有通信代理组件,所述通信代理组件能够屏蔽异构设备间的差异,且所述通信代理组件用于执行异构设备间的数据传输。
本发明实施例中所提供的配置于主计算设备的任务处理装置可执行上述的本发明任意实施例中所提供的应用于主计算设备的任务处理方法,具备执行该任务处理方法相应的功能和有益效果,未在上述实施例中详尽描述的技术细节,可参见本申请任意实施例中所提供的任务处理方法。
图10是本发明实施例中提供的一种主调度服务器的结构示意图。如图10所示结构,本发明实施例中提供的主调度服务器包括:一个或多个处理器1010和存储装置1020;该主调度服务器中的处理器1010可以是一个或多个,图10中以一个处理器1010为例;存储装置1020用于存储一个或多个程序;所述一个或多个程序被所述一个或多个处理器1010执行,使得所述一个或多个处理器1010实现如本发明实施例中任一项所述的应用于主调度服务器的任务处理方法。
该主调度服务器还可以包括:输入装置1030和输出装置1040。
该主调度服务器中的处理器1010、存储装置1020、输入装置1030和输出装置1040可以通过总线或其他方式连接,图10中以通过总线连接为例。
该主调度服务器中的存储装置1020作为一种计算机可读存储介质,可用于存储一个或多个程序,所述程序可以是软件程序、计算机可执行程序以及模块,如本发明实施例中所提供的应用于主调度服务器的任务处理方法对应的程序指令/模块。处理器1010通过运行存储在存储装置1020中的软件程序、指令以及模块,从而执行主调度服务器的各种功能应用以及数据处理,即实现上述方法实施例中应用于主调度服务器的任务处理方法。
存储装置1020可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据主调度服务器的使用所创建的数据等。此外,存储装置1020可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储装置1020可进一步包括相对于处理器1010远程设置的存储器,这些远程存储器可以通过网络连接至设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置1030可用于接收输入的数字或字符信息,以及产生与主调度服务器的用户设置以及功能控制有关的键信号输入。输出装置1040可包括显示屏等显示设备。
并且,当上述主调度服务器所包括一个或者多个程序被所述一个或者多个处理器1010执行时,程序进行如下操作:
响应于用户的任务处理请求,接收用户发起的目标计算任务;
从所述至少两个从属调度服务器中,选取目标从属调度服务器;
向所述目标从属调度服务器发送所述目标计算任务,以指示所述目标从属调度服务器从连接的计算集群中选择目标计算集群,以通过所述目标计算集群中的主计算设备将所述目标计算任务分发给所述目标计算集群中的从属计算设备处理。
当然,本领域技术人员可以理解,当上述主调度服务器所包括一个或者多个程序被所述一个或者多个处理器1010执行时,程序还可以进行本发明任意实施例中所提供的应用于主调度服务器的任务处理方法中的相关操作。
此外,本发明实施例中还提供了一种从属调度服务器,其包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明实施例中所提供的应用于从属调度服务器的任务处理方法,包括:
接收从连接的主调度服务器发送的目标计算任务;所述目标计算任务是所述主调度服务器响应于用户的任务处理请求,接收到的用户发起的计算任务;
从所述至少两个计算集群中,选取目标计算集群;
向所述目标计算集群的主计算设备发送所述目标计算任务,以指示所述目标计算集群中的主计算设备将所述目标计算任务分发给所述目标计算集群中的从属计算设备处理。
当然,本领域技术人员可以理解,处理器还可以实现本发明任意实施例中所提供的应用于从属调度服务器的任务处理方法中的相关操作。该从属调度服务器的硬件结构以及功能可参见前述实施例中图10所示的主调度服务器的相关内容解释。
此外,本发明实施例中还提供了一种主计算设备,其包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明实施例中所提供的应用于计算中心的主计算设备的任务处理方法,包括:
接收从目标从属调度服务器发送的目标计算任务;其中所述目标从属调度服务器连接所述主计算设备,且所述目标从属调度服务器由调度中心的主调度服务器从至少两个从属调度服务器中确定;所述目标计算任务是所述主调度服务器接收到用户发起的计算任务,并将接收的计算任务发送到所述目标从属调度服务器确定的;
向目标计算集群中的从属计算设备发送所述目标计算任务,指示所述目标计算集群中的从属计算设备处理所述目标计算任务;其中所述目标计算集群是由所述目标从属调度服务器从连接的至少两个计算集群中确定。
当然,本领域技术人员可以理解,处理器还可以实现本发明任意实施例中所提供的应用于主计算设备的任务处理方法中的相关操作。该主计算设备的硬件结构以及功能可参见前述实施例中图10所示的主调度服务器的内容解释。
本发明实施例中提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时用于执行应用于主调度服务器的任务处理方法,该方法包括:
响应于用户的任务处理请求,接收用户发起的目标计算任务;
从所述至少两个从属调度服务器中,选取目标从属调度服务器;
向所述目标从属调度服务器发送所述目标计算任务,以指示所述目标从属调度服务器从连接的计算集群中选择目标计算集群,以通过所述目标计算集群中的主计算设备将所述目标计算任务分发给所述目标计算集群中的从属计算设备处理。
可选的,该程序被处理器执行时还可以用于执行本发明任意实施例中所提供的应用于主调度服务器的任务处理方法。
此外,本发明实施例中提供了另一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时用于执行应用于从属调度服务器的任务处理方法,该任务处理方法包括:
接收从连接的主调度服务器发送的目标计算任务;所述目标计算任务是所述主调度服务器响应于用户的任务处理请求,接收到的用户发起的计算任务;
从所述至少两个计算集群中,选取目标计算集群;
向所述目标计算集群的主计算设备发送所述目标计算任务,以指示所述目标计算集群中的主计算设备将所述目标计算任务分发给所述目标计算集群中的从属计算设备处理。
可选的,该程序被处理器执行时还可以用于执行本发明任意实施例中所提供的应用于从属调度服务器的任务处理方法。
此外,本发明实施例中提供了又一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时用于执行应用于主计算设备的任务处理方法,该任务处理方法包括:
接收从目标从属调度服务器发送的目标计算任务;其中所述目标从属调度服务器连接所述主计算设备,且所述目标从属调度服务器由调度中心的主调度服务器从至少两个从属调度服务器中确定;所述目标计算任务是所述主调度服务器接收到用户发起的计算任务,并将接收的计算任务发送到所述目标从属调度服务器确定的;
向目标计算集群中的从属计算设备发送所述目标计算任务,指示所述目标计算集群中的从属计算设备处理所述目标计算任务;其中所述目标计算集群是由所述目标从属调度服务器从连接的至少两个计算集群中确定。
可选的,该程序被处理器执行时还可以用于执行本发明任意实施例中所提供的应用于主计算设备的任务处理方法。
本发明实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(Random AccessMemory,RAM)、只读存储器(Read Only Memory,ROM)、可擦式可编程只读存储器(ErasableProgrammable Read Only Memory,EPROM)、闪存、光纤、便携式CD-ROM、光存储器件、磁存储器件、或者上述的任意合适的组合。计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于:电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、无线电频率(RadioFrequency,RF)等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)——连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (15)
1.一种任务处理方法,其特征在于,由调度中心的主调度服务器执行,所述主调度服务器连接有至少两个从属调度服务器;所述方法包括:
响应于用户的任务处理请求,接收用户发起的目标计算任务;
从所述至少两个从属调度服务器中,选取目标从属调度服务器;
向所述目标从属调度服务器发送所述目标计算任务,以指示所述目标从属调度服务器从连接的计算集群中选择目标计算集群,以通过所述目标计算集群中的主计算设备将所述目标计算任务分发给所述目标计算集群中的从属计算设备处理;
其中,所述从属调度服务器受与其连接的上一级的主调度服务器进行统一调度。
2.根据权利要求1所述的方法,其特征在于,从所述至少两个从属调度服务器中,选取目标从属调度服务器,包括:
确定所述从属调度服务器可调动的空闲计算资源;
依据所述至少两个从属调度服务器可调动的空闲计算资源,从所述至少两个从属调度服务器中选取目标从属调度服务器。
3.根据权利要求2所述的方法,其特征在于,所述从属调度服务器连接的计算集群中包括主计算设备和从属计算设备;
相应地,所述确定所述从属调度服务器可调动的空闲计算资源,包括:
根据从所述从属调度服务器获取的第一资源调度信息,确定所述从属调度服务器可调动的空闲计算资源;
其中,所述第一资源调度信息由所述从属调度服务器根据从主计算设备获取的第二资源调度信息确定的;所述第二资源调度信息由所述主计算设备从连接的所述从属计算设备获取的第三资源调度信息确定的。
4.根据权利要求1所述的方法,其特征在于,在向所述目标从属调度服务器发送所述目标计算任务之前,还包括:
依据所述目标计算任务的任务特征,确定所述目标计算任务要使用的目标计算算法;
向所述目标从属调度服务器发送所述目标计算算法的算法存储信息,指示所述目标从属调度服务器向所述目标计算集群中的主计算设备发送所述算法存储信息,以通过所述目标计算集群中的主计算设备将所述算法存储信息发给所述目标计算集群中的从属计算设备,供所述目标计算集群中的从属计算设备依据所述算法存储信息加载所述目标计算算法。
5.根据权利要求1-4中任一所述的方法,其特征在于,主调度服务器、从属调度服务器、主计算设备和从属计算设备均配置关联有通信代理组件,所述通信代理组件能够屏蔽异构设备间的差异,且所述通信代理组件用于执行异构设备间的数据传输。
6.一种任务处理方法,其特征在于,由调度中心的从属调度服务器执行,所述从属调度服务器连接有一个主调度服务器,所述从属调度服务器连接至少两个计算集群;所述方法包括:
接收从连接的主调度服务器发送的目标计算任务;所述目标计算任务是所述主调度服务器响应于用户的任务处理请求,接收到的用户发起的计算任务;
从所述至少两个计算集群中,选取目标计算集群;
向所述目标计算集群的主计算设备发送所述目标计算任务,以指示所述目标计算集群中的主计算设备将所述目标计算任务分发给所述目标计算集群中的从属计算设备处理;
其中,所述从属调度服务器受与其连接的上一级的主调度服务器进行统一调度。
7.一种任务处理方法,其特征在于,由计算中心的计算集群中的主计算设备执行,所述主计算设备连接有至少两个从属计算设备;所述方法包括:
接收从目标从属调度服务器发送的目标计算任务;其中所述目标从属调度服务器连接所述主计算设备,且所述目标从属调度服务器由调度中心的主调度服务器从至少两个从属调度服务器中确定;所述目标计算任务是所述主调度服务器接收到用户发起的计算任务,并将接收的计算任务发送到所述目标从属调度服务器确定的;
向目标计算集群中的从属计算设备发送所述目标计算任务,指示所述目标计算集群中的从属计算设备处理所述目标计算任务;其中所述目标计算集群是由所述目标从属调度服务器从连接的至少两个计算集群中确定;
其中,所述从属调度服务器受与其连接的上一级的主调度服务器进行统一调度。
8.根据权利要求7所述的方法,其特征在于,向目标计算集群中的从属计算设备发送所述目标计算任务,包括:
从所述目标计算集群中的主计算设备连接的至少两个从属计算设备,选取目标从属计算设备,并向所述目标从属计算设备发送所述目标计算任务。
9.根据权利要求8所述的方法,其特征在于,从所述目标计算集群中的主计算设备连接的至少两个从属计算设备,选取目标从属计算设备,包括:
确定所述从属计算设备可调动的空闲计算资源;
依据所述至少两个从属计算设备可调动的空闲计算资源,从所述至少两个从属计算设备中选取目标从属计算设备。
10.根据权利要求7所述的方法,其特征在于,在接收从目标从属调度服务器发送的目标计算任务之前,还包括:
接收从所述目标从属调度服务器发送的目标计算算法的算法存储信息;其中所述目标计算算法是由所述主调度服务器依据用户发起的目标计算任务的任务特征,所确定的所述目标计算任务要使用的算法;
向所述目标计算集群的从属计算设备发送所述目标计算算法的算法存储信息,以指示从属计算设备执行如下:依据所述目标计算算法的算法存储信息从预设的算法仓库中加载所述目标计算算法,供采用所述目标计算算法执行任务。
11.一种任务处理装置,其特征在于,配置于调度中心的主调度服务器,所述主调度服务器连接有至少两个从属调度服务器;所述装置包括:
任务响应接收模块,用于响应于用户的任务处理请求,接收用户发起的目标计算任务;
从属调度选取模块,用于从所述至少两个从属调度服务器中,选取目标从属调度服务器;
目标任务发送模块,用于向所述目标从属调度服务器发送所述目标计算任务,以指示所述目标从属调度服务器从连接的计算集群中选择目标计算集群,以通过所述目标计算集群中的主计算设备将所述目标计算任务分发给所述目标计算集群中的从属计算设备处理;
其中,所述从属调度服务器受与其连接的上一级的主调度服务器进行统一调度。
12.一种任务处理装置,其特征在于,配置于调度中心的从属调度服务器,所述从属调度服务器连接有一个主调度服务器,所述从属调度服务器连接至少两个计算集群;所述装置包括:
目标任务接收模块,用于接收从连接的主调度服务器发送的目标计算任务;所述目标计算任务是所述主调度服务器响应于用户的任务处理请求,接收到的用户发起的计算任务;
计算集群选取模块,用于从所述至少两个计算集群中,选取目标计算集群;
目标任务下发模块,用于向所述目标计算集群的主计算设备发送所述目标计算任务,以指示所述目标计算集群中的主计算设备将所述目标计算任务分发给所述目标计算集群中的从属计算设备处理;
其中,所述从属调度服务器受与其连接的上一级的主调度服务器进行统一调度。
13.一种任务处理装置,其特征在于,配置于计算中心的计算集群中的主计算设备,所述主计算设备连接有至少两个从属计算设备;所述装置包括:
下发任务接收模块,用于接收从目标从属调度服务器发送的目标计算任务;其中所述目标从属调度服务器连接所述主计算设备,且所述目标从属调度服务器由调度中心的主调度服务器从至少两个从属调度服务器中确定;所述目标计算任务是所述主调度服务器接收到用户发起的计算任务,并将接收的计算任务发送到所述目标从属调度服务器确定的;
下发任务转发模块,用于向目标计算集群中的从属计算设备发送所述目标计算任务,指示所述目标计算集群中的从属计算设备处理所述目标计算任务;其中所述目标计算集群是由所述目标从属调度服务器从连接的至少两个计算集群中确定;
其中,所述从属调度服务器受与其连接的上一级的主调度服务器进行统一调度。
14.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现权利要求1-10中任一所述的任务处理方法。
15.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-10中任一所述的任务处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910580585.1A CN112148439B (zh) | 2019-06-28 | 2019-06-28 | 任务处理方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910580585.1A CN112148439B (zh) | 2019-06-28 | 2019-06-28 | 任务处理方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112148439A CN112148439A (zh) | 2020-12-29 |
CN112148439B true CN112148439B (zh) | 2024-03-08 |
Family
ID=73892028
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910580585.1A Active CN112148439B (zh) | 2019-06-28 | 2019-06-28 | 任务处理方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112148439B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112948118B (zh) * | 2021-03-12 | 2024-01-16 | 上海哔哩哔哩科技有限公司 | 边缘计算方法、平台、计算机设备和可读存储介质 |
CN115801790B (zh) * | 2023-01-05 | 2023-05-23 | 摩尔线程智能科技(北京)有限责任公司 | 数据处理装置集群的管理系统和控制方法 |
CN115934358B (zh) * | 2023-01-05 | 2023-06-27 | 摩尔线程智能科技(北京)有限责任公司 | 数据处理装置集群的控制方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103544064A (zh) * | 2013-10-28 | 2014-01-29 | 华为数字技术(苏州)有限公司 | 云计算方法、云管理平台和客户端 |
CN107343045A (zh) * | 2017-07-04 | 2017-11-10 | 北京百度网讯科技有限公司 | 云计算系统及用于控制服务器的云计算方法和装置 |
CN107959705A (zh) * | 2016-10-18 | 2018-04-24 | 阿里巴巴集团控股有限公司 | 流式计算任务的分配方法和控制服务器 |
CN109445931A (zh) * | 2018-08-31 | 2019-03-08 | 安徽四创电子股份有限公司 | 一种大数据资源调度系统及方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9658893B2 (en) * | 2015-05-06 | 2017-05-23 | Runtime Design Automation | Multilayered resource scheduling |
-
2019
- 2019-06-28 CN CN201910580585.1A patent/CN112148439B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103544064A (zh) * | 2013-10-28 | 2014-01-29 | 华为数字技术(苏州)有限公司 | 云计算方法、云管理平台和客户端 |
CN107959705A (zh) * | 2016-10-18 | 2018-04-24 | 阿里巴巴集团控股有限公司 | 流式计算任务的分配方法和控制服务器 |
CN107343045A (zh) * | 2017-07-04 | 2017-11-10 | 北京百度网讯科技有限公司 | 云计算系统及用于控制服务器的云计算方法和装置 |
CN109445931A (zh) * | 2018-08-31 | 2019-03-08 | 安徽四创电子股份有限公司 | 一种大数据资源调度系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112148439A (zh) | 2020-12-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11157255B2 (en) | Software asset management | |
CN112148439B (zh) | 任务处理方法、装置、设备及存储介质 | |
US8739169B2 (en) | Method for monitoring operating experiences of images to improve workload optimization in cloud computing environments | |
US9529613B2 (en) | Methods and apparatus to reclaim resources in virtual computing environments | |
CN108595316B (zh) | 分布式应用的生命周期管理方法、管理器、设备和介质 | |
US9197703B2 (en) | System and method to maximize server resource utilization and performance of metadata operations | |
DE102021209145A1 (de) | Verfahren und vorrichtung zum koordinieren von edge-plattformen | |
US10360024B2 (en) | Method and apparatus for execution of distributed workflow processes | |
CN109408205B (zh) | 基于hadoop集群的任务调度方法和装置 | |
CN111108479A (zh) | 自主多租户数据库云服务框架 | |
CN104506620A (zh) | 一种可扩展的自动化计算服务平台及其构建方法 | |
CN103092698A (zh) | 云计算应用自动部署系统及方法 | |
US10601908B1 (en) | Partitioning of container workload based on a temporal relationship | |
US10310900B2 (en) | Operating programs on a computer cluster | |
US8875148B2 (en) | Product-specific system resource allocation within a single operating system instance | |
CN104735095A (zh) | 一种云计算平台作业调度方法及装置 | |
CN104050042A (zh) | Etl作业的资源分配方法及装置 | |
CN102946413B (zh) | 虚拟机调度和执行部署过程中的资源预处理方法及系统 | |
US12014216B2 (en) | Method for platform-based scheduling of job flow | |
CN104750538B (zh) | 用于为目标应用提供虚拟存储池的方法和系统 | |
CN112055953B (zh) | 在云环境中管理多播服务链 | |
US20220357974A1 (en) | Container creation in a computing system | |
CN113204368B (zh) | 应用程序处理方法、服务器及存储介质 | |
Lovas et al. | Orchestrated Platform for Cyber‐Physical Systems | |
US12028269B2 (en) | Method for optimal resource selection based on available GPU resource analysis in large-scale container platform |
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 |