CN111966500B - 资源调度方法、装置、电子设备及存储介质 - Google Patents

资源调度方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN111966500B
CN111966500B CN202010932774.3A CN202010932774A CN111966500B CN 111966500 B CN111966500 B CN 111966500B CN 202010932774 A CN202010932774 A CN 202010932774A CN 111966500 B CN111966500 B CN 111966500B
Authority
CN
China
Prior art keywords
node
resource
score
scheduling
preselected
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
Application number
CN202010932774.3A
Other languages
English (en)
Other versions
CN111966500A (zh
Inventor
李想成
赵增
刘柏
李仁杰
范长杰
程龙
胡志鹏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Netease Hangzhou Network Co Ltd
Original Assignee
Netease Hangzhou Network Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Netease Hangzhou Network Co Ltd filed Critical Netease Hangzhou Network Co Ltd
Priority to CN202010932774.3A priority Critical patent/CN111966500B/zh
Publication of CN111966500A publication Critical patent/CN111966500A/zh
Application granted granted Critical
Publication of CN111966500B publication Critical patent/CN111966500B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy 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)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本申请提供一种资源调度方法、装置、电子设备及存储介质,涉及资源调度技术领域。其中,该方法可以应用于kubernetes集群的主节点,该kubernetes集群包括多个主节点和多个工作节点,该方法可以包括:接收需要调度GPU资源的调度任务;根据调度任务,筛选剩余资源量满足所述调度任务的多个所述工作节点作为多个预选节点;采用预设算法计算多个预选节点的节点分数,将节点分数最高的预选节点作为调度节点,由于该节点分数包括了预选节点的GPU资源得分,因此,在选择调度节点时,可以将GPU资源考虑进来,在一定程度上减少GPU分配的碎片化情况,提高大GPU需求量的调度任务的调度成功率。

Description

