掌桥专利:专业的专利平台
掌桥专利
首页

一种资源调度方法、装置及设备

文献发布时间:2024-04-18 19:58:26


一种资源调度方法、装置及设备

技术领域

本申请涉及通信技术领域,尤其涉及一种资源调度方法、装置及设备。

背景技术

云数据中心的出现,促使用户可以通过租用云数据中心的资源的方式在“云端”创建属于自己的计算实例。用户为该计算实例部署任务,以满足各种不同的计算需求。这些计算实例所占用的资源实际上是云数据中心中的服务器的资源。例如,计算实例的处理器为服务器中的处理器,计算实例的核是服务器中处理器的核。

目前云数据中心中服务器处理器中核的计算能力都是一致的,也就是说服务器中处理器的核的类型是一样的。故而,计算实例一旦创建完成,该计算实例的核数就不会发生变化的。该计算实例的核为该计算实例提供计算能力始终是不变的。

发明内容

本申请提供一种资源调度方法、装置及设备,用以在计算设备中包括多种不同类型的核的场景下配置计算实例。

第一方面,本申请实施例提供了一种资源调度方法,方法可以由调度装置执行,该调度装置可以部署在计算设备上,该调度装置能够在该计算设备的第一计算实例的运行过程中更新该第一计算实例的配置,实现针对该第一计算实例的核的调度。在该计算设备中,计算设备的处理器的物理核包括多种类型的物理核,这里以该多种类型的物理核包括第一物理核和第二物理核为例进行说明,当然,该多种类型的物理核中除了第一物理核和第二物理核之外还可以包括其他类型的物理核。该多种类型的物理核的调度方式与第一物理核和第二物理核的调度方式类似,这里仅是以第一物理核和第二物理核的调度方式为例进行说明。在该方法中,调度装置在确定需要对第一计算实例的配置进行更新的情况下,调度装置可以获取计算设备的处理器包括的物理核的状态参数以及资源分配策略,物理核的状态参数描述了物理核的工作情况。资源分配策略描述了在进行物理核调度时需要遵循的策略。调度装置可以基于计算设备的处理器包括的物理核的状态参数和资源分配策略,获取第一计算实例的配置方案 (该配置方案对应于本申请实施例中的第二配置方案),配置方案指示第一计算实例包括的第一物理核和第二物理核的数量;调度装置在获取该配置方案后,可以根据第一计算实例的配置方案更新第一计算实例的配置。第一计算实例包括的第一物理核指的是该第一计算实例所占用的第一物理核。第一计算实例包括的第二物理核指的是该第一计算实例所占用的第二物理核。

通过上述方法,调度装置在计算实例运行过程中更新计算实例的配置,使得计算实例所占用的不同类型的物理核的数量发生变化,能够动态的改变该计算实例所能提供的计算能力,这样能够保证计算实例所能提供的计算能力与其需要执行的任务的计算量更加匹配,也能够保证计算设备中的物理核能够被有效利用。

在一种可能的实现方式中,调度装置确定需要对第一计算实例的配置进行更新的场景有许多种,这里仅示例性的介绍其中几种。

第一种、计算资源需求量与第一计算实例提供的计算能力不匹配。

其中,计算资源需求量指示运行在第一计算实例上的任务对计算资源的需求量。第一计算实例提供的计算能力是指该第一计算实例所占用的物理核的计算能力。

在这种场景中,计算资源需求量与第一计算实例提供的计算能力不匹配可以是该计算实例中任务的计算资源的需求量与当前执行该任务的物理核的计算能力不匹配。如任务的计算资源的需求量大于与当前执行该任务的物理核的计算能力,又如,任务的计算资源的需求量小于与当前执行该任务的物理核的计算能力。

第二种、计算设备中空闲的物理核不能满足待创建的第二计算实例的资源需求。第二计算实例的资源需求是指该第二计算实例所需占用的不同类型的物理核的数量。

第三种、该计算设备中一个或多个物理核的资源利用率低于利用率阈值。

在该计算设备中可以对每一种类型的物理核设置利用率阈值,不同类型的物理核的利用率阈值可以相同也可以不同。当计算设备中一个或多个物理核的资源利用率低于对应的类型的利用率阈值时,说明该物理核并未高效运行,可能存在资源浪费的情况。

通过上述方法,调度装置可以在不同的场景下对第一计算实例的配置进行更新,有效地扩展了应用范围。

在一种可能的实现方式中,调度装置在获取第一计算实例的配置方案时,可以改变该第一计算实例需要占用的不同类型的物理核的数量。在前述所描述的第一种场景中,可以根据该任务的计算资源需求量确定计算能力与该任务的计算资源需求量相匹配的物理核,将该物理核作为第一计算实例需要占用的物理核,还可以将当前执行该任务的物理核作为第一计算实例不需要占用的物理核。在前述所描述的第二种场景中,可以调整该第一计算实例所占用不同类型的物理核的数量,以使得调整后的、该计算设备中空闲的物理核能够满足第二计算实例的资源需求。在前述所描述的第三种场景中,若第一计算实例所占用的物理核包括目标物理核,该目标物理核的资源利用率低于利用率阈值,调度装置可以将目标物理核的类型由第一物理核调整为第二物理核,第一物理核的计算能力大于第二物理核的计算能力。

通过上述方法,调度装置在不同场景下,可以采用相应的方式获取第一计算实例的配置方案。

在一种可能的实现方式中,调度装置在更新第一计算实例的配置之后,能够为第一计算实例占用的物理核分配任务,也即可以为第一计算实例占用的第一物理核或第二物理核配置所需执行的任务。

通过上述方法,不同类型的物理核可以执行与物理核的计算能力相匹配的任务,保证该物理核能够高效运行,提高任务的执行效率。

在一种可能的实现方式中,调度装置在为第一计算实例占用的第一物理核或第二物理核配置所需执行的任务时,可以先获取任务的计算资源需求量,任务的计算资源需求量是指运行在第一计算实例上的任务对计算资源的需求量,能表征该任务的计算量。对计算资源的需求量在一定程度上可以反映出指示执行任务的物理核所需具备的计算能力。调度装置可以根据任务的计算资源需求量确定执行任务的第一物理核或第二物理核。

