CN112286671A - 一种容器化批处理作业调度方法、装置和计算机设备 - Google Patents
一种容器化批处理作业调度方法、装置和计算机设备 Download PDFInfo
- Publication number
- CN112286671A CN112286671A CN202011587257.3A CN202011587257A CN112286671A CN 112286671 A CN112286671 A CN 112286671A CN 202011587257 A CN202011587257 A CN 202011587257A CN 112286671 A CN112286671 A CN 112286671A
- Authority
- CN
- China
- Prior art keywords
- workload
- queue
- scheduling
- module
- resource
- 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.)
- Granted
Links
Images
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
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- 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
- G06F9/505—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 considering the load
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/48—Indexing scheme relating to G06F9/48
- G06F2209/484—Precedence
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请涉及一种容器化批处理作业调度方法、装置、计算机设备和存储介质。所述方法包括:通过工作负载包装模块读取用户配置的工作负载描述,得到对应的作业单元容器镜像,将工作负载描述和作业单元容器镜像封装得到工作负载,工作负载队列管理模块通过包含抢占队列、资源敏感队列和普通队列的多队列的排队系统根据调度优先级策略调整工作负载队列的排序;工作负载调度模块取出负载调度执行并由工作负载运行监控模块进行运行监控。本发明可以提高容器化批处理作业调度的效率,实现弹性云操作环境资源利用率和工作负载执行效率的均衡。
Description
技术领域
本申请涉及大数据处理技术领域,特别是涉及一种容器化批处理作业调度方法、装置、计算机设备和存储介质。
背景技术
在深度学习和大数据处理技术领域,批处理作业时是一类最为典型的工作负载,通常占据深度学习和大数据处理平台的多数工作时间。目前应用最广泛的批处理作业调度系统包括面向高性能计算领域的Slurm、面向大数据分析处理应用的YARN、Mesos。其中Slurm缺乏容错机制,导致作业调度缺乏弹性,作业重启时间周期长;YARN和Mesos对于错误的容忍能力强于Slurm,但是目前也面临着作业封装能力弱,作业依赖冲突等问题,此外YARN和Mesos对于目前深度学习领域重要的加速器件如GPU等缺乏有效的支持;为了解决上述作业调度系统存在的问题,以Kubernetes和容器技术为代表的新一代作业管理系统吸引了人们的关注,但是Kubernetes和容器技术更多的是面向企业级服务类型作业进行调度,其特征是长时运行(Long-Running),即启动后作业不停机,以请求-响应方式对外提供服务。这导致了Kubernetes的设计原则是保证尽量多的作业得到资源,而这一原则恰恰与批处理让单一作业尽可能地获得足够多的资源的目标相矛盾,使用Kubernetes和容器技术来进行批处理作业的调度还存在较大的困难。
因此,现有的容器化批处理作业技术存在资源利用率低、工作负载执行效率低的问题。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高容器化批处理作业调度效率的容器化批处理作业调度方法、装置、计算机设备和存储介质。
一种容器化批处理作业调度方法,所述方法包括:
通过工作负载包装模块读取用户配置的工作负载描述,根据所述工作负载描述得到所述工作负载中批处理作业对应的作业单元容器镜像,根据所述工作负载描述将所述作业单元容器镜像封装得到工作负载,并将所述工作负载加入工作负载队列;
从工作负载调度策略配置模块获取用户预先定义的工作负载调度优先级策略,通过工作负载队列管理模块根据所述调度优先级策略调整所述工作负载队列中队列的排序;所述工作负载队列管理模块是一个多队列的排队系统,包含抢占队列、资源敏感队列和普通队列;
通过工作负载调度模块根据所述工作负载队列中队列的排序以及弹性云操作环境资源的使用情况,从所述工作负载队列中取出工作负载调度执行;所述弹性云操作环境为支持容器运行的云计算基础设施;
通过工作负载运行监控模块对所述工作负载在弹性云操作环境中的运行情况进行监控。
在其中一个实施例中,还包括:通过工作负载包装模块读取用户配置的工作负载描述,所述工作负载描述用于描述所述工作负载的属性,所述属性包括:批处理作业的作业单元组成、作业单元存储位置、作业单元间的执行序列、批处理作业执行的服务等级目标和批处理作业副本数作业间的执行序列。
在其中一个实施例中,还包括:根据所述作业存储位置属性得到所述工作负载中批处理作业包含的作业单元容器镜像;
根据所述作业单元间的执行序列属性检查作业上下文,判断顺承的两个作业的输入和输出是否匹配,当所述输入和所述输出匹配时,将所述工作负载描述中的作业单元执行序列和所述作业单元容器镜像封装得到工作负载,根据所述作业执行的服务等级目标属性对工作负载进行分类,并将所述工作负载加入对应的工作负载队列;当所述输入和所述输出不匹配时,生成所述工作负载封装异常信息。
在其中一个实施例中,还包括:从工作负载调度策略配置模块获取负载调度优先级策略,通过工作负载队列管理模块扫描所述工作负载队列,判断所述工作负载队列中是否存在需要加入抢占型队列的工作负载,当存在需要加入抢占型队列的工作负载时,将所述工作负载移动到所述抢占队列并判断是否移动成功,当移动不成功时,等待所述抢占队列出现空置位置再次移动并判断,直到移动成功;当移动成功后,再根据所述优先级策略对其他非抢占性队列中的工作负载进行优先排序。
在其中一个实施例中,还包括:通过工作负载调度模块根据所述工作负载队列中队列的排序,从所述工作负载队列中取出负载调度执行,其调度原则为:
当所述抢占队列中存在工作负载,则停止调度非抢占型队列中的工作负载,并按照抢占型队列中的工作负载排序依次调度工作负载执行;
当所述抢占型队列中没有工作负载排队时,则根据所述工作负载运行监控模块监控到的所述弹性云操作环境中的资源占用情况,调度非抢占型队列的作业执行,非抢占型队列的调度原则为:
当所述弹性云操作环境中空闲资源足够,则优先调度资源敏感型作业;
当所述弹性云操作环境中空闲资源不够,则通过所述工作负载调度模块对所述弹性云操作环境执行资源紧凑、资源回收或负载召回;
在工作负载运行过程中,所述工作负载调度模块按照特定周期或者特定事件触发执行资源紧凑、资源回收或负载召回。
在其中一个实施例中,还包括:在工作负载运行过程中,所述工作负载调度模块按照特定周期或者特定事件触发执行资源紧凑、资源回收或负载召回;所述特定周期为用户指定的时长间隔或者指定的时间点,所述特定事件为所述工作负载运行监控模块监控到所述弹性云操作环境中有运行完毕的工作负载或有运行出错的工作负载。
在其中一个实施例中,还包括:通过工作负载调度模块根据所述弹性云操作环境中资源使用情况,对所述弹性云操作环境中运行的工作负载进行调度工作;所述工作负载调度模块的调度工作包括:资源紧凑、资源回收和负载召回;所述资源紧凑是指在弹性云操作环境中当前执行资源能够满足n个普通工作负载资源需求的前提下,尽可能多的将分散的普通工作负载调度到当前执行资源上运行,满足调度到当前执行资源上运行的普通工作负载的数目不大于n即可,所述普通工作负载为所述普通队列中的工作负载;所述资源回收包括终止执行完成的工作负载,并判断所述工作负载的执行资源上是否还有其他负载运行,如果没有则回收执行资源,如果有则执行资源紧凑;所述负载召回是将运行出错的工作负载放回相应的工作负载队列等待后续调度,并执行资源回收,对出错的工作负载的后续调度将根据从所述工作负载调度策略配置模块获取的工作负载重启策略进行重试,如果同一工作负载被执行负载召回的次数超出所述重试策略规定的工作负载重启次数,则中止工作负载,向用户提示工作负载执行错误。
一种容器化批处理作业调度装置,所述装置包括:
工作负载封装模块,用于通过工作负载包装模块读取用户配置的工作负载描述,根据所述工作负载描述得到所述工作负载中批处理作业对应的作业单元容器镜像,根据所述工作负载描述将所述作业单元容器镜像封装得到工作负载,并将所述工作负载加入工作负载队列;
队列管理模块,用于从工作负载调度策略配置模块获取用户预先定义的工作负载调度优先级策略,通过工作负载队列管理模块根据所述调度优先级策略调整所述工作负载队列中队列的排序;所述工作负载队列管理模块是一个多队列的排队系统,包含抢占队列、资源敏感队列和普通队列;
调度模块,用于通过工作负载调度模块根据所述工作负载队列中队列的排序以及弹性云操作环境资源的使用情况,从所述工作负载队列中取出工作负载调度执行;所述弹性云操作环境为支持容器运行的云计算基础设施;
监督模块,用于通过工作负载运行监控模块对所述工作负载在弹性云操作环境中的运行情况进行监控。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
通过工作负载包装模块读取用户配置的工作负载描述,根据所述工作负载描述得到所述工作负载中批处理作业对应的作业单元容器镜像,根据所述工作负载描述将所述作业单元容器镜像封装得到工作负载,并将所述工作负载加入工作负载队列;
从工作负载调度策略配置模块获取用户预先定义的工作负载调度优先级策略,通过工作负载队列管理模块根据所述调度优先级策略调整所述工作负载队列中队列的排序;所述工作负载队列管理模块是一个多队列的排队系统,包含抢占队列、资源敏感队列和普通队列;
通过工作负载调度模块根据所述工作负载队列中队列的排序以及弹性云操作环境资源的使用情况,从所述工作负载队列中取出工作负载调度执行;所述弹性云操作环境为支持容器运行的云计算基础设施;
通过工作负载运行监控模块对所述工作负载在弹性云操作环境中的运行情况进行监控。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
通过工作负载包装模块读取用户配置的工作负载描述,根据所述工作负载描述得到所述工作负载中批处理作业对应的作业单元容器镜像,根据所述工作负载描述将所述作业单元容器镜像封装得到工作负载,并将所述工作负载加入工作负载队列;
从工作负载调度策略配置模块获取用户预先定义的工作负载调度优先级策略,通过工作负载队列管理模块根据所述调度优先级策略调整所述工作负载队列中队列的排序;所述工作负载队列管理模块是一个多队列的排队系统,包含抢占队列、资源敏感队列和普通队列;
通过工作负载调度模块根据所述工作负载队列中队列的排序以及弹性云操作环境资源的使用情况,从所述工作负载队列中取出工作负载调度执行;所述弹性云操作环境为支持容器运行的云计算基础设施;
通过工作负载运行监控模块对所述工作负载在弹性云操作环境中的运行情况进行监控。
上述容器化批处理作业调度方法、装置、计算机设备和存储介质,通过获取以容器形式封装的批处理作业,根据批处理作业的类型进行工作负载分类,根据工作负载分类中批处理作业的属性得到工作负载描述;工作负载包装模块读取工作负载描述,根据工作负载描述得到批处理作业对应的作业单元容器镜像,将工作负载描述和作业单元容器镜像封装得到工作负载,并将工作负载加入工作负载队列;工作负载队列管理模块通过包含抢占队列、资源敏感队列和普通队列的多队列的排队系统根据调度优先级策略调整工作负载队列的排序;工作负载调度模块根据队列排序以及操作环境资源的使用情况,取出负载调度执行并由工作负载运行监控模块进行运行监控。通过封装工作负载使工作负载成为一个独立且不可分割的整体,其调度过程符合原子性,工作负载中的作业全部执行或全部不执行,可以优化资源配置;根据工作负载描述对工作负载进行队列管理,可以提高作业调度的效率,实现弹性云操作环境资源利用率和工作负载执行效率的均衡。
附图说明
图1为一个实施例中容器化批处理作业调度方法的应用场景图;
图2为一个实施例中容器化批处理作业调度方法的流程示意图;
图3为一个实施例中生成工作负载封装的流程示意图;
图4为一个实施例中工作负载队列管理方法的流程示意图;
图5为一个实施例中容器化批处理作业调度装置的结构框图;
图6为另一个实施例中容器化批处理作业调度装置的结构框图;
图7为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的容器化批处理作业调度方法,可以应用于如图1所示的应用环境中。其中,调度系统集群、计算集群和运行状态监控集群通过网络进行通信。根据工作负载描述得到批处理作业对应的作业单元容器镜像,将工作负载描述和作业单元容器镜像封装得到工作负载,并将工作负载加入工作负载队列;从工作负载调度策略配置模块获取负载调度优先级策略,工作负载队列管理模块通过包含抢占队列、资源敏感队列和普通队列的多队列的排队系统根据调度优先级策略调整工作负载队列的排序;工作负载调度模块根据队列排序以及操作环境资源的使用情况,取出负载调度由计算集群执行,并由运行状态监控集群进行运行监控。其中,集群中的节点可以但不限于是各种个人计算机、笔记本电脑。
在一个实施例中,如图2所示,提供了一种容器化批处理作业调度方法,以该方法应用于图1中的调度系统集群为例进行说明,包括以下步骤:
步骤202,通过工作负载包装模块读取用户配置的工作负载描述,根据工作负载描述得到工作负载中批处理作业对应的作业单元容器镜像,根据工作负载描述将作业单元容器镜像封装得到工作负载,并将工作负载加入工作负载队列。
工作负载描述形式化地描述该批处理作业的执行约束,工作负载描述中包括但不限于本实施例中采用的以下属性:
工作负载的作业组成,描述工作负载中包含哪些作业;
作业存储位置,描述各个作业对应的容器镜像存储的位置;
作业执行的服务等级目标(Service Level Object, SLO),描述各个作业执行的必要条件,包括作业执行的时间预期、作业执行是使用的最低资源数预期(强制保证的资源)、作业是否为质量敏感(判定是否允许作业与其他作业共享计算资源)等子属性;这些参数是由用户指定的;
作业副本数,描述各个作业执行时必须满足的副本数区间;
作业间的执行序列,描述一个工作负载中各个作业执行的顺承关系,确保执行逻辑的正确性,执行序列需要以有向无环图(Directed Acyclic Graph, DAG)的形式表述。
本方法的弹性云操作环境包括但不限于Kubernetes在内的典型的支持容器的云计算基础设施,本实施例中选用Kubernetes作为云操作环境,选用docker构建容器镜像。在本实施例中,工作负载描述采用YAML文档格式。YAML是专门用来写配置文件的语言,实质上是一种通用的数据序列化格式。通过YAML在Kubernetes上创建Deployment来运行封装了批处理作业的容器。
作业容器运行之前是以作业单元容器镜像存储在弹性云操作环境中的,作业单元容器镜像包括弹性云操作环境的可执行文件、库文件与配置文件,深度学习库,以及作业启动脚本等。不同的容器技术方案具有不同的镜像格式,本发明的实施例使用的Docker容器技术方案采用层叠文件系统的格式保存镜像。在制作面向Docker的镜像时,用户需要使用名为Dockerfile的文本文件描述镜像的制作步骤,Docker服务程序会依照这些步骤创建镜像的文件系统结构,并将其保存在本地文件系统上。
通过将工作负载描述和作业单元容器镜像封装得到工作负载,作为后续执行调度的基本单位,确保作业调度的原子性,提高弹性云操作环境资源利用率。
步骤204,从工作负载调度策略配置模块获取用户预先定义的工作负载调度优先级策略,通过工作负载队列管理模块根据调度优先级策略调整工作负载队列中队列的排序。
工作负载队列管理模块是一个多队列的排队系统,包含抢占队列、资源敏感队列和普通队列:
抢占队列,两类工作负载可以进入该队列,一类是SLO目标设定要求最高的工作负载(SLO要求高包括延迟要求小、质量敏感等要素,具体按照工作负载调度策略配置模块指定);另一类是在其他两个队列中长时间等待的工作负载,为避免工作负载终止,会将该工作负载调度到抢占队列。抢占队列中如果存在工作负载,则其他队列中的作业均停止调度,指导抢占队列为空才继续调度。为了保证执行公平,抢占队列中只保存有限的工作负载,在本实施例中选取的队列长度为4。
资源敏感队列,该队列中包含对资源有强制要求的工作负载,该队列中的工作负载中存在要求独占执行资源的作业,只有在弹性云操作环境中有足够的资源的情况下会被调度执行。
普通队列,该队列中包含非资源敏感的作业,在弹性云操作环境中存在合适资源的情况下即可调度执行,该队列中的工作负载允许共享同一计算资源。
通过有限空间的抢占式队列的设计,以最简单的策略避免工作负载由于长时间得不到调度而终止的情况;通过普通队列和资源敏感队列的设置,提供灵活的作业调度实施办法,实现弹性云操作环境资源利用率和工作负载执行效率的均衡。
步骤206,通过工作负载调度模块根据工作负载队列中队列的排序以及弹性云操作环境资源的使用情况,从工作负载队列中取出工作负载调度执行;
其中,弹性云操作环境包括但不限于Kubernetes在内的典型的支持容器的云计算基础设施,本实施例中选用Kubernetes作为云操作环境,选用docker作为容器镜像构建工具。
工作负载调度模块是整个系统的核心,该模块从工作负载队列中取出相应的工作负载,并将其放置到操作环境中执行,并向工作负载运行监控模块进行执行注册,通过执行注册告知监控模块监控哪些作业,并从监控模块和执行环境处收集资源使用情况和作业执行情况,根据这些情况综合调整工作负载的执行。
步骤208,通过工作负载运行监控模块对工作负载在弹性云操作环境中的运行情况进行监控。
工作负载运行监控模块主要工作为监控执行中的工作负载状态,并向工作负载调度模块报告执行状态。通过作业运行监控,支持近实时地对工作负载的执行进行调整,实现资源的快速释放,避免普通作业占据大量资源的情况出现。
上述容器化批处理作业调度方法中,通过工作负载包装模块读取用户配置的工作负载描述,根据工作负载描述得到批处理作业对应的作业单元容器镜像,将工作负载描述和作业单元容器镜像封装得到工作负载,并将工作负载加入工作负载队列;工作负载队列管理模块通过包含抢占队列、资源敏感队列和普通队列的多队列的排队系统根据调度优先级策略调整工作负载队列的排序;工作负载调度模块根据队列排序以及操作环境资源的使用情况,取出负载调度执行并由工作负载运行监控模块进行运行监控。通过封装工作负载使工作负载成为一个独立且不可分割的整体,其调度过程符合原子性,工作负载中的作业全部执行或全部不执行,可以优化资源配置;根据工作负载描述对工作负载进行队列管理,可以提高作业调度的效率,实现弹性云操作环境资源利用率和工作负载执行效率的均衡。
在其中一个实施例中,还包括:通过工作负载包装模块读取用户配置的工作负载描述,工作负载描述用于描述工作负载的属性,属性包括:批处理作业的作业单元组成、作业单元存储位置、作业单元间的执行序列、批处理作业执行的服务等级目标和批处理作业副本数作业间的执行序列。
具体实施中,还可以根据用户需求或系统需求增加工作负载描述中的属性,以通过工作负载描述中的属性在调度过程中更灵活机动地个性化定制调度重点,为配合满足用户的自定义策略提供更多实现的可能。
在其中一个实施例中,如图3所示,还包括:根据作业存储位置属性得到工作负载中批处理作业包含的作业单元容器镜像;根据作业单元间的执行序列属性检查作业上下文,判断顺承的两个作业的输入和输出是否匹配,当输入和输出匹配时,将工作负载描述中的作业单元执行序列和作业单元容器镜像封装得到工作负载,根据作业执行的服务等级目标属性对工作负载进行分类,并将工作负载加入对应的工作负载队列;当输入和输出不匹配时,生成工作负载封装异常信息。
根据作业间的执行序列属性检查作业上下文,判断顺承的两个作业的输入和输出是否匹配,即对于一个工作负载中存在顺承关系的作业,前序作业的输出应该与后序作业的输入相匹配,当不匹配时,说明存在异常,生成工作负载封装异常信息,不进行工作负载封装。
在其中一个实施例中,如图4所示,还包括:从工作负载调度策略配置模块获取负载调度优先级策略,通过工作负载队列管理模块扫描工作负载队列,判断工作负载队列中是否存在需要加入抢占型队列的工作负载,当存在需要加入抢占型队列的工作负载时,将工作负载移动到抢占队列并判断是否移动成功,当移动不成功时,等待抢占队列出现空置位置再次移动并判断,直到移动成功;当移动成功后,再根据优先级策略对其他非抢占性队列中的工作负载进行优先排序。
工作负载调度策略配置模块预置了一系列批处理、业务服务混合的作业和资源调度策略,以及优先级配置管理策略,并为用户提供自定义策略的能力。
将抢占性工作负载移动到抢占队列,如果当前抢占队列中没有作业,那么加入的作业的顺序就是第一位,如果抢占队列中有作业但还有空间,那么加入的作业的顺序排在抢占队列中已有作业之后。对抢占队列中的工作负载优先排序,再根据优先级策略对其他非抢占性队列中的工作负载进行优先排序。对于排序优先的抢占队列中的作业,如果作业所依赖的资源上正有作业在运行,需要等当前作业完成并释放资源后,再执行抢占队列中的作业。抢占队列的空间不是无限的,通过有限空间的抢占式队列的设计,以最简单的策略避免工作负载由于长时间得不到调度而终止。
在其中一个实施例中,还包括:通过工作负载调度模块根据工作负载队列中队列的排序,从工作负载队列中取出负载调度执行,其调度原则为:当抢占队列中存在工作负载,则停止调度非抢占型队列中的工作负载,并按照抢占型队列中的工作负载排序依次调度工作负载执行;当抢占型队列中没有工作负载排队时,则根据工作负载运行监控模块监控到的弹性云操作环境中的资源占用情况,调度非抢占型队列的作业执行,非抢占型队列的调度原则为:当弹性云操作环境中空闲资源足够,则优先调度资源敏感型作业;当弹性云操作环境中空闲资源不够,则通过工作负载调度模块对弹性云操作环境执行资源紧凑、资源回收或负载召回;在工作负载运行过程中,工作负载调度模块按照特定周期或者特定事件触发执行资源紧凑、资源回收或负载召回。特定周期为用户指定的时长间隔或者指定的时间点,特定事件为工作负载运行监控模块监控到弹性云操作环境中有运行完毕的工作负载或有运行出错的工作负载。
工作负载队列管理模块采用优先级调度队列维护各类工作负载,根据工作负载/资源调度模块的调度命令和流控指令管理队列规模,并根据负载调度策略配置模块的优先级实施工作负载排队。
在其中一个实施例中,还包括:通过工作负载调度模块根据弹性云操作环境中资源使用情况,对弹性云操作环境中运行的工作负载进行调度工作;工作负载调度模块的调度工作包括:资源紧凑、资源回收和负载召回;资源紧凑是指在弹性云操作环境中当前执行资源能够满足n个普通工作负载资源需求的前提下,尽可能多的将分散的普通工作负载调度到当前执行资源上运行,满足调度到当前执行资源上运行的普通工作负载的数目不大于n即可,普通工作负载为普通队列中的工作负载;资源回收包括终止执行完成的工作负载,并判断工作负载的执行资源上是否还有其他负载运行,如果没有则回收执行资源,如果有则执行资源紧凑;负载召回是将运行出错的工作负载放回相应的工作负载队列等待后续调度,并执行资源回收,对出错的工作负载的后续调度将根据从工作负载调度策略配置模块获取的工作负载重启策略进行重试,如果同一工作负载被执行负载召回的次数超出重试策略规定的工作负载重启次数,则中止工作负载,向用户提示工作负载执行错误。
通过作业运行监控,支持近实时地对工作负载的执行进行调整,通过资源紧凑操作实现资源的快速释放,避免普通作业占据大量资源的情况出现。
应该理解的是,虽然图2的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图5所示,提供了一种容器化批处理作业调度装置,包括:工作负载封装模块502、队列管理模块504、调度模块506和监督模块508,其中:
工作负载封装模块502,用于通过工作负载包装模块读取用户配置的工作负载描述,根据工作负载描述得到工作负载中批处理作业对应的作业单元容器镜像,根据工作负载描述将作业单元容器镜像封装得到工作负载,并将工作负载加入工作负载队列;
队列管理模块504,用于从工作负载调度策略配置模块获取用户预先定义的工作负载调度优先级策略,通过工作负载队列管理模块根据调度优先级策略调整工作负载队列中队列的排序;工作负载队列管理模块是一个多队列的排队系统,包含抢占队列、资源敏感队列和普通队列;
调度模块506,用于通过工作负载调度模块根据工作负载队列中队列的排序以及弹性云操作环境资源的使用情况,从工作负载队列中取出工作负载调度执行;弹性云操作环境为支持容器运行的云计算基础设施;
监督模块508,用于通过工作负载运行监控模块对工作负载在弹性云操作环境中的运行情况进行监控。
工作负载封装模块502还用于通过工作负载包装模块读取用户配置的工作负载描述,工作负载描述用于描述工作负载的属性,属性包括:批处理作业的作业单元组成、作业单元存储位置、作业单元间的执行序列、批处理作业执行的服务等级目标和批处理作业副本数作业间的执行序列。
工作负载封装模块502还用于根据作业存储位置属性得到工作负载中批处理作业包含的作业单元容器镜像;根据作业单元间的执行序列属性检查作业上下文,判断顺承的两个作业的输入和输出是否匹配,当输入和输出匹配时,将工作负载描述中的作业单元执行序列和作业单元容器镜像封装得到工作负载,根据作业执行的服务等级目标属性对工作负载进行分类,并将工作负载加入对应的工作负载队列;当输入和输出不匹配时,生成工作负载封装异常信息。
队列管理模块504还用于从工作负载调度策略配置模块获取负载调度优先级策略,通过工作负载队列管理模块扫描工作负载队列,判断工作负载队列中是否存在需要加入抢占型队列的工作负载,当存在需要加入抢占型队列的工作负载时,将工作负载移动到抢占队列并判断是否移动成功,当移动不成功时,等待抢占队列出现空置位置再次移动并判断,直到移动成功;当移动成功后,再根据优先级策略对其他非抢占性队列中的工作负载进行优先排序。
调度模块506还用于通过工作负载调度模块根据工作负载队列中队列的排序,从工作负载队列中取出负载调度执行,其调度原则为:当抢占队列中存在工作负载,则停止调度非抢占型队列中的工作负载,并按照抢占型队列中的工作负载排序依次调度工作负载执行;当抢占型队列中没有工作负载排队时,则根据工作负载运行监控模块监控到的弹性云操作环境中的资源占用情况,调度非抢占型队列的作业执行,非抢占型队列的调度原则为:当弹性云操作环境中空闲资源足够,则优先调度资源敏感型作业;当弹性云操作环境中空闲资源不够,则通过工作负载调度模块对弹性云操作环境执行资源紧凑、资源回收或负载召回;在工作负载运行过程中,工作负载调度模块按照特定周期或者特定事件触发执行资源紧凑、资源回收或负载召回。
调度模块506还用于在工作负载运行过程中,工作负载调度模块按照特定周期或者特定事件触发执行资源紧凑、资源回收或负载召回;特定周期为用户指定的时长间隔或者指定的时间点,特定事件为工作负载运行监控模块监控到弹性云操作环境中有运行完毕的工作负载或有运行出错的工作负载。
调度模块506还用于通过工作负载调度模块根据弹性云操作环境中资源使用情况,对弹性云操作环境中运行的工作负载进行调度工作;工作负载调度模块的调度工作包括:资源紧凑、资源回收和负载召回;资源紧凑是指在弹性云操作环境中当前执行资源能够满足n个普通工作负载资源需求的前提下,尽可能多的将分散的普通工作负载调度到当前执行资源上运行,满足调度到当前执行资源上运行的普通工作负载的数目不大于n即可,普通工作负载为普通队列中的工作负载;资源回收包括终止执行完成的工作负载,并判断工作负载的执行资源上是否还有其他负载运行,如果没有则回收执行资源,如果有则执行资源紧凑;负载召回是将运行出错的工作负载放回相应的工作负载队列等待后续调度,并执行资源回收,对出错的工作负载的后续调度将根据从工作负载调度策略配置模块获取的工作负载重启策略进行重试,如果同一工作负载被执行负载召回的次数超出重试策略规定的工作负载重启次数,则中止工作负载,向用户提示工作负载执行错误。
在一个具体实施例中,如图6所示,提供了一种容器化批处理作业调度装置,包括:工作负载包装模块602、工作负载队列管理模块604、工作负载调度策略配置模块606、工作负载调度模块608和工作负载运行监控模块610。
工作负载包装模块602用于接收不同类型的智能计算作业,识别作业类型并按照作业类型将作业编制打包成为一个工作负载,作为后续执行调度的基本单位,确保对一个作业调度的原子性。
工作负载队列管理模块604用于采用优先级调度队列维护各类工作负载,根据工作负载调度模块的调度命令和流控指令管理队列规模,并根据负载调度策略配置模块的优先级实施工作负载排队。
工作负载调度策略配置模块606用于预置一系列批处理、业务服务混合的作业和资源调度策略,以及优先级配置管理策略,并具有为用户提供自定义策略的能力。
工作负载调度模块608用于依据工作负载调度策略配置模块和作业运行监控状态,对工作负载和资源进行调度,并向工作负载运行监控模块进行执行注册,通过执行注册告知监控模块监控哪些作业,并从监控模块和执行环境处收集资源使用情况和作业执行情况,包括推理作业调度保留资源维护、作业放置优化配置等功能。
工作负载运行监控模块610用于对当前正在运行的工作负载的状态进行执行,并向工作负载调度模块提交监控情况,工作负载调度模块根据监控状态报告决定对工作负载的伸缩扩容、失效恢复等操作。
其中,轻量级虚拟化弹性云操作环境包括但不限于Kubernetes在内的典型的支持容器的云计算基础设施,本实施例中选用Kubernetes作为云操作环境,选用docker作为容器镜像构建工具。
关于容器化批处理作业调度装置的具体限定可以参见上文中对于容器化批处理作业调度方法的限定,在此不再赘述。上述容器化批处理作业调度装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图7所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种容器化批处理作业调度方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图7中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,该存储器存储有计算机程序,该处理器执行计算机程序时实现上述方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述方法实施例中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink) DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种容器化批处理作业调度方法,其特征在于,所述方法包括:
通过工作负载包装模块读取用户配置的工作负载描述,根据所述工作负载描述得到所述工作负载中批处理作业对应的作业单元容器镜像,根据所述工作负载描述将所述作业单元容器镜像封装得到工作负载,并将所述工作负载加入工作负载队列;
从工作负载调度策略配置模块获取用户预先定义的工作负载调度优先级策略,通过工作负载队列管理模块根据所述调度优先级策略调整所述工作负载队列中队列的排序;所述工作负载队列管理模块是一个多队列的排队系统,包含抢占队列、资源敏感队列和普通队列;
通过工作负载调度模块根据所述工作负载队列中队列的排序以及弹性云操作环境资源的使用情况,从所述工作负载队列中取出工作负载调度执行;所述弹性云操作环境为支持容器运行的云计算基础设施;
通过工作负载运行监控模块对所述工作负载在弹性云操作环境中的运行情况进行监控。
2.根据权利要求1所述的方法,其特征在于,所述通过工作负载包装模块读取用户配置的工作负载描述,包括:
通过工作负载包装模块读取用户配置的工作负载描述,所述工作负载描述用于描述所述工作负载的属性,所述属性包括:批处理作业的作业单元组成、作业单元存储位置、作业单元间的执行序列、批处理作业执行的服务等级目标和批处理作业副本数作业间的执行序列。
3.根据权利要求2所述的方法,其特征在于,根据所述工作负载描述得到所述工作负载中批处理作业对应的作业单元容器镜像,根据所述工作负载描述将所述作业单元容器镜像封装得到工作负载,并将所述工作负载加入工作负载队列,包括:
根据所述作业存储位置属性得到所述工作负载中批处理作业包含的作业单元容器镜像;
根据所述作业单元间的执行序列属性检查作业上下文,判断顺承的两个作业的输入和输出是否匹配,当所述输入和所述输出匹配时,将所述工作负载描述中的作业单元执行序列和所述作业单元容器镜像封装得到工作负载,根据所述作业执行的服务等级目标属性对工作负载进行分类,并将所述工作负载加入对应的工作负载队列;当所述输入和所述输出不匹配时,生成所述工作负载封装异常信息。
4.根据权利要求1所述的方法,其特征在于,从工作负载调度策略配置模块获取用户预先定义的负载调度优先级策略,通过工作负载队列管理模块根据所述调度优先级策略调整所述工作负载队列中队列的排序,包括:
从工作负载调度策略配置模块获取负载调度优先级策略,通过工作负载队列管理模块扫描所述工作负载队列,判断所述工作负载队列中是否存在需要加入抢占型队列的工作负载,当存在需要加入抢占型队列的工作负载时,将所述工作负载移动到所述抢占队列并判断是否移动成功,当移动不成功时,等待所述抢占队列出现空置位置再次移动并判断,直到移动成功;当移动成功后,再根据所述优先级策略对其他非抢占性队列中的工作负载进行优先排序。
5.根据权利要求1所述的方法,其特征在于,所述通过工作负载调度模块根据所述工作负载队列中队列的排序以及弹性云操作环境资源的使用情况,从所述工作负载队列中取出负载调度执行,包括:
通过工作负载调度模块根据所述工作负载队列中队列的排序,从所述工作负载队列中取出负载调度执行,其调度原则为:
当所述抢占队列中存在工作负载,则停止调度非抢占型队列中的工作负载,并按照抢占型队列中的工作负载排序依次调度工作负载执行;
当所述抢占型队列中没有工作负载排队时,则根据所述工作负载运行监控模块监控到的所述弹性云操作环境中的资源占用情况,调度非抢占型队列的作业执行,非抢占型队列的调度原则为:
当所述弹性云操作环境中空闲资源足够,则优先调度资源敏感型作业;
当所述弹性云操作环境中空闲资源不够,则通过所述工作负载调度模块对所述弹性云操作环境执行资源紧凑、资源回收或负载召回;
在工作负载运行过程中,所述工作负载调度模块按照特定周期或者特定事件触发执行资源紧凑、资源回收或负载召回。
6.根据权利要求5所述的方法,其特征在于,所述在工作负载运行过程中,所述工作负载调度模块按照特定周期或者特定事件触发执行资源紧凑、资源回收或负载召回,包括:
在工作负载运行过程中,所述工作负载调度模块按照特定周期或者特定事件触发执行资源紧凑、资源回收或负载召回;所述特定周期为用户指定的时长间隔或者指定的时间点,所述特定事件为所述工作负载运行监控模块监控到所述弹性云操作环境中有运行完毕的工作负载或有运行出错的工作负载。
7.根据权利要求6所述的方法,其特征在于,通过工作负载调度模块根据所述工作负载队列中队列的排序,从所述工作负载队列中取出工作负载调度执行,还包括:
通过工作负载调度模块根据所述弹性云操作环境中资源使用情况,对所述弹性云操作环境中运行的工作负载进行调度工作;所述工作负载调度模块的调度工作包括:资源紧凑、资源回收和负载召回;所述资源紧凑是指在弹性云操作环境中当前执行资源能够满足n个普通工作负载资源需求的前提下,尽可能多的将分散的普通工作负载调度到当前执行资源上运行,满足调度到当前执行资源上运行的普通工作负载的数目不大于n即可,所述普通工作负载为所述普通队列中的工作负载;所述资源回收包括终止执行完成的工作负载,并判断所述工作负载的执行资源上是否还有其他负载运行,如果没有则回收执行资源,如果有则执行资源紧凑;所述负载召回是将运行出错的工作负载放回相应的工作负载队列等待后续调度,并执行资源回收,对出错的工作负载的后续调度将根据从所述工作负载调度策略配置模块获取的工作负载重启策略进行重试,如果同一工作负载被执行负载召回的次数超出所述重试策略规定的工作负载重启次数,则中止工作负载,向用户提示工作负载执行错误。
8.一种容器化批处理作业调度装置,其特征在于,所述装置包括:
工作负载封装模块,用于通过工作负载包装模块读取用户配置的工作负载描述,根据所述工作负载描述得到所述工作负载中批处理作业对应的作业单元容器镜像,根据所述工作负载描述将所述作业单元容器镜像封装得到工作负载,并将所述工作负载加入工作负载队列;
队列管理模块,用于从工作负载调度策略配置模块获取用户预先定义的工作负载调度优先级策略,通过工作负载队列管理模块根据所述调度优先级策略调整所述工作负载队列中队列的排序;所述工作负载队列管理模块是一个多队列的排队系统,包含抢占队列、资源敏感队列和普通队列;
调度模块,用于通过工作负载调度模块根据所述工作负载队列中队列的排序以及弹性云操作环境资源的使用情况,从所述工作负载队列中取出工作负载调度执行;所述弹性云操作环境为支持容器运行的云计算基础设施;
监督模块,用于通过工作负载运行监控模块对所述工作负载在弹性云操作环境中的运行情况进行监控。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011587257.3A CN112286671B (zh) | 2020-12-29 | 2020-12-29 | 一种容器化批处理作业调度方法、装置和计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011587257.3A CN112286671B (zh) | 2020-12-29 | 2020-12-29 | 一种容器化批处理作业调度方法、装置和计算机设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112286671A true CN112286671A (zh) | 2021-01-29 |
CN112286671B CN112286671B (zh) | 2021-03-12 |
Family
ID=74426568
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011587257.3A Active CN112286671B (zh) | 2020-12-29 | 2020-12-29 | 一种容器化批处理作业调度方法、装置和计算机设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112286671B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112948097A (zh) * | 2021-04-15 | 2021-06-11 | 哈工大机器人(合肥)国际创新研究院 | 一种iec61499的功能块执行调度方法及装置 |
CN114095513A (zh) * | 2021-11-26 | 2022-02-25 | 苏州盛科科技有限公司 | 有限带宽场景下转发流量和镜像流量调度的方法及应用 |
CN115617006A (zh) * | 2022-12-16 | 2023-01-17 | 广州翼辉信息技术有限公司 | 基于分布式安全容器架构工业机器人控制器设计方法 |
CN116483580A (zh) * | 2022-09-29 | 2023-07-25 | 陕西震旦纪信息技术有限公司 | 基于Kubernetes的服务器运算资源调度系统与方法 |
CN117056061A (zh) * | 2023-10-13 | 2023-11-14 | 浙江远算科技有限公司 | 一种基于容器分发机制的跨超算中心任务调度方法和系统 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090217272A1 (en) * | 2008-02-26 | 2009-08-27 | Vita Bortnikov | Method and Computer Program Product for Batch Processing |
US8024733B2 (en) * | 2004-05-13 | 2011-09-20 | International Business Machines Corporation | Component model for batch computing in a distributed object environment |
CN103514036A (zh) * | 2012-06-20 | 2014-01-15 | 中国银联股份有限公司 | 一种用于事件触发和批量处理的调度系统和方法 |
CN104541247A (zh) * | 2012-08-07 | 2015-04-22 | 超威半导体公司 | 用于调整云计算系统的系统和方法 |
CN108519911A (zh) * | 2018-03-23 | 2018-09-11 | 上饶市中科院云计算中心大数据研究院 | 一种基于容器的集群管理系统中资源的调度方法和装置 |
CN108920259A (zh) * | 2018-03-30 | 2018-11-30 | 华为技术有限公司 | 深度学习作业调度方法、系统和相关设备 |
CN109086407A (zh) * | 2018-08-01 | 2018-12-25 | 华东师范大学 | 面向分布式内存数据库的多流水线调度方法 |
US10296377B1 (en) * | 2016-09-23 | 2019-05-21 | Amazon Technologies, Inc. | Batch job execution using compute instances |
CN109960585A (zh) * | 2019-02-02 | 2019-07-02 | 浙江工业大学 | 一种基于kubernetes的资源调度方法 |
CN110795219A (zh) * | 2019-10-24 | 2020-02-14 | 华东计算技术研究所(中国电子科技集团公司第三十二研究所) | 适用于多种计算框架的资源调度方法及系统 |
CN111045791A (zh) * | 2019-12-16 | 2020-04-21 | 武汉智领云科技有限公司 | 一种大数据容器化中心调度系统和方法 |
CN111209077A (zh) * | 2019-12-26 | 2020-05-29 | 中科曙光国际信息产业有限公司 | 深度学习框架设计方法 |
-
2020
- 2020-12-29 CN CN202011587257.3A patent/CN112286671B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8024733B2 (en) * | 2004-05-13 | 2011-09-20 | International Business Machines Corporation | Component model for batch computing in a distributed object environment |
US20090217272A1 (en) * | 2008-02-26 | 2009-08-27 | Vita Bortnikov | Method and Computer Program Product for Batch Processing |
CN103514036A (zh) * | 2012-06-20 | 2014-01-15 | 中国银联股份有限公司 | 一种用于事件触发和批量处理的调度系统和方法 |
CN104541247A (zh) * | 2012-08-07 | 2015-04-22 | 超威半导体公司 | 用于调整云计算系统的系统和方法 |
US10296377B1 (en) * | 2016-09-23 | 2019-05-21 | Amazon Technologies, Inc. | Batch job execution using compute instances |
CN108519911A (zh) * | 2018-03-23 | 2018-09-11 | 上饶市中科院云计算中心大数据研究院 | 一种基于容器的集群管理系统中资源的调度方法和装置 |
CN108920259A (zh) * | 2018-03-30 | 2018-11-30 | 华为技术有限公司 | 深度学习作业调度方法、系统和相关设备 |
CN109086407A (zh) * | 2018-08-01 | 2018-12-25 | 华东师范大学 | 面向分布式内存数据库的多流水线调度方法 |
CN109960585A (zh) * | 2019-02-02 | 2019-07-02 | 浙江工业大学 | 一种基于kubernetes的资源调度方法 |
CN110795219A (zh) * | 2019-10-24 | 2020-02-14 | 华东计算技术研究所(中国电子科技集团公司第三十二研究所) | 适用于多种计算框架的资源调度方法及系统 |
CN111045791A (zh) * | 2019-12-16 | 2020-04-21 | 武汉智领云科技有限公司 | 一种大数据容器化中心调度系统和方法 |
CN111209077A (zh) * | 2019-12-26 | 2020-05-29 | 中科曙光国际信息产业有限公司 | 深度学习框架设计方法 |
Non-Patent Citations (2)
Title |
---|
唐瑞: "基于Kubernetes的容器云平台资源调度策略研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
灵雀云: "Coursera如何用docker完成批处理作业", 《WWW.DOCKONE.IO/M/ARTICLE/939》 * |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112948097A (zh) * | 2021-04-15 | 2021-06-11 | 哈工大机器人(合肥)国际创新研究院 | 一种iec61499的功能块执行调度方法及装置 |
CN112948097B (zh) * | 2021-04-15 | 2022-10-14 | 哈工大机器人(合肥)国际创新研究院 | 一种iec61499的功能块执行调度方法及装置 |
CN114095513A (zh) * | 2021-11-26 | 2022-02-25 | 苏州盛科科技有限公司 | 有限带宽场景下转发流量和镜像流量调度的方法及应用 |
CN114095513B (zh) * | 2021-11-26 | 2024-03-29 | 苏州盛科科技有限公司 | 有限带宽场景下转发流量和镜像流量调度的方法及应用 |
CN116483580A (zh) * | 2022-09-29 | 2023-07-25 | 陕西震旦纪信息技术有限公司 | 基于Kubernetes的服务器运算资源调度系统与方法 |
CN116483580B (zh) * | 2022-09-29 | 2024-05-28 | 陕西震旦纪信息技术有限公司 | 基于Kubernetes的服务器运算资源调度系统与方法 |
CN115617006A (zh) * | 2022-12-16 | 2023-01-17 | 广州翼辉信息技术有限公司 | 基于分布式安全容器架构工业机器人控制器设计方法 |
CN117056061A (zh) * | 2023-10-13 | 2023-11-14 | 浙江远算科技有限公司 | 一种基于容器分发机制的跨超算中心任务调度方法和系统 |
CN117056061B (zh) * | 2023-10-13 | 2024-01-09 | 浙江远算科技有限公司 | 一种基于容器分发机制的跨超算中心任务调度方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN112286671B (zh) | 2021-03-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112286671B (zh) | 一种容器化批处理作业调度方法、装置和计算机设备 | |
CN107291547B (zh) | 一种任务调度处理方法、装置及系统 | |
Gill et al. | The design and performance of a real-time CORBA scheduling service | |
CN110888743B (zh) | 一种gpu资源使用方法、装置及存储介质 | |
CN110489213B (zh) | 一种任务处理方法及处理装置、计算机系统 | |
US20060206894A1 (en) | Method of scheduling jobs using database management system for real-time processing | |
US6732139B1 (en) | Method to distribute programs using remote java objects | |
CN111338791A (zh) | 集群队列资源的调度方法、装置、设备及存储介质 | |
CN109358956B (zh) | 服务调用方法 | |
CN111104208B (zh) | 进程调度管理方法、装置、计算机设备及存储介质 | |
KR102338849B1 (ko) | 실시간 운영 체제에서 스택 메모리 관리를 제공하는 방법 및 시스템 | |
CN110427258B (zh) | 基于云平台的资源调度控制方法及装置 | |
CN112256417B (zh) | 一种数据请求处理方法、装置及计算机可读存储介质 | |
CN110427257A (zh) | 多任务调度方法、装置及计算机可读存储介质 | |
WO2024119764A1 (zh) | 一种任务调度方法、装置及电子设备和存储介质 | |
CN114625533A (zh) | 分布式任务调度方法、装置、电子设备及存储介质 | |
CN117149414A (zh) | 一种任务处理方法、装置、电子设备及可读存储介质 | |
CN115686805A (zh) | Gpu资源共享的方法和装置、调度gpu资源共享的方法和装置 | |
CN111709723A (zh) | Rpa业务流程智能处理方法、装置、计算机设备和存储介质 | |
CN112948096A (zh) | 一种批量调度方法、装置和设备 | |
CN116414581A (zh) | 基于线程池和Avl树的多线程时间同步事件调度系统 | |
CN112114958A (zh) | 资源隔离方法、分布式平台、计算机设备和存储介质 | |
CN116069500A (zh) | 一种模型训练任务处理方法、装置、电子设备及可读介质 | |
CN115686782A (zh) | 基于固态硬盘的资源调度方法、装置、电子设备及存储介质 | |
CN111556126B (zh) | 模型管理方法、系统、计算机设备和存储介质 |
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 |