资源调度方法、装置、电子设备及存储介质
技术领域
本申请涉及资源调度技术领域,特别涉及一种资源调度方法、装置、电子设备及存储介质。
背景技术
随着深度学习的快速发展,对算力及计算模式的要求越来越高,传统的中央处理器(Central Processing Unit,CPU)已无法满足要求,通常需要利用图形处理器(GraphicsProcessing Unit,GPU)来完成深度学习计算,而GPU和容器云如何做到高效结合,也是一个愈发重要的研究课题。
通常情况下,在基于kubernetes(简称K8s)搭建的AI计算集群中,一台服务器通常会安装若干数量的GPU卡(如8张),而GPU通常是服务器中最稀缺且价格最贵的资源(相较CPU,内存)。
但由于现有的K8S调度算法只考虑CPU、内存资源,未考虑GPU资源的调度,因此,往往会导致GPU分配碎片化严重,大GPU请求量的任务调度失败概率高的问题。
发明内容
本申请的目的在于,针对上述现有技术中的不足,提供一种资源调度方法、装置、电子设备及存储介质,可以在kubernetes集群中对GPU资源实现调度。
为实现上述目的,本申请实施例采用的技术方案如下:
第一方面,本申请实施例提供了一种资源调度方法,应用于kubernetes集群的主节点,所述kubernetes集群包括多个所述主节点和多个工作节点,所述方法包括:
接收需要调度GPU资源的调度任务,所述调度任务包括:所需GPU资源数量、至少一种所需其他资源及大小;
根据所述调度任务,筛选剩余资源量满足所述调度任务的多个所述工作节点作为多个预选节点;
采用预设算法计算多个所述预选节点的节点分数,将节点分数最高的所述预选节点作为调度节点,其中,所述节点分数包括所述预选节点的GPU资源得分。
可选地,所述采用预设算法计算多个所述预选节点的节点分数,将节点分数最高的所述预选节点作为调度节点,包括:
计算每个所述预选节点的GPU资源得分和至少一种其他资源得分,获取每个所述预选节点的节点分数;
根据每个所述预选节点的节点分数,将所述节点分数最高的所述预选节点作为调度节点。
可选地,所述GPU资源得分用于指示所述预选节点可用GPU的数量,所述预选节点可用GPU的数量越少,所述预选节点的节点分数越高;所述计算每个所述预选节点的GPU资源得分,包括:
分别获取每个所述预选节点可用GPU的数量和总GPU的数量;
根据每个所述预选节点可用GPU的数量和总GPU的数量,计算每个所述预选节点的GPU资源分数。
可选地,所述计算每个所述预选节点的GPU资源得分和至少一种其他资源得分,获取每个所述预选节点的节点分数,包括:
计算每个所述预选节点的GPU资源得分和至少一种其他资源得分,根据所述GPU资源得分、所述至少一种其他资源得分、所述GPU资源对应的预设参数及所述至少一种其他资源对应的预设参数,获取每个所述预选节点的节点分数。
可选地,所述方法还包括:
接收参数设置指令,所述参数设置指令包括:资源类别和所述资源类别对应的参数值;
根据所述参数设置指令,对所述GPU资源和所述至少一种其他资源对应的预设参数进行更新,获取所述GPU资源对应的更新参数和所述至少一种其他资源对应的更新参数;
所述根据所述GPU资源得分、所述至少一种其他资源得分、所述GPU资源对应的预设参数及所述至少一种其他资源对应的预设参数,获取每个所述预选节点的节点分数,包括:
根据所述GPU资源得分、所述至少一种其他资源得分、所述GPU资源对应的更新参数及所述至少一种其他资源对应的更新参数,获取每个所述预选节点的节点分数。
可选地,所述方法还包括:
将所述调度任务调度到所述调度节点上执行。
可选地,所述其他资源包括下述至少一项:CPU资源、内存资源,硬盘资源。
第二方面,本申请实施例提供了一种资源调度装置,应用于kubernetes集群的主节点,所述kubernetes集群包括多个所述主节点和多个工作节点,所述装置包括:接收模块、筛选模块及计算模块;
所述接收模块,用于接收需要调度GPU资源的调度任务,所述调度任务包括:所需GPU资源数量、至少一种所需其他资源及大小;
所述筛选模块,用于根据所述调度任务,筛选剩余资源量满足所述调度任务的多个所述工作节点作为多个预选节点;
所述计算模块,用于采用预设算法计算多个所述预选节点的节点分数,将节点分数最高的所述预选节点作为调度节点,其中,所述节点分数包括所述预选节点的GPU资源得分。
可选地,所述计算模块,具体用于计算每个所述预选节点的GPU资源得分和至少一种其他资源得分,获取每个所述预选节点的节点分数;
根据每个所述预选节点的节点分数,将所述节点分数最高的所述预选节点作为调度节点。
可选地,所述GPU资源得分用于指示所述预选节点可用GPU的数量,所述预选节点可用GPU的数量越少,所述预选节点的节点分数越高;所述计算模块,具体用于分别获取每个所述预选节点可用GPU的数量和总GPU的数量;
根据每个所述预选节点可用GPU的数量和总GPU的数量,计算每个所述预选节点的GPU资源分数。
可选地,所述计算模块,具体用于计算每个所述预选节点的GPU资源得分和至少一种其他资源得分,根据所述GPU资源得分、所述至少一种其他资源得分、所述GPU资源对应的预设参数及所述至少一种其他资源对应的预设参数,获取每个所述预选节点的节点分数。
可选地,所述装置还包括:更新模块,用于接收参数设置指令,所述参数设置指令包括:资源类别和所述资源类别对应的参数值;
根据所述参数设置指令,对所述GPU资源和所述至少一种其他资源对应的预设参数进行更新,获取所述GPU资源对应的更新参数和所述至少一种其他资源对应的更新参数;
相应地,所述计算模块,具体用于根据所述GPU资源得分、所述至少一种其他资源得分、所述GPU资源对应的更新参数及所述至少一种其他资源对应的更新参数,获取每个所述预选节点的节点分数。
可选地,所述装置还包括:调度模块,用于将所述调度任务调度到所述调度节点上执行。
可选地,所述其他资源包括:CPU资源、内存资源,硬盘资源。
第三方面,本申请实施例提供了一种电子设备,包括:处理器、存储介质和总线,存储介质存储有处理器可执行的机器可读指令,当电子设备运行时,处理器与存储介质之间通过总线通信,处理器执行机器可读指令,以执行上述第一方面的资源调度方法的步骤。
第四方面,本申请实施例提供了一种存储介质,存储介质上存储有计算机程序,计算机程序被处理器运行时执行上述第一方面的资源调度方法的步骤。
本申请的有益效果是:
本申请实施例提供的资源调度方法、装置、电子设备及存储介质,可以应用于kubernetes集群的主节点,该kubernetes集群包括多个主节点和多个工作节点,该方法可以包括:接收需要调度GPU资源的调度任务;根据调度任务,筛选剩余资源量满足所述调度任务的多个所述工作节点作为多个预选节点;采用预设算法计算多个预选节点的节点分数,将节点分数最高的预选节点作为调度节点,由于该节点分数包括了预选节点的GPU资源得分,因此,在选择调度节点时,可以将GPU资源考虑进来,在一定程度上减少GPU分配的碎片化情况,提高大GPU需求量的调度任务的调度成功率。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的一种kubernetes集群的系统架构图;
图2为本申请实施例提供的一种资源调度方法的流程示意图;
图3为本申请实施例提供的另一种资源调度方法的流程示意图;
图4为本申请实施例提供的又一种资源调度方法的流程示意图;
图5为本申请实施例提供的一种GUP资源调度的示意图;
图6为本申请实施例提供的另一种资源调度方法的流程示意图;
图7为本申请实施例提供的又一种资源调度方法的流程示意图;
图8为本申请实施例提供的另一种资源调度方法的流程示意图;
图9为本申请实施例提供的一种资源调度装置的功能模块示意图;
图10为本申请实施例提供的另一种资源调度装置的功能模块示意图;
图11为本申请实施例提供的又一种资源调度装置的功能模块示意图;
图12为本申请实施例提供的一种电子设备结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
在介绍本申请之前,为了便于更好的理解本申请,首先对本申请中用到的相关名词进行解释。
Kubernetes:简称K8s,是用8代替8个字符“ubernete”而成的缩写。Kubernetes是一个开源的,用于管理云平台中多个主机上的容器化的应用,能提供一个以“容器为中心的基础架构”,其目标是让部署容器化的应用简单并且高效,Kubernetes提供了应用部署,规划,更新,维护的一种机制。Kubernetes可以在多种平台运行,可选地,该平台可以是笔记本电脑、云服务商的虚拟机、机架上的裸机服务器等,本申请在此不作限定。
Pod:是可以创建和管理kubernetes计算的最小可部署单元,可以由一个或者多个容器组成,同时也是kubernetes调度的基本粒度,可以申请一定量的资源,例如2核CPU、4G内存及2个GPU。一个Pod代表集群上正在运行的一个进程,Pod中的容器在kubernetes集群中Node上可以被自动分配,容器之间可以共享资源、网络和相互依赖关系,并同时被调度使用。
Node节点:是Kubernetes中的工作节点,一个Node可以是虚拟机或物理机。每个Node(节点)具有运行pod的一些必要服务,并由Master组件进行管理,Node节点上的服务可以包括Docker、kubelet和kube-proxy。其中,docker用于运行容器;kubelet是主要的节点代理,它会监视已分配给节点的pod;kube-proxy通过在主机上维护网络规则并执行连接转发来实现Kubernetes服务抽象。
Master组件:提供集群的管理控制中心,Master组件可以在集群中的主节点上运行,通常可以在一台虚拟机(Virtual Machine,VM)上启动所有Master组件,并且不会在此VM上运行用户容器。
其中,Master组件上的服务可以包括:kube-apiserver、etcd、kube-controller-manager、kube-controller-manager及kube-scheduler。其中,kube-apiserver用于暴露Kubernetes API,任何的资源请求/调用操作都是通过kube-apiserver提供的接口进行;etcd是Kubernetes提供默认的存储系统,保存所有集群数据,使用时需要为etcd数据提供备份计划;kube-controller-manager是运行管理控制器,它们是集群中处理常规任务的后台线程,逻辑上,每个控制器是一个单独的进程,但为了降低复杂性,它们都被编译成单个二进制文件,并在单个进程中运行;kube-scheduler用于监视新创建没有分配到Node的Pod,为Pod选择一个Node。
调度节点:若要将当前Pod调度到节点上运行,则该节点称为调度节点。
预选过程:过滤不满足Pod资源请求条件的node,是K8S调度器的默认配置。
优选过程:从所有满足Pod资源请求条件的node中,选取一个调度节点。
容器技术作为当前热门的技术,自docker和k8s推出后,基于k8s集群设计的底层架构更为普及,软件的部署更为容易,真正实现了“一次部署,到处运行”。
由于通常情况下,在基于k8s的搭建的AI计算集群中,一台服务器会安装Ntotal张GPU卡(如8张),一个任务(pod)需要0到Nrequest个GPU(Nrequest<=Ntotal)。但现有的k8s默认调度算法并未考虑GPU资源,对GPU资源的分配没有一定的规律可言,无法去做精细化的调度,通常情况下,GPU资源的分配会出现碎片化严重,大GPU请求任务调度失败概率较高的情况。比如有10台服务器,每台机器有8张GPU卡,每台服务器已分出6张GPU卡,剩余2张GPU卡,当一个任务(pod)需要4张卡GPU卡时,虽然10台机器总共剩余20张卡,但找不到任何一台满足该任务需求的机器,导致任务调度不成功。
有鉴于此,本申请实施例提供一种资源调度方法,该方法可以在kubernetes集群中对GPU资源实现调度,减少GPU分配的碎片化情况,提高大GPU需求量的调度任务的调度成功率。
图1为本申请实施例提供的一种kubernetes集群的系统架构图,图2为本申请实施例提供的一种资源调度方法的流程示意图。该资源调度方法可以应用于kubernetes集群的主节点,如图1所示,该kubernetes集群可以包括多个主节点10和多个工作节点20,并通过云平台30进行数据交互,其中,主节点10和工作节点20可以运行于物理服务器、虚拟机等,本申请在此不作限定。基于上述说明,可以理解的是,主节点10可以是kubernetes集群中的Master节点,工作节点20可以是kubernetes集群中的Node节点。如图2所示,该方法可以包括:
S101、接收需要调度GPU资源的调度任务,该调度任务包括:所需GPU资源数量、至少一种所需其他资源及大小。
基于前述的相关内容可知,kubernetes集群中Pod可以向主节点申请一定量的资源用于执行对应的调度任务,其中,该调度任务可以包括需要调度图形处理器(GraphicsProcessing Unit,GPU)资源的情况,对于该种情况,主节点可以接收用于调度GPU资源的调度任务,根据该调度任务为Pod分配对应的工作节点作为调度节点用于调度。
其中,调度任务需要调度GPU资源时,相应地,该调度任务还需包括所需的GPU资源数量,比如,1个、2个等,本申请在此不作限定。可以理解的是,调度任务在执行时,一般还需要其他资源,比如,CPU资源、内存等,因此,该调度任务还可以包括至少一种所需其他资源及大小。可以理解的是,根据资源类别的不同,本申请此处的大小可以指CPU核数、内存容量等,在此不作限定。
S102、根据调度任务,筛选剩余资源量满足调度任务的多个工作节点作为多个预选节点。
主节点在接收上述调度任务后,则可以从多个工作节点中筛选剩余资源量满足调度任务的节点,并将其作为多个预选节点。可以理解的是,该步骤即可对应预选过程,即过滤不满足调度任务资源请求条件的工作节点。
S103、采用预设算法计算多个预选节点的节点分数,将节点分数最高的预选节点作为调度节点,其中,节点分数包括预选节点的GPU资源得分。
对于筛选出的多个预选节点,则可以根据该多个预选节点的节点分数,将节点分数最高的预选节点作为调度节点,也即从所有满足Pod资源请求条件的多个预选节点中选取一个调度节点。可以理解的是,由于采用预设算法计算多个预选节点的节点分数时,该节点分数包括了预设节点的GPU资源得分,因此,在选择调度节点时,可以将GPU资源考虑进来,在一定程度上减少GPU分配的碎片化情况,提高大GPU需求量的调度任务的调度成功率。可以理解的是,该步骤即可对应优选过程,即从所有满足调度任务资源请求条件的多个预选节点中,选取一个调度节点。
综上,本申请实施例所提供的资源调度方法,可以应用于kubernetes集群的主节点,该kubernetes集群包括多个主节点和多个工作节点,该方法可以包括:接收需要调度GPU资源的调度任务,调度任务包括:所需GPU资源数量、至少一种所需其他资源及大小;根据调度任务,筛选剩余资源量满足所述调度任务的多个所述工作节点作为多个预选节点;采用预设算法计算多个预选节点的节点分数,将节点分数最高的预选节点作为调度节点,应用本申请实施例,由于该节点分数包括了预选节点的GPU资源得分,因此,在选择调度节点时,可以将GPU资源考虑进来,在一定程度上减少GPU分配的碎片化情况,提高大GPU需求量的调度任务的调度成功率。
图3为本申请实施例提供的另一种资源调度方法的流程示意图。可选地,如图3所示,上述采用预设算法计算多个预选节点的节点分数,将节点分数最高的预选节点作为调度节点,包括:
S201、计算每个预选节点的GPU资源得分和至少一种其他资源得分,获取每个预选节点的节点分数。
上述调度任务需要调度GPU资源和至少一种其他资源时,可以计算上述筛选得到的每个预选节点的GPU资源得分和至少一种其他资源得分,最终可以得到每个预选节点的节点分数,该节点分数可以用于指示该预选节点作为调度节点的概率。
可以理解的是,预选节点的GPU资源得分可以指示对于GPU资源来说,该预选节点作为调度节点的概率;相应地,至少一种其他资源得分可以指示对于至少一种其他资源来说,该预选节点作为调度节点的概率。
可选地,预选节点的至少一种其他资源得分可以根据该至少一种其他资源在该预选节点中的资源使用率、资源剩余率等来计算获取。
比如,其他资源包括CPU资源和内存资源(Memory资源)时,可以基于BalancedResourceAllocation算法计算多种其他资源在该预选节点中的资源使用率,多种其他资源使用率越均衡的预选节点对应的资源得分可以越高,BalancedResourceAllocation算法可以对应如下计算公式:A_Score=10-abs(UsedCpu/cpuNodeCapacity-UsedMemory/memoryNodeCapacity)*10。其中,UsedCpu为该节点(物理机)已使用CPU资源量与当前要调度的调度任务(比如,Pod任务)的CPU请求量之和、cpuNodeCapacity为节点总共的CPU核心数量,如8核等;相应的,UsedMemory为该节点(物理机)已使用Memory资源量与当前要调度的调度任务(比如,Pod任务)的Memory请求量之和,memoryNodeCapacity为该节点总共的Memory容量,A_Score为该节点对应的其他资源得分。
又或者,可以基于LeastRequestedPriority算法计算多种其他资源在该预选节点中的资源剩余率,其中,多种其他资源剩余率越高的预选节点对应的资源得分可以越高,以多种其他资源包括:CPU资源和Memory资源,LeastRequestedPriority算法可以对应如下计算公式:B_Score=(surplusCpu/cpuNodeCapacity+surplusMemory/MemoryNodeCapacity)/2。
其中,surplusCpu为该节点(物理机)的cpuNodeCapacity与UsedCpu的差值,surplusMemory为该节点(物理机)MemoryNodeCapacity与UsedMemory的差值。
又或者,可以基于Most Requested Priority算法计算多种其他资源在该预选节点中的资源剩余率,其中,多种其他资源剩余率越少的预选节点对应的资源得分可以越高,以多种其他资源包括:CPU资源和Memory资源,Most Requested Priority算法可以对应如下计算公式:C_Score=(UsedCpu/cpuNodeCapacity+UsedMemory/MemoryNodeCapacity))/2。
需要说明的是,对于上述LeastRequestedPriority算法和Most RequestedPriority算法中有关cpuNodeCapacity、UsedCpu、MemoryNodeCapacity及UsedMemory的相关含义可参见BalancedResourceAllocation算法中的相关说明,本申请在此不再赘述。
S202、根据每个预选节点的节点分数,将节点分数最高的预选节点作为调度节点。
在得到每个预选节点的节点分数后,若预选节点的节点分数越高指示该预设节点作为调度节点的概率越高,可选地,可以将多个预设节点的节点分数进行排序,将节点分数最高的预选节点作为调度节点。
可以理解的是,根据实际的预设算法,若预选节点的节点分数越低指示该预设节点作为调度节点的概率越高,那么可以将节点分数最低的预选节点作为调度节点,本申请在此不作限定,根据实际的应用场景可以灵活调节。
可选地,GPU资源得分用于指示预选节点可用GPU的数量,预选节点可用GPU的数量越少,预选节点的节点分数越高,即预选节点的GPU资源得分与其可用GPU的数量成反比,但不以此为限,根据实际的应用场景可以灵活设置。
图4为本申请实施例提供的又一种资源调度方法的流程示意图。如图4所示,上述计算每个预选节点的GPU资源得分,包括:
S301、分别获取每个预选节点可用GPU的数量和总GPU的数量。
S302、根据每个预选节点可用GPU的数量和总GPU的数量,计算每个预选节点的GPU资源分数。
其中,预选节点的GPU资源分数可以根据该预选节点的可用GPU的数量和总GPU的数量来计算获取,比如,可以是两者的比值、差值等,本申请在此不作限定。
可选地,可以参见下述的算法,计算每个预选节点的GPU资源分数。比如,Score=10-(Navailable/Ntotal)*10,其中,Navailable为当前预选节点的可用GPU数量,Ntotal为当前预选节点GPU的总数量,Score为当前预选节点的GPU资源分数。
图5为本申请实施例提供的一种GUP资源调度的示意图。参见上述算法进行举例说明,如图5所示,若某调度任务需要的资源需要:6个GUP、2核CPU以及4G内存,多个工作节点包括:N1、N2及N3,若参见上述的过程从N1、N2及N3节点中筛选出剩余资源量满足调度任务的节点为:N2和N3作为预选节点,其中,对于预选节点N2和N3中的GPU资源来说,其GPU的总数量均为8,N2节点的可用GPU数量为7,N3节点的可用GPU数量为8,则依据上述的算法可以计算得到:N2节点的GPU资源分数Score1=10-(7/8)*10=5/4,N3节点的GPU资源分数Score2=10-(8/8)*10=0,也即,N2节点的GPU资源分数大于N3节点的GPU资源分数,说明N2节点的可用GPU的数量较N3节点少。
基于上述举例进一步说明,假设预选节点N2对应的至少一种其他资源得分(比如,CPU和内存的资源得分)与N3相同,可以看出,预选节点N2的节点得分将大于N3的节点得分,此时,可以将选取预选节点N2作为调度节点。当然,需要说明的是,本申请在此并不限定预选节点的GPU资源分数的计算方式,根据实际的应用场景可以灵活设置。
可以看出,基于上述实施例,若后续有新的调度任务,比如,该调度任务需要的资源包括:8个GUP、2核CPU以及4G内存,此时可以将节点N3作为该新的调度任务的调度节点,减少GPU分配的碎片化情况,提高大GPU需求量的调度任务的调度成功率,实现GPU资源利用最大化。
综上,本申请实施例基于压缩算法思想,引入预选节点可用GPU的数量作为打分影响因子,从而可以计算出每个预选节点的GPU资源分数,使得在确定调度节点时,可以优先把调度任务分配到GPU剩余量少的调度节点上,通过优先把一台机器打满的方法明显提高了GPU的分配率及大GPU需求量的调度任务的调度成功率。
图6为本申请实施例提供的另一种资源调度方法的流程示意图。可选地,如图6所示,上述计算每个预选节点的GPU资源得分和至少一种其他资源得分,获取每个预选节点的节点分数,包括:
S401、计算每个预选节点的GPU资源得分和至少一种其他资源得分,根据GPU资源得分、至少一种其他资源得分、GPU资源对应的预设参数及至少一种其他资源对应的预设参数,获取每个预选节点的节点分数。
可选地,在获取每个预选节点的节点分数时,该预选节点的GPU资源和至少一种其他资源可以对应相应的预设参数,根据每个预选节点的GPU资源得分和GPU资源对应的预设参数可以获取每个预选节点的GPU资源分数;相应地,根据每个预选节点的至少一种其他资源得分和至少一种其他资源得分对应的预设参数,可以获取每个预选节点的至少一种其他资源分数;最后,根据每个预选节点的GPU资源分数和至少一种其他资源分数,可以获取该每个预选节点的节点分数。
举例说明,在计算得到某预选节点的GPU资源得分X1、CPU资源得分X2、内存资源得分X3后,假设GPU资源对应的预设参数为A1、CPU资源对应的预设参数为A2、内存资源对应的预设参数为A3,可选地,该预选节点的节点分数可以表示为:Y=A1*X1+A2*X2+A3*X3,其中,Y表示该预选节点的节点分数,则根据该计算方式,可以计算得到每个预选节点的节点分数,进而根据上述实施例可以将节点分数最高的预选节点作为调度节点。当然,需要说明的时,本申请在此并不限定节点分数的计算方式,根据实际的应用场景可以有所不同。
图7为本申请实施例提供的又一种资源调度方法的流程示意图。根据实际的应用场景,为了可以调节预选节点中每种资源得分在节点分数中的占比,使得可以根据不同的应用场景选择相应的预选节点作为调度节点。可选地,如图7所示,上述方法还包括:
S501、接收参数设置指令,该参数设置指令包括:资源类别和资源类别对应的参数值。
S502、根据参数设置指令,对GPU资源和至少一种其他资源对应的预设参数进行更新,获取GPU资源对应的更新参数和至少一种其他资源对应的更新参数。
其中,该参数设置指令可以包括:资源类别和资源类别对应的参数值,根据该参数设置指令即可对GPU资源和至少一种其他资源对应的预设参数进行更新。
当然,本申请在此并不限定参数设置指令包括的资源类别,可以包括GPU资源和至少一种其他资源,根据实际的应用场景可以灵活设置。比如,该参数设置指令可以包括:GPU资源类别和GPU资源对应的参数值M1,CPU资源类别和CPU资源对应的参数值M2,可以理解的是,参数值M1即为GPU资源对应的更新参数,参数值M2即为CPU资源对应的更新参数。可选地,根据实际的应用场景,参数设置指令可以包括一种或多种资源类别,以及每种资源类别对应的参数值。
相应地,上述根据GPU资源得分、至少一种其他资源得分、GPU资源对应的预设参数及至少一种其他资源对应的预设参数,获取每个预选节点的节点分数,包括:
S503、根据GPU资源得分、至少一种其他资源得分、GPU资源对应的更新参数及至少一种其他资源对应的更新参数,获取每个预选节点的节点分数。
在获取到GPU资源对应的更新参数和至少一种其他资源对应的更新参数后,即可依据前述的相关方法,重新获取每个预选节点的节点分数。
基于前述举例进行说明,在计算得到某预选节点的GPU资源得分X1、CPU资源得分X2、内存资源得分X3后,若GPU资源对应的更新参数为M1、CPU资源对应的更新参数为M2,内存资源对应预设参数A3(未进行参数的更新),可选地,该预选节点的节点分数可以表示为:Y=M1*X1+M2*X2+A3*X3,其中,Y表示该预选节点的节点分数,则根据该计算方式,可以计算得到每个预选节点的节点分数,进而根据上述实施例可以将节点分数最高的预选节点作为调度节点。
由上可以看出,本申请通过根据参数设置指令,对GPU资源和至少一种其他资源对应的预设参数进行更新,使得对于同一预选节点,可以调节预选节点中每种资源得分在节点分数中的占比,进而可以得到不同占比下的节点分数,以便在不同的应用场景可以选择相应的预选节点作为调度节点,可以提高资源调度方法的适用性。
图8为本申请实施例提供的另一种资源调度方法的流程示意图。可选地,如图8所示,上述方法还包括:
S601、将调度任务调度到调度节点上执行。
其中,在确定到调度节点后,主节点即可将该调度任务调度到该调度节点上执行,通过该方法,可以减少GPU资源分配的碎片化情况,提高大GPU需求量的调度任务的调度成功率。举例说明,若调度任务为Pod任务,则可以将该Pod任务调度到调度节点上执行。
可选地,上述其他资源包括:CPU资源、内存资源,硬盘资源。
其中,硬盘资源即volume资源,硬盘资源可以指示调度任务所需的硬盘空间,比如,某调度任务所需的磁盘空间可以为20G,但不以此为限。
可以理解的是,其他资源为CPU资源,对应的,其大小可以指CPU核数,比如,2核CPU、4核CPU等;其他资源为内存资源,对应的,其大小可以指内存容量,也即memory容量。当然,根据实际的应用场景,本申请在此并不对其他资源的类别进行限定。
图9为本申请实施例提供的一种资源调度装置的功能模块示意图。该资源调度装置可以应用于kubernetes集群的主节点,所述kubernetes集群包括多个所述主节点和多个工作节点,该装置基本原理及产生的技术效果与前述对应的方法实施例相同,为简要描述,本实施例中未提及部分,可参考方法实施例中的相应内容。如图9所示,该资源调度装置200包括:接收模块210、筛选模块220及计算模块230;
接收模块210,用于接收需要调度GPU资源的调度任务,调度任务包括:所需GPU资源数量、至少一种所需其他资源及大小;
筛选模块220,用于根据调度任务,筛选剩余资源量满足调度任务的多个工作节点作为多个预选节点;
计算模块230,用于采用预设算法计算多个预选节点的节点分数,将节点分数最高的预选节点作为调度节点,其中,节点分数包括预选节点的GPU资源得分。
可选地,计算模块230,具体用于计算每个预选节点的GPU资源得分和至少一种其他资源得分,获取每个预选节点的节点分数;根据每个预选节点的节点分数,将节点分数最高的所述预选节点作为调度节点。
可选地,GPU资源得分用于指示预选节点可用GPU的数量,预选节点可用GPU的数量越少,预选节点的节点分数越高;计算模块230,具体用于分别获取每个预选节点可用GPU的数量和总GPU的数量;根据每个预选节点可用GPU的数量和总GPU的数量,计算每个预选节点的GPU资源分数。
可选地,计算模块230,具体用于计算每个预选节点的GPU资源得分和至少一种其他资源得分,根据GPU资源得分、至少一种其他资源得分、GPU资源对应的预设参数及至少一种其他资源对应的预设参数,获取每个预选节点的节点分数。
图10为本申请实施例提供的另一种资源调度装置的功能模块示意图。可选地,如图10所示,该资源调度装置200还包括:更新模块240,用于接收参数设置指令,参数设置指令包括:资源类别和资源类别对应的参数值;根据参数设置指令,对GPU资源和所述至少一种其他资源对应的预设参数进行更新,获取GPU资源对应的更新参数和至少一种其他资源对应的更新参数;
相应地,计算模块230,具体用于根据GPU资源得分、至少一种其他资源得分、GPU资源对应的更新参数及至少一种其他资源对应的更新参数,获取每个预选节点的节点分数。
图11为本申请实施例提供的又一种资源调度装置的功能模块示意图。可选地,如图11所示,该资源调度装置200还包括:调度模块250,用于将所述调度任务调度到所述调度节点上执行。
可选地,上述其他资源包括:CPU资源、内存资源,硬盘资源。
上述装置用于执行前述实施例提供的方法,其实现原理和技术效果类似,在此不再赘述。
以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(Application Specific Integrated Circuit,简称ASIC),或,一个或多个微处理器(Digital Signal Processor,简称DSP),或,一个或者多个现场可编程门阵列(Field Programmable Gate Array,简称FPGA)等。再如,当以上某个模块通过处理元件调度程序代码的形式实现时,该处理元件可以是通用处理器,例如中央处理器(CentralProcessing Unit,简称CPU)或其它可以调用程序代码的处理器。再如,这些模块可以集成在一起,以片上系统(system-on-a-chip,简称SOC)的形式实现。
图12为本申请实施例提供的一种电子设备结构示意图。如图12所示,该电子设备可以包括:处理器510、存储介质520和总线530,存储介质520存储有处理器510可执行的机器可读指令,当电子设备运行时,处理器510与存储介质520之间通过总线530通信,处理器510执行机器可读指令,以执行上述方法实施例的步骤。具体实现方式和技术效果类似,这里不再赘述。
可选地,本申请还提供一种存储介质,存储介质上存储有计算机程序,计算机程序被处理器运行时执行上述方法实施例的步骤。具体实现方式和技术效果类似,这里不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(英文:processor)执行本申请各个实施例方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(英文:Read-Only Memory,简称:ROM)、随机存取存储器(英文:Random Access Memory,简称:RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。以上仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (9)

1.一种资源调度方法,其特征在于,应用于kubernetes集群的主节点,所述kubernetes集群包括多个所述主节点和多个工作节点,所述方法包括:
接收需要调度GPU资源的调度任务,所述调度任务包括:所需GPU资源数量、至少一种所需其他资源及大小;
根据所述调度任务,筛选剩余资源量满足所述调度任务的多个所述工作节点作为多个预选节点;
采用预设算法计算多个所述预选节点的节点分数,将节点分数最高的所述预选节点作为调度节点,其中,所述节点分数包括所述预选节点的GPU资源得分;
所述采用预设算法计算多个所述预选节点的节点分数,将节点分数最高的所述预选节点作为调度节点,包括:
计算每个所述预选节点的GPU资源得分和至少一种其他资源得分,获取每个所述预选节点的节点分数;
根据每个所述预选节点的节点分数,将所述节点分数最高的所述预选节点作为调度节点。
2.根据权利要求1所述的调度方法,其特征在于,所述GPU资源得分用于指示所述预选节点可用GPU的数量,所述预选节点可用GPU的数量越少,所述预选节点的节点分数越高;所述计算每个所述预选节点的GPU资源得分,包括:
分别获取每个所述预选节点可用GPU的数量和总GPU的数量;
根据每个所述预选节点可用GPU的数量和总GPU的数量,计算每个所述预选节点的GPU资源分数。
3.根据权利要求1所述的调度方法,其特征在于,所述计算每个所述预选节点的GPU资源得分和至少一种其他资源得分,获取每个所述预选节点的节点分数,包括:
计算每个所述预选节点的GPU资源得分和至少一种其他资源得分,根据所述GPU资源得分、所述至少一种其他资源得分、所述GPU资源对应的预设参数及所述至少一种其他资源对应的预设参数,获取每个所述预选节点的节点分数。
4.根据权利要求3所述的调度方法,其特征在于,所述方法还包括:
接收参数设置指令,所述参数设置指令包括:资源类别和所述资源类别对应的参数值;
根据所述参数设置指令,对所述GPU资源和所述至少一种其他资源对应的预设参数进行更新,获取所述GPU资源对应的更新参数和所述至少一种其他资源对应的更新参数;
所述根据所述GPU资源得分、所述至少一种其他资源得分、所述GPU资源对应的预设参数及所述至少一种其他资源对应的预设参数,获取每个所述预选节点的节点分数,包括:
根据所述GPU资源得分、所述至少一种其他资源得分、所述GPU资源对应的更新参数及所述至少一种其他资源对应的更新参数,获取每个所述预选节点的节点分数。
5.根据权利要求1所述的调度方法,其特征在于,所述方法还包括:
将所述调度任务调度到所述调度节点上执行。
6.根据权利要求1-5任一项所述的调度方法,其特征在于,所述其他资源包括:CPU资源、内存资源,硬盘资源。
7.一种资源调度装置,其特征在于,应用于kubernetes集群的主节点,所述kubernetes集群包括多个所述主节点和多个工作节点,所述装置包括:接收模块、筛选模块及计算模块;
所述接收模块,用于接收需要调度GPU资源的调度任务,所述调度任务包括:所需GPU资源数量、至少一种所需其他资源及大小;
所述筛选模块,用于根据所述调度任务,筛选剩余资源量满足所述调度任务的多个所述工作节点作为多个预选节点;
所述计算模块,用于采用预设算法计算多个所述预选节点的节点分数,将节点分数最高的所述预选节点作为调度节点,其中,所述节点分数包括所述预选节点的GPU资源得分;
所述计算模块,具体用于计算每个所述预选节点的GPU资源得分和至少一种其他资源得分,获取每个所述预选节点的节点分数;
根据每个所述预选节点的节点分数,将所述节点分数最高的所述预选节点作为调度节点。
8.一种电子设备,其特征在于,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述机器可读指令,以执行如权利要求1-6任一项所述资源调度方法的步骤。
9.一种存储介质,其特征在于,所述存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如权利要求1-6任一项所述的资源调度方法的步骤。
CN202010932774.3A 2020-09-07 2020-09-07 资源调度方法、装置、电子设备及存储介质 Active CN111966500B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010932774.3A CN111966500B (zh) 2020-09-07 2020-09-07 资源调度方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010932774.3A CN111966500B (zh) 2020-09-07 2020-09-07 资源调度方法、装置、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN111966500A CN111966500A (zh) 2020-11-20
CN111966500B true CN111966500B (zh) 2023-08-11

Family

ID=73392516

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010932774.3A Active CN111966500B (zh) 2020-09-07 2020-09-07 资源调度方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN111966500B (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112486679A (zh) * 2020-11-25 2021-03-12 北京浪潮数据技术有限公司 一种kubernetes集群的pod调度方法、装置及设备
CN112527486A (zh) * 2020-12-17 2021-03-19 航天信息股份有限公司 调度优化方法及装置
CN112988383A (zh) * 2021-03-12 2021-06-18 中国平安人寿保险股份有限公司 一种资源分配方法、装置、设备以及存储介质
CN112860383A (zh) * 2021-03-12 2021-05-28 网易(杭州)网络有限公司 集群资源调度方法、装置、设备及存储介质
CN112835721A (zh) * 2021-03-12 2021-05-25 云知声智能科技股份有限公司 分配gpu卡的数量的方法、装置、电子设备和存储介质
CN113127203B (zh) * 2021-04-25 2022-06-14 华南理工大学 面向云边计算的深度学习分布式编译器及构造方法
CN113590256A (zh) * 2021-06-03 2021-11-02 新浪网技术(中国)有限公司 多Kubernetes集群的应用部署方法及装置
CN113434270B (zh) * 2021-06-15 2023-06-23 北京百度网讯科技有限公司 数据资源调度方法、装置、电子设备及存储介质
US11651470B2 (en) 2021-06-28 2023-05-16 Hewlett Packard Enterprise Development Lp Scheduling jobs on graphical processing units
CN113867973B (zh) * 2021-12-06 2022-02-25 腾讯科技(深圳)有限公司 资源分配的方法和装置
CN115174695B (zh) * 2022-07-18 2024-01-26 中软航科数据科技(珠海横琴)有限公司 一种用于分布式网络资源的调度系统及方法
TWI826137B (zh) * 2022-11-22 2023-12-11 宏碁股份有限公司 電腦系統、應用於電腦系統的資源分配方法及執行資源分配方法的電腦程式產品

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108363623A (zh) * 2018-02-27 2018-08-03 郑州云海信息技术有限公司 Gpu资源调度方法、装置、设备及计算机可读存储介质
CN108519911A (zh) * 2018-03-23 2018-09-11 上饶市中科院云计算中心大数据研究院 一种基于容器的集群管理系统中资源的调度方法和装置
CN109144710A (zh) * 2017-06-16 2019-01-04 中国移动通信有限公司研究院 资源调度方法、装置及计算机可读存储介质
CN110515730A (zh) * 2019-08-22 2019-11-29 北京宝兰德软件股份有限公司 基于kubernetes容器编排系统的资源二次调度方法及装置
CN110941481A (zh) * 2019-10-22 2020-03-31 华为技术有限公司 资源调度方法、装置及系统
CN111475251A (zh) * 2020-03-08 2020-07-31 苏州浪潮智能科技有限公司 一种集群容器调度方法、系统、终端及存储介质
CN111506423A (zh) * 2020-04-09 2020-08-07 网易(杭州)网络有限公司 一种资源的调度方法、装置、电子设备及存储介质
CN111552550A (zh) * 2020-04-26 2020-08-18 星环信息科技(上海)有限公司 一种基于图形处理器gpu资源的任务调度方法、设备及介质

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8984519B2 (en) * 2010-11-17 2015-03-17 Nec Laboratories America, Inc. Scheduler and resource manager for coprocessor-based heterogeneous clusters
CN105988874B (zh) * 2015-02-10 2020-08-28 阿里巴巴集团控股有限公司 资源处理方法及装置
US11188392B2 (en) * 2017-09-20 2021-11-30 Algorithmia inc. Scheduling system for computational work on heterogeneous hardware

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109144710A (zh) * 2017-06-16 2019-01-04 中国移动通信有限公司研究院 资源调度方法、装置及计算机可读存储介质
CN108363623A (zh) * 2018-02-27 2018-08-03 郑州云海信息技术有限公司 Gpu资源调度方法、装置、设备及计算机可读存储介质
CN108519911A (zh) * 2018-03-23 2018-09-11 上饶市中科院云计算中心大数据研究院 一种基于容器的集群管理系统中资源的调度方法和装置
CN110515730A (zh) * 2019-08-22 2019-11-29 北京宝兰德软件股份有限公司 基于kubernetes容器编排系统的资源二次调度方法及装置
CN110941481A (zh) * 2019-10-22 2020-03-31 华为技术有限公司 资源调度方法、装置及系统
CN111475251A (zh) * 2020-03-08 2020-07-31 苏州浪潮智能科技有限公司 一种集群容器调度方法、系统、终端及存储介质
CN111506423A (zh) * 2020-04-09 2020-08-07 网易(杭州)网络有限公司 一种资源的调度方法、装置、电子设备及存储介质
CN111552550A (zh) * 2020-04-26 2020-08-18 星环信息科技(上海)有限公司 一种基于图形处理器gpu资源的任务调度方法、设备及介质

Also Published As

Publication number Publication date
CN111966500A (zh) 2020-11-20

Similar Documents

Publication Publication Date Title
CN111966500B (zh) 资源调度方法、装置、电子设备及存储介质
US11429449B2 (en) Method for fast scheduling for balanced resource allocation in distributed and collaborative container platform environment
CN108337109B (zh) 一种资源分配方法及装置和资源分配系统
CN114756347B (zh) 基于集群的服务器资源调度方法、装置、云平台及介质
CN113641457A (zh) 容器创建方法、装置、设备、介质及程序产品
CN112379971B (zh) 应用容器管理方法、装置及设备
CN111552550A (zh) 一种基于图形处理器gpu资源的任务调度方法、设备及介质
CN112860383A (zh) 集群资源调度方法、装置、设备及存储介质
CN110086726A (zh) 一种自动切换Kubernetes主节点的方法
CN111666158A (zh) 一种基于Kubernetes的容器调度方法、装置、存储介质及电子设备
CN114625500A (zh) 云环境下拓扑感知的微服务应用调度的方法及应用
CN111796933A (zh) 资源调度方法、装置、存储介质和电子设备
CN114996003A (zh) 一种云服务部署方法、装置、电子设备及存储介质
CN117435324B (zh) 基于容器化的任务调度方法
CN114237894A (zh) 容器调度方法、装置、设备以及可读存储介质
CN111240824A (zh) 一种cpu资源调度方法及电子设备
CN111190719A (zh) 优化集群资源分配的方法、装置、介质及电子设备
Wu et al. ABP scheduler: Speeding up service spread in docker swarm
CN116755829A (zh) 主机PCIe拓扑结构的生成方法和容器资源分配方法
CN116339989A (zh) 一种混部服务器、混部服务器的资源管理方法及装置
CN107562510B (zh) 一种应用实例的管理方法及管理设备
CN115658332A (zh) 一种gpu共享方法及装置、电子设备和存储介质
Guo et al. PARA: Performability‐aware resource allocation on the edges for cloud‐native services
CN115328612A (zh) 资源分配方法、装置、设备以及存储介质
CN112445569B (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