通过上述方法,任务的计算资源需求量与执行该任务的物理核的计算能力相匹配,保证了任务分配的准确性。

在一种可能的实现方式中,任务的计算资源需求量是根据任务在运行过程中计算设备的性能参数确定的。

通过上述方法,能够利用计算设备中已有的一些性能参数较为方便的确定出任务的计算资源需求量。

第二方面,本申请实施例还提供了一种调度装置,该调度装置具有实现上述第一方面的方法实例中行为的功能,有益效果可以参见第一方面的描述此处不再赘述。功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的模块。在一个可能的设计中,装置的结构中包括物理核调度单元,该物理核调度单元可以包括确定单元、获取单元以及配置单元。可选的,该装置还可以包括任务调度单元,这些单元可以执行上述第一方面方法示例中的相应功能,具体参见方法示例中的详细描述,此处不做赘述。

第三方面,本申请实施例还提供了一种计算设备,该装置具有实现上述第一方面的方法实例中实力配置装置的行为的功能,有益效果可以参见第一方面的描述此处不再赘述。计算设备的结构中包括处理器和存储器,处理器被配置为支持调度装置执行上述第一方面方法中相应的功能。存储器与处理器耦合,其保存通信装置必要的程序指令和数据。通信装置的结构中还包括通信接口,用于与其他设备进行通信。

第四方面,本申请还提供一种计算机可读存储介质,计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述第一方面以及第一方面的各个可能的设计中的方法。

第五方面,本申请还提供一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面以及第一方面的各个可能的设计中的方法。

第六方面,本申请还提供一种计算机芯片,芯片与存储器相连,芯片用于读取并执行存储器中存储的软件程序,执行上述第一方面以及第一方面的各个可能的实现方式中的方法。

附图说明

图1为本申请提供的一种计算设备的结构示意图;

图2为本申请提供的一种另一种计算设备的结构示意图;

图3~图4为本申请提供的一种资源调度方法示意图;

图5为本申请提供的一种调度装置的结构示意图。

具体实施方式

如图1所示,为本申请实施例提供的一种计算设备的结构示意图,计算设备100中包括总线101、处理器102、通信接口103以及存储器104。处理器102、存储器104和通信接口103之间通过总线101通信。

其中,处理器102可以为通用处理器,例如中央处理器(central processingunit,CPU),或者CPU和硬件芯片的组合。上述硬件芯片可以是专用集成电路(application-specific integrated circuit,ASIC)、可编程逻辑器件(programmable logic device,PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(complex programmable logicdevice,CPLD)、现场可编程逻辑门阵列(field-programmable gate array,FPGA)、通用阵列逻辑(generic array logic, GAL)或其任意组合。

本申请实施例中并不限定该计算设备100中处理器102的数量,该计算设备100可以包括一个处理器102,也可以包括多个处理器102。

对于任一处理器102,该处理器102可以包括一个或多个核(core)。核是处理器102中承担计算功能的主要单元。当一个处理器102包括多个核时,该多个核可以为类型相同的多个核,也可以为类型不同的核。在本申请实施例中核的类型主要基于核的性能(核的性能表现在核的计算能力、核占用的面积等方面)确定的。性能相同的核为类型相同的核,性能不同的核为类型不同的核。不同处理器102所包括的核的类型可以相同,还可以不同。在本申请实施例中,该计算设备100所有核中至少存在两种类型的核。

存储器104可以包括易失性存储器(volatile memory),例如随机存取存储器(random access memory,RAM)。存储器104还可以包括非易失性存储器(non-volatilememory,NVM),例如只读存储器(read-only memory,ROM),快闪存储器,硬盘(hard diskdrive,HDD)或固态硬盘(solid-state drive,SSD)。存储器104还可以包括上述种类的组合。

如图2所示,为本申请实施例中计算设备的另一种结构示意图。图2中从软件层面对计算设备100进行了划分,计算设备100上允许部署一个或多个计算实例110,该计算设备110 上还可以包括调度装置120。

在该计算设备100中,以该计算设备100的硬件组件(该硬件组件可以为如图1所示计算设备100中的各个组成部分)为基础,可以实现虚拟化。通过虚拟化,允许该计算设备100 上部署计算实例110。该计算实例110可以为虚拟机,也可以为容器,该计算实例110也可以为基于该计算设备100的硬件组件的虚拟化形成的软件模块。

计算设备100向部署在该计算设备100上的计算实例110提供资源。计算设备100中的物理资源(如处理器、存储器、通信接口)可以通过虚拟化的方式,转换为一些虚拟资源,以供计算实例110使用,也即物理资源与虚拟资源之间存在对应关系。例如,计算设备100的处理器102可以虚拟化为一个或多个虚拟处理器(virtual central processing unit,VCPU),计算设备100上的任一计算实例110可以占用VCPU,利用VCPU完成运算,一个VCPU实际上与该计算设备100处理器的一部分计算资源。计算设备100的存储器104可以虚拟化为一个或多个虚拟存储器,计算设备100上的任一计算实例110可以占用虚拟存储器,实现数据存储,与VCPU配合完成运算,虚拟存储器实际上为计算设备100的存储器104中的一部分。

具体到处理器的核为粒度的虚拟化,当计算设备100的处理器102支持超线程,如一个处理器102的核能够支持两个或更多超线程,也即该处理器102支持线程级别的并行计算,计算设备100的处理器102的核上的一个超线程可以虚拟化为一个虚拟处理器,计算实例110 利用该超线程完成运算,虚拟处理器实际上与该计算设备100处理器102的一个核上的一个超线程对应,也即一个虚拟处理器即为一个超线程。

以处理器102可以支持两个超线程为例,当要求计算实例中包括4个虚拟处理器,那么这4个虚拟处理器即为四个超线程,该4个虚拟处理器可以与该处理器102的两个核关联,由该两个核中每个核的两个超线程虚拟为2个虚拟处理器。该4个虚拟处理器可以与该处理器102的四个核关联,该四个核中每个核的一个超线程虚拟为1个虚拟处理器。无论是该4 个虚拟处理器与该处理器102的两个核关联,还是该4个虚拟处理器与该处理器102的四个核关联,虚拟处理器与处理器102中的核总是存在映射关系。

当计算设备100的处理器102不支持超线程,计算设备100的处理器102的一个核可以虚拟化为一个虚拟处理器,计算实例110利用该核完成运算,虚拟处理器实际上与该计算设备100处理器102的一个核对应,也即一个虚拟处理器即为处理器102的一个核。

可见,以核粒度的虚拟化可以使得计算设备100的处理器102的核虚拟化为计算实例110 的一个虚拟处理器,处理器102的核与虚拟处理器之间存在映射关系。在本申请实施例中为了方便说明,将处理器102的核称为物理核。

需要说明的是,处理器102的物理核与虚拟处理器之间存在映射关系并不是始终保持不变的,当计算实例的配置发生变化,如计算实例占用的物理核发生变化,处理器102的物理核与虚拟处理器之间的映射关系也会发生变化。

为了实现计算设备100中物理核调度,完成物理核到虚拟处理器的虚拟化,该计算设备 100上还可以部署调度装置120。

该调度装置110用于在创建计算实例120以及计算实例120运行过程中,实现计算实例 120的资源调度。该资源调度包括实现更新计算实例120的配置、虚拟处理器的任务分配。

在本申请实施例中计算实例120的配置方案描述了计算实例120所占用的物理资源,如物理核、内存(内存理解为存储器中的一种)等,更新计算实例120的配置也即更新该计算实例120的配置方案,在本申请实施例中将计算实例120创建时所依据的配置方案称为第一配置方案,在更新计算实例120的配置时所依据的配置方案称为第二配置方案。

在本申请实施例中,计算实例120配置的更新主要是为计算实例120所占用的物理核的变更。计算实例120所占用的物理核是该计算实例1200包括的物理核,是指与该计算实例 120中虚拟机处理器102存在映射关系的物理核。

虚拟处理器的任务分配是指为虚拟处理器分配任务,以使虚拟处理器执行所分配的任务。由于虚拟处理器执行的任务为该虚拟处理器所映射到的物理核执行的任务,从实质上讲,虚拟处理器的任务分配可以理解为物理核的任务分配。

需要说明的是,在处理器102支持超线程,一个虚拟处理器为物理核上的超线程的情况中,虚拟处理器需要执行的任务是由该物理核上的超线程执行的,该超线程可以理解为物理核上计算资源,该超线程执行任务实质也是该超线程所在的物理核执行任务。

下面分别对创建计算实例120过程中以及计算实例120运行过程中,调度装置110所执行操作进行说明:

(1)、创建计算实例120过程中。

调度装置110能够监控计算设备100中物理资源的状态,如调度装置110可以确定该计算设备100中物理核的状态参数,还能够获取该计算设备100中计算实例120的资源分配策略。

调度装置110在创建计算实例120时,基于计算设备100中物理资源的状态和/或计算实例120的资源分配策略,获取该计算实例120的第一配置方案,根据该第一配置方案创建该计算实例120,该计算实例120的第一配置方案描述了该计算实例120所能占用的物理资源,如所能占用的物理核、内存大小等。调度装置110在配置了计算实例120后,计算实例120 创建完成。在创建计算实例120时,将物理核(或物理核上的超线程)映射为该计算实例120 的虚拟处理器,记录该虚拟处理器与物理核(或物理核上的超线程)之间的映射关系。

(2)、计算实例120运行过程中。

在计算实例120运行过程中,调度装置110还可以基于虚拟处理器的计算能力以及计算实例120需要执行的任务的计算资源需求量,将该计算实例120需要执行的任务分配给虚拟处理器,由该虚拟处理器执行所分配的任务。

该调度装置110还能够在计算实例120运行过程中,更新计算实例120的配置。如更新计算实例120所能占用不同类型的物理核的数量。调度装置110可以为该计算实例120设置第二配置方案,该第二配置方案描述了该计算实例120需要占用的资源,如计算实例120所能占用不同类型的物理核的数量。在当前计算设备100中空闲的物理资源能够支持计算实例120的第二配置方案的情况下,基于该第二配置方案重新配置计算实例120。在重新配置计算实例120时,变更虚拟处理器与物理核(或物理核上的超线程)的映射关系,实现虚拟处理器的重映射。例如,调度装置110可以将虚拟处理器与一个计算能力较弱的物理核(或物理核上的超线程)的映射关系变更为虚拟处理器与一个计算能力较强的物理核(或物理核上的超线程)的映射关系,以提升该虚拟处理器的计算能力。调度装置110可以将虚拟处理器与一个计算能力较强的物理核(或物理核上的超线程)的映射关系变更为虚拟处理器与一个计算能力较强的物理核(或物理核上的超线程)的映射关系,以降低该虚拟处理器的计算能力。

在变更了虚拟处理器与物理核(或物理核上的超线程)的映射关系之后,该调度装置110 还可以基于虚拟处理器的计算能力以及任务的计算资源需求量,重新分配虚拟处理器需执行的任务,也即实现虚拟处理器的任务分重分配。

为了方便说明,在下文中并不特别区分虚拟处理器与物理核之间的映射关系以及虚拟处理器与物理核上超线程之间的映射关系这两种映射关系。这两种映射关系在下述说明中将统一称为虚拟处理器与物理核之间的映射关系。但应需要理解的,映射关系所指示的内容主要取决与计算设备100中处理器102的自身属性。当处理器102支持超线程(或虚拟处理器为一个超线程时),映射关系为虚拟处理器与物理核上超线程之间的映射关系。当处理器102不支持超线程,映射关系为虚拟处理器与物理核之间的映射关系。

该调度装置110可以是运行在计算设备100中的软件模块。从功能角度,对该调度装置 110进行划分,如图2所示,该调度装置110包括物理核调度单元111、以及任务调度单元112。

物理核调度单元111可以实现计算实例120的资源调度,在本申请实施例中,物理核调度单元111主要可以实现计算实例120的物理核的调度。如该物理核调度单元111在创建计算实例120时,基于计算设备100中物理核的状态参数和/或计算实例120的资源分配策略,获取该计算实例120的第一配置方案,基于该第一配置方案创建计算实例120。又如,该物理核调度单元111在计算实例120运行过程中,更新计算实例120的配置,如根据计算设备100中物理核的状态参数和/或计算实例120的资源分配策略获取该计算实例120设置第二配置方案,利用第二配置方案更新计算实例120的配置。

也就是说,调度装置110中关于计算实例120的配置中物理核的调度操作均也可以有物理核调度单元111执行。该物理核调度单元111可以运行在该计算设备100中实现虚拟化技术的核心模块中。例如,物理核调度单元111可以作为hypervisor中的一部分。又例如,该物理核调度单元111可以作为该计算设备100上主机操作系统(host operating system,host OS) 中的一部分。

任务调度单元112可以实现虚拟处理器的任务分配(其中,任务分配包括任务重分配),如该任务调度单元112在计算实例120创建后,为计算实例120的虚拟处理器分配任务。又如,在计算实例120的配置更新(虚拟处理器与物理核的映射关系变更)的情况下,重新为计算实例120的虚拟处理器分配任务。一个计算实例120可以对应一个任务调度单元112,该计算实例120上任务分配相关的操作均可以由该任务调度单元112执行。任务调度单元112可以运行在所对应的计算实例120中。

下面结合附图3对本申请实施例提供的一种物理资源调度方法进行说明,在图3所示的实施例中,以计算设备100中的物理核包括两种类型的物理核为例进行说明。为了区分处理器102中这两种类型的物理核,可以将该两种类型的物理核中计算能力较强的物理核称为第一物理核,将该两种类型的物理核中计算能力较弱的物理核称为第二物理核。

本申请实施例所提供的方法也同样适用于计算设备100中的物理核包括两种以上的类型的物理核的场景,具体实施方式与计算设备100中的物理核包括两种类型的物理核场景下的实施方式类似。

步骤301:物理核调度单元111接收创建请求,该创建请求用于请求创建计算实例120,该计算请求中携带了计算实例120的规格。可选的,该创建请求还可以携带有计算实例120 的优先级。计算实例120的规格描述了计算实例120所需占用的资源。该资源包括虚拟处理器的数量,还可以包括内存的大小等。虚拟处理器的数也可以称为该计算实例120的核数。

值得注意的是,计算实例120的核数实质上是物理核的核数或超线程的数量。

当用户需要创建计算实例120,以利用计算实例120完成一些任务时,用户可以触发生成创建请求。例如,用户侧部署有客户端,用户可以通过该客户端与计算设备100建立连接,用户通过操作该客户端配置需要创建的计算实例120的规格以及该计算实例120的优先级,客户端在检测到用户的操作后可以生成创建请求,将该创建请求发送给计算设备100。

在本申请实施例中,计算实例120的优先级可以存在如下两种配置方式:

第一种、计算实例120的优先级是根据用户自身属性确定的。

也就是说,计算实例120的优先级是与用户自身的属性有关的,一个用户所需要创建的计算实例120均是统一的。只要请求创建计算实例120的用户确定,该需要创建的计算实例 120的优先级也就确定了。

场景1、该用户自身属性可以为用户的等级。不同的用户可以有不同的等级。例如,用户可以通过支付不同的费用选择成为普通用户、重要用户或特别重要用户。不同等级的用户所具备的权限不同,所能创建的计算实例120的优先级不同。等级较高的用户所请求创建的计算实例120的优先级较高,等级较低的用户所创建的计算实例120的优先级较低。

场景2、该用户自身属性可以为用户的类型。用户的类型可以有多种。如用户类型可以为个人用户、企业级用户等。不同类型的用户请求创建的计算实例120需执行的任务可能不同。例如,企业级用户所请求创建的计算实例120需执行的任务可能需完成大量的计算,该计算实例120的优先级可以较高;个人用户所请求创建的计算实例120需执行的任务需完成的计算相对较小。该计算实例120的优先级可以较低。

第二种、计算实例120的优先级是用户选择的。

用户可以在请求创建计算实例120时,选择该计算实例120的规格以及优先级。也即在客户端侧可以向用户提供不同优先级的计算实例120,以供用户选择。

步骤302:物理核调度单元111在接收到创建请求后,获取第一配置策略。该第一配置策略包括下列的部分或全部:计算设备100中物理核的状态参数、预先配置的计算实例120 的资源分配策略。

其中,计算设备100中物理核的状态参数描述了物理核的工作情况,如该物理核是否被占用(也即是否已配置给计算实例120),又如,该物理核的时间片。物理核的时间片是指物理核被配置给计算实例120时,为物理核配置的执行该计算实例120的任务的时长。

物理核调度单元111部署在计算设备100上,可以检测该计算设备100的处理器102的状态参数。例如,在计算设备100运行的过程中,计算设备100的操作系统能够对计算设备100的各个硬件组件进行监控,如计算设备100的操作系统可以统计处理器102的状态参数。物理核调度单元111可以通过读取该操作系统所监控到的数据确定该计算设备100的处理器 102的状态参数。

具体到每个处理器102,物理核调度单元111还可以获知该处理器102中每个物理核的类型,也可以获知每个物理核的状态参数。例如,物理核调度单元111确定该处理器102中存在第一物理核以及第二物理核这两种类型的物理核,物理核调度单元111可以确定第一物理核的状态参数,如确定第一物理核是否被占用以及其时间片、确定第二物理核是否被占用以及其时间片。

计算实例120的资源分配策略描述了为计算实例120分配资源时需要遵循的策略。计算实例120的资源分配策略可以是预先配置给物理核调度单元111的,以便物理核调度单元111 在创建或更新计算实例120的资源时基于计算实例120的资源分配策略进行资源调度。

本申请实施例并不限定计算实例120的资源分配策略记录的内容。例如,计算实例120 的资源分配策略可以指示在资源调度时,为计算实例120优先分配计算能力较强的物理核(如第一物理核)。又例如,计算实例120的资源分配策略可以指示在资源调度时,为计算实例 120优先分配计算能力较弱的物理核(如第二物理核)。又例如,计算实例120的资源分配策略可以指示在资源调度时,是否考虑计算实例120的优先级。若考虑计算实例120的优先级,优先级高的计算实例120优先分配计算能力较强的物理核,或优先对优先级高的计算实例120 进行资源调度。

步骤303:物理核调度单元111基于第一配置策略和创建请求获取该计算实例120的第一配置方案。在本申请实施例中计算实例120的第一配置方案记录了该计算实例120能够占用的一种或多种类型的物理核的数量。计算实例120的第一配置方案还可以记录该计算实例 120能够占用其他资源,如计算实例120所能占用的内存大小。

物理核调度单元111可以从创建请求中获取该计算实例120的规格,如该计算实例120 的核数,还可以从创建请求中获知计算实例120的优先级。物理核调度单元111可以从第一配置策略获知当前空闲的第一物理核的数量以及空闲的第二物理核的数量,还可以获知计算实例120的资源分配策略。

以计算实例120的规格中记录的核数是4,计算实例120的优先级为最高优先级。若计算实例120的资源分配策略指示需要按照计算实例120的优先级进行资源分配。物理核调度单元111可以尽可能多的为该计算实例120分配第一物理核。如当前存在3个空闲的第一物理核,10个空闲的第二物理核,物理核调度单元111可以为该计算实例120分配3个第一物理核,1个第二物理核。

步骤304:物理核调度单元111根据该计算实例120的第一配置方案创建计算实例120。

物理核调度单元111在创建计算实例120时,将该计算实例120的第一配置方案所记录的物理核配置给计算实例120,并建立物理核与虚拟处理器的映射关系。物理核调度单元111 可以将该物理核与虚拟处理器的映射关系发送给任务调度单元112。

通过步骤301~304,调度装置110完成了计算实例120的创建。在计算实例120创建完成后,该计算实例120需要执行一个或多个任务。计算实例120需要执行的一个或多个任务可以是用户在计算实例120创建完成后配置给计算实例120的。例如,在计算实例120中,用户可以通过触发该计算实例120执行二进制程序或脚本启动任务。

任务调度单元112在检测到用户所配置的一个或多个任务后,为各个虚拟处理器分配任务。由于任务调度单元112在初始接收到该一个或多个任务后,并不能够明确确定该一个或多个任务运行时的计算量。故而,在初始接收到该一个或多个任务的情况下,任务调度单元 112为各个虚拟处理器分配任务的方式较为灵活。

例如,任务调度单元112可以按照将该一个或多个任务的接收顺序优先将任务配置给计算实例120中与第一物理核存在映射关系的虚拟处理器。在不存在与第一物理核存在映射关系的虚拟处理器的情况下,再将任务配置给计算实例120中与第二物理核存在映射关系的虚拟处理器,除了为每个任务配置虚拟处理器,任务调度单元112还可以配置虚拟处理器执行该任务的时间片(实质上配置虚拟处理器执行该任务的时间片是为与该虚拟处理器存在映射关系的物理核配置时间片),也即配置该虚拟处理器执行该任务的时长。又例如,任务调度单元112随机为该一个或多个任务配置执行每个任务的虚拟处理器。任务调度单元112在为每个虚拟处理器配置了任务以及相应的时间片后,虚拟处理器可以在相应的时间片内执行任务。

当该一个或多个任务在计算实例120上运行一段时间后,在计算实例120中可能会存在任务执行效率较差的情况,如该任务在运行过程中运算缓慢、或出错次数增多。任务的执行效率较差的情况主要是因为任务的计算资源需求量与当前执行该任务的虚拟处理器的计算能力不匹配。例如,当一个计算量大、时延要求要高的任务运行在第二物理核上时,由于第二物理核的计算能力相对弱,可能在无法在一定时间内完成计算。为此,任务调度单元112在计算实例120运行过程中,能够为该一个或多个任务重新配置虚拟处理器。在步骤305~308 中,以为一个任务重新配置虚拟处理器为例进行说明,当该计算实例120上存在多个任务,为多个任务重新配置虚拟处理器的方式与为一个任务重新配置虚拟处理器的方式类似,具体可参见下文的相关描述。

步骤305:任务调度单元112根据该任务的执行状态确定任务的计算资源需求量。任务的计算资源需求量表征了运行在计算实例的任务对计算资源的需求量。

任务调度单元112可以监控该任务在被执行的过程中计算设备100的性能参数,该性能参数能够反映出该任务的执行状态。

本申请实施例中并不限定性能参数的内容。该性能参数包括但不限于:计算实例120所占用各个物理核的利用率、该任务相关程序指令在执行过程中的每个时钟周期值执行的指令总数(instruction per clock,IPC)指标、缓存指令未命中(cache miss)数量指标(cache miss 数量指标描述了未在缓存中读到指令的次数)、分支预测失败次数指标(分支预测失败次数指标描述了在预测分支时的失误次数)、中断次数指标(在按顺序执行指令时,指令被中断执行的次数)。这些性能参数可以是任务调度单元112在该计算设备100的物理核执行该任务时记录的日志中读取的。上述列举性能参数仅是示例性的说明,凡是能够反映出该任务的执行状态的参数均可以作为性能参数。

任务调度单元112在确定了性能参数时,也可以进一步确定该任务的执行状态。例如,当IPC指标较大(如超过设定的第一值)、Cache Miss数量指标较小(如低于设定的第二值)、分支预测失败次数指标较小(如低于设定的第三值)、或中断次数指标较小(如低于设定的第四值),说明该任务被高效的执行,该任务的执行效率较高。当IPC指标较小(如低于设定的第五值)、Cache Miss数量指标较大(如高于设定的第六值)、分支预测失败次数指标较大(如超过设定的第七值)、或中断次数指标较大(如高于设定的第八值),说明该任务的执行较缓慢或者总是存在错误,该任务的执行效率低。

任务调度单元112可以根据该任务的执行状态计算该任务所需的计算资源需求量。例如,这里以IPC指标确定任务的计算资源需求量为例,预先可以为不同类型的物理核设置IPC阈值。例如,第一物理核的IPC阈值为6,第二物理核的IPC阈值为4。执行某一个任务的IPC 指标达到(这里的达到是指大于或等于)某一种类型的物理核的IPC阈值、或达到某一种类型的物理核的IPC阈值与设定百分比的乘积时,可以认为该任务的计算资源需求量为该种类型的物理核的计算能力,也即执行该任务的虚拟处理器需要与该种类型的物理核存在映射关系,也即执行该任务的虚拟处理器要具备该种类型的物理核的计算能力。又例如,任务调度单元112可以通过预设的计算公式或算法,根据性能参数计算出较为精确到的该任务所需的计算资源需求量。示例性的,任务调度单元112可以通过执行该任务的物理核的利用率与该物理核的计算能力的乘积获得该任务的计算资源需求量。

步骤306:任务调度单元112获取当前该计算实例120上各个虚拟处理器的计算能力。一个虚拟处理器的计算能力为与该物理核存在映射关系的物理核的计算能力。

任务调度单元112根据该虚拟处理器与物理核的映射关系确定该计算实例120上各个虚拟处理器的计算能力。当物理核的类型确定的情况下,该物理核的计算能力也就确定了。任务调度单元112执行步骤306的实质也是在确定各个虚拟处理器所映射的物理核的计算能力。在本申请实施例中,可以采用量化的方式对物理核的计算能力进行表征。该量化的标准可以与该任务的计算资源需求量的量化标准一致。

例如,可以将第一物理核的计算能力统一设置为1000分,将第二物理核的计算能力统一设置为500分。当虚拟处理器与第一物理核存在映射关系时,虚拟处理器的计算能力即为1000 分。当虚拟处理器与第二物理核存在映射关系时,虚拟处理器的计算能力即为500分。

步骤307:任务调度单元112根据该任务的计算资源需求量和各个虚拟处理器的计算能力确定执行该任务的虚拟处理器。

任务调度单元112在确定了该任务的计算资源需求量和各个虚拟处理器的计算能力后,可以确定当前执行该任务的虚拟处理器的计算能力是否与任务的计算资源需求量匹配。

例如,任务调度单元112可以确定执行该任务的虚拟处理器的计算能力与任务的计算资源需求量的差值是否在预设范围内。若执行该任务的虚拟处理器的计算能力与任务的计算资源需求量的差值处于预设范围,则说明执行该任务的虚拟处理器的计算能力与任务的计算资源需求量匹配,任务调度单元112不需要重新配置执行该任务的虚拟处理器。

若执行该任务的虚拟处理器的计算能力与任务的计算资源需求量的差值未处于预设范围,则说明执行该任务的虚拟处理器的计算能力与任务的计算资源需求量并不匹配,存在两种可能。

一种为执行该任务的虚拟处理器的计算能力远超过(也即大于)任务的计算资源需求量。如一个计算能力较强的虚拟处理器执行了一个计算量小、时延要求低的任务,容易造成资源浪费。在这种情况下,若该计算实例120中存在计算能力比当前执行该任务的虚拟处理器更小的虚拟处理器,任务调度单元112可以为该任务重新配置虚拟处理器,选择一个计算能力较比当前执行该任务的虚拟处理器更小的虚拟处理器执行该任务。当然,重新配置的虚拟处理器的计算能力应当是与任务的计算资源需求量匹配的。

另一种为执行该任务的虚拟处理器的计算能力远低于(也即小于)任务的计算资源需求量。如一个计算能力较弱的虚拟处理器执行了一个计算量大、时延要求高的任务,造成任务执行效率较低。在这种情况下,若该计算实例120中存在计算能力比当前执行该任务的虚拟处理器更大的虚拟处理器,任务调度单元112可以为该任务重新配置虚拟处理器,选择一个计算能力较比当前执行该任务的虚拟处理器更大的虚拟处理器执行该任务。重新配置的虚拟处理器的计算能力应当是与任务的计算资源需求量匹配的。

步骤308:任务调度单元112将任务配置给为该虚拟处理器。

任务调度单元112在为该任务重新配置了虚拟处理器之后,任务调度单元112可以在该虚拟处理器的时间片结束时,也即虚拟处理器不再执行其他任务时,将该任务分配给该重新配置的虚拟处理器,以使得该虚拟处理器能够高效的执行该任务。任务调度单元112也可以强制结束该虚拟处理器的时间片,将该任务分配给该虚拟处理器。任务调度单元112也在该任务已在该时间片内完成的情况下(也即在该时间片结束之前任务已完成),主动释放该时间片内剩余的时间,将该任务分配给该虚拟处理器。

在计算实例120运行过程中,调度装置110还可以动态的更新该计算实例120的配置,尤其是可以更新该计算实例120所占用的不同类型的物理核的数量。下面结合附图4对更新该计算实例120的配置的方式进行说明,图4中主要描述了更新该计算实例120所占用的不同类型的物理核的数量的方式。

如图4所述,为本申请实施例提供的一种资源调度方法,该方法包括如下步骤:

步骤401:物理核调度单元111确定需要更新计算实例120的配置。

在本申请实施例中,物理核调度单元111确定需要更新计算实例120的配置存在两种场景,一种为物理核调度单元111主动确定的,一种为任务调度单元112向物理核调度单元111 请求更新计算实例120的配置。

第一种。

物理核调度单元111主动确定需要更新计算实例120的配置的情况有许多。例如,当物理核调度单元111创建其他计算实例120时,发现当前计算设备100中空闲的第一物理核或第二物理核无法满足其他计算实例120的资源需求时,也即空闲的第一物理核或第二物理核的数量不满足该其他计算实例120对第一物理核或第二物理核的需求,不支持其他计算实例 120的创建。比如,其他计算实例120的优先级较高,但当前计算实例120中所有第一物理核已被占用了。又比如,其他计算实例120的优先级较低,但当前计算实例120中所有第二物理核已被占用了。又例如,物理核调度单元111可以通过检测计算设备100中物理核的状态参数,确定各个物理核的资源利用率。如发现执行某一任务的第一物理核的资源利用率在较长时间内都较低(低于某一利用率阈值),物理核调度单元111可以确定需要更新计算实例 120的配置,需要将该第一物理核切换为第二物理核。又如,发现执行某一任务的第二物理核的利用率在较长时间内都较高,已临近最高值,物理调度单元可以确定需要更新计算实例 120的配置,需要将该第二物理核切换为第一物理核。

第二种。

当任务调度单元112发现任务的计算资源需求量与执行该任务的虚拟处理器的计算能力不匹配时,任务调度单元112可以采用如步骤305~步骤308的方式,对任务进行重分配。若任务调度单元112在进行了任务重分配之后,仍存在任务的计算资源需求量与执行该任务的虚拟处理器的计算能力不匹配的情况,表明当前该计算实例120中各种类型的物理核的数量并不能较好的满足该计算实例120上需运行的任务的计算资源需求量。

任务调度单元112可以确定存在的任务的计算资源需求量与执行该任务的虚拟处理器的计算能力不匹配的任务数量,确定物理核调整需求,该物理核调整需求描述了对该计算实例 120中不同类型的物理核的调整方式,例如调整的第一物理核的数量(如需要增加的第一物理核的数量或需要减少的第一物理核的数量)或需要调整的第二物理核的数量(如需要增加的第二物理核的数量或需要减少的第二物理核的数量)。任务调度单元112向物理核调度单元 111发起资源变更请求。该资源变更请求中携带物理核调整需求。

举例来说,任务调度单元112发现计算实例120上运行的6个任务中存在4个任务存在任务的计算资源需求量与执行该任务的虚拟处理器的计算能力不匹配的情况,再经过任务重分配之后,仍存在2个任务的计算资源需求量与执行该任务的虚拟处理器的计算能力不匹配的情况。

当2个任务由与第二物理核的存在映射关系的虚拟处理器执行,该2个任务计算资源需求大于执行该任务的虚拟处理器的计算能力,说明当前需要将两个第二物理核变为两个第一物理核,也即需要增加两个第一物理核,或减少两个第二物理核。任务调度单元112可以向物理核调度单元111发起资源变更请求,该资源变更请求用于请求增加两个第一物理核或减少两个第二物理核。

当2个任务由与第一物理核的存在映射关系的虚拟处理器执行,该2个任务计算资源需求量小于执行该任务的虚拟处理器的计算能力,说明当前需要将两个第一物理核变为两个第二物理核,也即需要增加两个第二物理核,或减少两个第一物理核。任务调度单元112可以向物理核调度单元111发起资源变更请求,该资源变更请求用于请求增加两个第二物理核或减少两个第一物理核。

当然,当任务调度单元112发现任务的计算资源需求量与执行该任务的虚拟处理器的计算能力不匹配,也可以不再采用如步骤305~步骤308的方式,直接向物理核调度单元111发起资源变更请求。

需要说明的是,在前述说明中任务调度单元112直接将物理核调整需求携带在资源变更请求,这种一种显式的物理核调整需求携带方式。事实上,在实际应用中,任务调度单元112 可以在资源变更请求中携带隐式的物理核调整需求。例如,任务调度单元112可以在资源变更请求携带任务的计算资源需求量与执行该任务的虚拟处理器的计算能力不匹配的情况,如通过该资源变更请求指示任务的计算资源需求量,可选的,还可以指示执行该任务的虚拟处理器。当物理核调度单元111在接收到该资源变更请求后,可以采用与任务调度单元112确定物理核调整需求类似的方式确定物理核的调整方式。

步骤402:物理核调度单元111基于第二配置策略,获取该计算实例120第二配置方案。第二配置策略包括下列的部分或全部:计算设备100中物理核的状态参数、预先配置的计算实例120的资源分配策略、计算实例120的物理核调整需求。计算实例120的物理核调整需求可以是根据任务调度单元112发起的资源变更请求确定的。计算设备100中物理核的状态参数、预先配置的计算实例120的资源分配策略的说明可以参见前述内容,此处不再赘述。

若在步骤401中,物理核调度单元111主动确定需要更新计算实例120的配置,物理核调度单元111可以结合当前待创建的计算实例120的规格,以及该计算设备100中物理核的状态参数、和/或计算实例120的资源分配策略,调整该计算实例120不同类型的物理核的数量,获取该计算实例120第二配置方案。也就是说,物理核调度单元111可以通过调整该计算实例120不同类型的物理核的数量获得该计算实例120的第二配置方案。

举例来说,当前待创建的计算实例120的优先级较高,需要配置4个物理核,但当前计算设备100中仅存在4个第二物理核。而一个已创建的计算实例120的优先级机较低,该计算实例120的规格要求物理核的核数为5,物理核调度单元111在创建该计算实例120时为该计算实例120分配的4个第一物理核以及1个第二物理核。物理核调度单元111可以获取该已创建的计算实例120第二配置方案,减少该第一配置方案中已创建的计算实例120占用的第一物理核的数量,增加第二物理核的数量。如物理核调度单元111可以将该已创建的计算实例120占用的3个第一物理核调整为第二物理核。

需要说明的,本申请实施例并不限定该物理核调度单元111确定需要更新配置的计算实例120以及获取计算实例120第二配置方案的方式。

该物理核调度单元111在确定需要更新配置的计算实例120时,可以根据计算实例120 的优先级和/或计算实例120的配置方案(这里的配置方案是指该计算实例120当前的配置所依据的配置方案)中各种类型的物理核的数量确定需要更新配置的计算实例120。该物理核调度单元111可以选择计算实例120的优先级最低的计算实例120,且已占用了第一物理核的计算实例120作为需要更新配置的计算实例120。该物理核调度单元111也可以选择已创建的计算实例120中占用第一物理核最多的计算实例120,且优先级低于待创建的计算实例 120的计算实例120作为需要更新配置的计算实例120。该物理核调度单元111在确定需要更新配置的计算实例120时,也可以按照计算实例120的优先级进行排序,优先满足高优先级的计算实例120对不同类型的物理核的需求。在相同优先级的计算实例120中遵循公平的原则:每个计算实例120具备相同的资源获取权利。假设当前相同优先级的计算实例120中要求的核数为4个,相同优先级的计算实例120中均需已占用一个第一物理核。此时该相同的优先级中两个计算实例120同时要求增加一个第一物理核,而此时仅剩一个第一物理核,为了遵循公平原则,物理核调度单元111可以将仅剩的一个第一物理核将在两个计算实例120 中轮流调度,保证相同优先级的计算实例120对资源的获取能力相同。

该物理核调度单元111在获取计算实例120第二配置方案时,可以按设定的比例减少该计算实例120中所占用的第一物理核的数量,如物理核调度单元111可以减少50%的第一物理核。也可以按照设定值减少该计算实例120中所占用的第一物理核的数量,如物理核调度单元111可以减少3个的第一物理核。

若在步骤401中,任务调度单元112向物理核调度单元111请求获取计算实例120第二配置方案,物理核调度单元111会接收到来自任务调度单元112的资源变更请求,物理核调度单元111可以根据资源变更请求中携带的信息确定计算实例120的物理核调整需求。物理核调度单元111可以结合计算实例120的物理核调整需求,以及该计算设备100中物理核的状态参数、和/或计算实例120的资源分配策略,调整该计算实例120不同类型的物理核的数量,获取计算实例120第二配置方案。在这种情况下,物理核调度单元111可以根据该计算设备100中物理核的状态参数确定当前是否能够满足计算实例120的物理核调整需求,如确定当前该计算设备100中空闲的第一物理核是否满足计算实例120的物理核调整需求。若存在多个计算实例120的物理核调整需求,物理核调度单元111还可以参考计算实例120的优先级、该计算设备100中物理核的状态参数确定当前是否能够满足该多个计算实例120的物理核调整需求。物理核调度单元111可以优先获取优先级高的计算实例120第二配置方案,之后在获取优先级低的计算实例120的第二配置方案。在当前计算设备100中物理核的状态参数不能同时满足该多个计算实例120的物理核调整需求的情况下,物理核调度单元111也可以选择优先满足优先级高的计算实例120的物理核调整需求,也即物理核调度单元111可以在获取优先级高的计算实例120第二配置方案时,按照该计算实例120的物理核调整需求调整该计算实例120不同类型的物理核的数量,以获取计算实例120第二配置方案。

步骤403:物理核调度单元111基于计算实例120第二配置方案重新配置该计算实例120,实现虚拟处理器到物理核的重映射。

物理核调度单元111在执行步骤403时,可以将计算实例120第二配置方案所记录的物理核配置给计算实例120,并对物理核与虚拟处理器进行重映射,也即更新物理核与虚拟处理器的映射关系。物理核调度单元111可以将更新后的该物理核与虚拟处理器的映射关系发送给任务调度单元112。

当物理核调度单元111执行了步骤403之后,任务调度单元112可以从物理调度单元获知重映射后的虚拟机和与物理核的映射关系,任务调度单元112可以再次基于重映射后的虚拟机和与物理核的映射关系进行任务重分配。尤其是针对该计算实例120中多个任务中任务的计算资源需求量与执行该任务的虚拟处理器的计算能力不匹配的任务,任务调度单元112 可以对这些任务进行任务重分配,任务重分配的方式可以参见步骤305~307,此处不再赘述。

基于与方法实施例同一发明构思,本申请实施例还提供了一种调度装置,用于执行上述如图4所示的方法实施例中所述调度装置执行的方法,相关特征可参见上述方法实施例,此处不再赘述。如图5所示,为本申请实施例提供的一种调度装置,该调度装置110包括物理核调度单元111,物理核调度单元111包括确定单元1111、获取单元1112、以及配置单元1113。

确定单元1111,用于确定需要对第一计算实例的配置进行更新。

获取单元1112,用于基于计算设备的处理器包括的物理核的状态参数和资源分配策略,获取第一计算实例的配置方案,配置方案指示第一计算实例包括的第一物理核和第二物理核的数量。

配置单元1113,用于根据第一计算实例的配置方案更新第一计算实例的配置。

作为一种可能的实施方式,确定单元1111在任务的计算资源需求量大于第一计算实例提供的计算能力的情况下,确定需要对第一计算实例的配置进行更新。其中,任务的计算资源需求量指示运行在第一计算实例上的任务对计算资源的需求量。

作为一种可能的实施方式,确定单元1111可以在当计算设备中空闲的物理核不能满足待创建的第二计算实例的资源需求的情况下,确定需要对第一计算实例的配置进行更新。

作为一种可能的实施方式,确定单元1111可以在当计算实例中目标物理核的资源利用率低于利用率阈值时,确定需要对第一计算实例的配置进行更新。

作为一种可能的实施方式,物理核包括目标物理核,目标物理核的资源利用率低于利用率阈值,获取单元1112可以将目标物理核的类型由第一物理核调整为第二物理核,第一物理核的计算能力大于第二物理核的计算能力。

作为一种可能的实施方式,装置还包括任务调度单元112,任务调度单元112能够为第一计算实例包括的第一物理核或第二物理核配置所需执行的任务。

作为一种可能的实施方式,任务调度单元112可以获取任务的计算资源需求量,任务的计算资源需求量用于指示运行在第一计算实例上的任务对计算资源的需求量;任务调度单元 1112根据任务的计算资源需求量确定执行任务的第一物理核或第二物理核。

作为一种可能的实施方式,任务的计算资源需求量是根据任务在运行过程中计算设备的性能参数确定的。

需要说明的是,本申请实施例中对单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。在本申请的实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

上述实施例,可以全部或部分地通过软件、硬件、固件或其他任意组合来实现。当使用软件实现时,上述实施例可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载或执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以为通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集合的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质。半导体介质可以是固态硬盘(solid state drive,SSD)。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

相关技术
  • 一种资源调度方法及其装置和具有存储功能的装置
  • 资源调度的方法、装置和设备
  • 云计算集群资源调度方法、介质、装置和计算设备
  • 一种基于AI云的GPU资源调度方法和装置
  • 一种资源调度的方法及装置
  • 资源调度方法、资源调度装置、资源调度设备及存储介质
  • 资源调度方法、资源调度装置、电子设备和可读存储介质
技术分类

06120116487135