CN113377540A - 集群资源调度方法及装置、电子设备和存储介质 - Google Patents
集群资源调度方法及装置、电子设备和存储介质 Download PDFInfo
- Publication number
- CN113377540A CN113377540A CN202110664041.0A CN202110664041A CN113377540A CN 113377540 A CN113377540 A CN 113377540A CN 202110664041 A CN202110664041 A CN 202110664041A CN 113377540 A CN113377540 A CN 113377540A
- Authority
- CN
- China
- Prior art keywords
- task
- gpu
- cluster
- scheduling
- deep learning
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 52
- 238000013135 deep learning Methods 0.000 claims abstract description 98
- 238000013468 resource allocation Methods 0.000 claims abstract description 98
- 238000012545 processing Methods 0.000 claims abstract description 42
- 238000005192 partition Methods 0.000 claims description 61
- 238000004590 computer program Methods 0.000 claims description 21
- 238000004364 calculation method Methods 0.000 claims description 12
- 238000004891 communication Methods 0.000 claims description 8
- 238000004422 calculation algorithm Methods 0.000 abstract description 37
- 238000011161 development Methods 0.000 abstract description 11
- 230000009286 beneficial effect Effects 0.000 abstract description 5
- 238000012360 testing method Methods 0.000 description 11
- 230000018109 developmental process Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 10
- 238000004088 simulation Methods 0.000 description 9
- 238000012549 training Methods 0.000 description 6
- 230000003044 adaptive effect Effects 0.000 description 5
- 238000013473 artificial intelligence Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000013508 migration Methods 0.000 description 3
- 230000005012 migration Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000002787 reinforcement Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000013136 deep learning model Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000013467 fragmentation Methods 0.000 description 1
- 238000006062 fragmentation reaction Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 239000000725 suspension Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
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/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
-
- 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/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/548—Queue
Abstract
本申请实施例公开了一种集群资源调度方法及装置、电子设备和存储介质,其中,该方法包括:在第一运行环境中,获取对图形处理器GPU集群中GPU的资源调度请求;根据请求参数执行任务调度策略将深度学习任务添加到任务队列中,以及执行预设资源分配策略从图形处理器GPU集群中确定出至少一个目标GPU;将深度学习任务调度至至少一个目标GPU上进行处理;调整任务调度策略和预设资源分配策略,将调整后的任务调度策略和预设资源分配策略部署在第二运行环境中。本申请实施例有利于降低资源调度算法的开发成本。
Description
技术领域
本申请涉及分布式系统技术领域,具体涉及一种集群资源调度方法及装置、电子设备和存储介质。
背景技术
随着人工智能的发展,深度学习成为研究人员的关注重点,在目标识别、目标检测任务上有着广泛的应用。深度学习算法的实现离不开有效的训练,为了满足其训练对算力的要求,大规模的GPU(graphics processing unit,图形处理器)集群成为了深度学习算法研发工作的支撑。谈及集群就无可避免会涉及到资源管理和任务调度,目前集群中的任务调度多依赖于任务调度算法,而任务调度算法在开发完成后,需要在集群中进行测试,以验证其有效性和可靠性,但就深度学习训练周期长、计算密度大的特点而言,目前的任务调度算法的开发部署流程较为费时费力,这就使得开发成本居高不下。
发明内容
本申请实施例提供了一种集群资源调度方法及装置、电子设备和存储介质。通过在第一运行环境中进行任务调度策略和资源分配策略的开发,有利于降低资源调度算法的开发成本。
第一方面,本申请实施例提供一种集群资源调度方法,该方法包括:
在第一运行环境中,获取对图形处理器GPU集群中GPU的资源调度请求;所述资源调度请求中包括请求参数;
根据所述请求参数执行任务调度策略将所述资源调度请求对应的深度学习任务添加到任务队列中,以及执行预设资源分配策略从所述图形处理器GPU集群中确定出至少一个目标GPU;
将所述深度学习任务调度至所述至少一个目标GPU上进行处理;
调整所述任务调度策略和所述预设资源分配策略,将调整后的所述任务调度策略和所述预设资源分配策略部署在第二运行环境中。
结合第一方面,在一种可能的实施方式中,所述请求参数包括所述深度学习任务的任务类型,所述根据所述请求参数执行任务调度策略将所述资源调度请求对应的深度学习任务添加到任务队列中,包括:
根据所述深度学习任务的任务类型从所述图形处理器GPU集群的至少一个任务分区中确定出所述深度学习任务待请求的目标任务分区;
执行所述目标任务分区对应的所述任务调度策略将所述深度学习任务添加到所述目标任务分区的任务队列中。
结合第一方面,在一种可能的实施方式中,所述请求参数还包括历史深度学习任务的平均完成时长和平均等待时长,所述执行预设资源分配策略从所述图形处理器GPU集群中确定出至少一个目标GPU,包括:
根据所述平均完成时长和所述平均等待时长计算出所述深度学习任务待请求的GPU资源量;
根据所述待请求的GPU资源量执行第一预设资源分配策略或第二预设资源分配策略,以从所述目标任务分区中确定出所述至少一个目标GPU;所述第一预设资源分配策略用于查找到所述目标任务分区中的空闲GPU资源,则将所述空闲GPU资源确定为目标GPU,所述第二预设资源分配策略用于查找到所述目标任务分区中满足计算条件的空闲GPU资源,则将所述满足计算条件的空闲GPU资源确定为目标GPU。
结合第一方面,在一种可能的实施方式中,在根据所述深度学习任务的任务类型从所述图形处理器GPU集群的至少一个任务分区中确定出所述深度学习任务待请求的目标任务分区之前,所述方法还包括:
按照所述图形处理器GPU集群中节点的任务类型对节点进行分类,得到所述至少一个任务分区;
按照所述图形处理器GPU集群中节点所连接的交换机对节点进行分类,得到至少一个网络拓扑。
结合第一方面,在一种可能的实施方式中,在根据所述待请求的GPU资源量执行第一预设资源分配策略或第二预设资源分配策略,以从所述目标任务分区中确定出所述至少一个目标GPU之后,所述方法还包括:
确定所述至少一个目标GPU所属的节点是否在所述至少一个网络拓扑的不同网络拓扑中;
若是,则为所述深度学习任务增加额外的通信开销。
结合第一方面,在一种可能的实施方式中,所述第二运行环境中同样包括所述图形处理器GPU集群,并采用集群管理器SLURM对所述图形处理器GPU集群中的GPU资源进行管理,所述将调整后的所述任务调度策略和所述预设资源分配策略部署在第二运行环境中,包括:
将调整后的所述任务调度策略和所述预设资源分配策略添加到所述集群管理器SLURM的源码模块中,以完成调整后的所述任务调度策略和所述预设资源分配策略在所述第二运行环境中的部署;所述任务调度策略包括抢占式调度策略、非抢占式调度策略和学习型调度策略中的一种或多种的组合。
结合第一方面,在一种可能的实施方式中,所述获取对图形处理器GPU集群中GPU的资源调度请求,包括:
通过所述集群管理器SLURM提供的预设接口sacct API获取所述资源调度请求;所述资源调度请求为在所述第二运行环境中,由所述图形处理器GPU集群处理过的历史深度学习任务的任务记录。
第二方面,本申请实施例提供一种集群资源调度装置,该装置包括:
收发单元,用于在第一运行环境中,获取对图形处理器GPU集群中GPU的资源调度请求;所述资源调度请求中包括请求参数;
处理单元,用于根据所述请求参数执行任务调度策略将所述资源调度请求对应的深度学习任务添加到任务队列中,以及执行预设资源分配策略从所述图形处理器GPU集群中确定出至少一个目标GPU;
所述处理单元,还用于将所述深度学习任务调度至所述至少一个目标GPU上进行处理;
所述处理单元,还用于调整所述任务调度策略和所述预设资源分配策略,将调整后的所述任务调度策略和所述预设资源分配策略部署在第二运行环境中。
第三方面,本申请实施例提供一种电子设备,包括:处理器,所述处理器与存储器相连,所述存储器用于存储计算机程序,所述处理器用于执行所述存储器中存储的计算机程序,以使得所述电子设备执行如第一方面所述的方法。
第四方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序使得计算机执行如第一方面所述的方法。
第五方面,本申请实施例提供一种计算机程序产品,所述计算机程序产品包括存储了计算机程序的非易失性计算机可读存储介质,所述计算机可操作来使计算机执行如第一方面所述的方法。
实施本申请实施例,具有如下有益效果:
可以看出,在本申请实施例中,可通过在第一运行环境中,获取对图形处理器GPU集群中GPU的资源调度请求,然后任务调度策略将资源调度请求对应的深度学习任务添加到任务队列中,以及执行预设资源分配策略从图形处理器GPU集群中确定出至少一个目标GPU,接着将深度学习任务调度至至少一个目标GPU上进行处理,调整任务调度策略和预设资源分配策略,将调整后的任务调度策略和预设资源分配策略部署在第二运行环境中。这样采用第一运行环境进行任务调度策略和资源分配策略的测试和调整,将经过测试和调整的任务调度策略和资源分配策略部署在第二运行环境进行资源调度,有利于避免直接在第二运行环境中进行任务调度策略和资源分配策略的测试和调整所带来的部署流程消耗,从而降低资源调度算法的开发成本。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种应用环境示意图;
图2为本申请实施例提供的一种集群资源调度系统的架构示意图;
图3为本申请实施例提供的一种可视化阵列的示意图;
图4为本申请实施例提供的一种集群资源调度方法的流程示意图;
图5为本申请实施例提供的另一种集群资源调度方法的流程示意图;
图6为本申请实施例提供的一种集群资源调度装置的功能单元组成框图;
图7为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及所述附图中的术语“第一”、“第二”、“第三”和“第四”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结果或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
参阅图1,图1为本申请实施例提供的一种应用环境示意图,如图1所示,该应用环境包括用户终端、算法节点、资源调度节点和图形处理器GPU集群。其中,用户终端包括但不限于智能手机、平板电脑、台式电脑等设备,图形处理器GPU集群是一个计算机集群,该集群中包括多个计算节点,计算机点中均配备有至少一个GPU。其中,用户终端用于向算法节点提交深度学习任务处理请求,比如神经网络模型的训练等,算法节点在接收到深度学习任务处理请求的情况下,向资源调度节点提交资源调度请求,资源调度节点在接收到资源调度请求的情况下执行资源调度算法,比如任务调度策略、资源分配策略等,以在图形处理器GPU集群中进行GPU资源的查找,并将查找到的可用GPU资源返回到算法节点,以及将深度学习任务调度到查找到的可用GPU资源上进行执行或处理。
在一些场景中,算法节点可以是存储有AI(Artificial Intelligence,人工智能)算法的装置,该装置可以是用户终端的服务器,算法节点与资源调度节点可以是同一个装置,也可以是不同的装置。在另一些场景中,资源调度节点中运行有模拟器,该模拟器可对图形处理器GPU集群中的节点进行维护,比如节点中GPU的使用情况、CPU(centralprocessing unit,中央处理器)的使用情况、内存的使用情况、节点中运行任务的列表等,该模拟器可支持调度算法的开发,比如在该模拟器中进行调度算法的测试和调整,可以避免直接在实际集群中进行调度算法的测试和调整所带来的部署流程消耗,从而降低资源调度算法的开发成本。
基于图1所示的应用环境,请参阅图2,图2为本申请实施例提供的一种集群资源调度系统的架构示意图,如图2所示,该架构中主要包括实际SLURM集群和集群模拟器,该集群模拟器可以是运行在资源调度节点中的模拟器,集群模拟器可维护实际SLURM集群中每个节点的使用情况,即与实际SLURM集群一样,集群模拟器也采用任务分区partitions-节点nodes-资源GPUs的三层次管理模式。实际SLURM集群上执行的深度学习任务提交到实际调度器Real Scheduler(实际SLURM集群中的调度器),由实际调度器Real Scheduler向实际SLURM集群进行资源调度请求,实际SLURM集群对可用节点进行资源分配,并返回到实际调度器Real Scheduler,由实际调度器Real Scheduler进行任务调度。集群模拟器基于集群管理器SLURM的配置文件slurm.conf驱动,以进行集群模拟,即集群模拟器维护的是与实际SLURM集群相同的图形处理器GPU集群,集群模拟器上的调度由实际SLURM集群上执行过的历史深度学习任务的任务记录trace驱动,由模拟调度器Sim Scheduler(集群模拟器中的调度器)根据任务记录trace向集群模拟器进行资源调度请求,同时,模拟调度器SimScheduler会执行任务调度策略对任务记录trace对应的深度学习任务进行排队,而集群模拟器会执行资源分配策略从图形处理器GPU集群确定出可用的GPU资源以进行资源分配,并返回到模拟调度器Sim Scheduler,由模拟调度器Sim Scheduler进行任务调度。
示例性的,上述系统中的任务调度策略可以是先来先服务(First Come FirstService,FCFS)、多级反馈队列(Multi-Level Feedback Queue,MLFQ)、短作业优先(Shortest Job First,SJF)、强化学习(Reinforcement Learning,RL),等等。资源分配策略可以是首次适应算法first-fit、最佳适应算法best-fit、谷歌提供的算力平台free-gpu,等等。模拟调度器Sim Scheduler还将各类调度算法在集群模拟器上的模拟结果进行可视化显示,具体可采用柱状图的形式对图形处理器GPU集群中的GPU使用情况进行动态显示,或者还可以结合如图3所示的阵列进行可视化显示,如图3所示,每个大矩形表示图形处理器GPU集群中的节点,大矩形中的数字表示节点标识,比如:43、55、143等,大矩形中的小矩形表示该节点中GPU的使用情况。当然,集群模拟器上的可视化显示还可采用其他形式呈现,柱状图和阵列仅为一种示例,并不对本申请实施例造成任何限定。
参阅图4,图4为本申请实施例提供的一种集群资源调度方法的流程示意图。该方法应用于资源调度节点。如图4所示,该方法包括以下步骤:
401:在第一运行环境中,获取对图形处理器GPU集群中GPU的资源调度请求;所述资源调度请求中包括请求参数。
本申请实施例中,第一运行环境是指集群模拟器,即本方案是在集群模拟器上进行资源调度算法的测试和模拟。其中,资源调度请求为第二运行环境中,在图形处理器GPU集群上处理过的历史深度学习任务的任务记录,第二运行环境是指实际SLURM集群,基于图2所示的集群资源调度系统架构,集群模拟器与实际SLURM集群维护的是相同的图形处理器GPU集群(或节点),因此,集群模拟器上的资源调度可以由实际SLURM集群中,在图形处理器GPU集群上处理过的历史深度学习任务的任务记录trace来驱动,任务记录trace记录了历史深度学习任务的相关参数,比如平均完成时长、平均等待时长、GPU使用率、任务量和任务类型等历史信息,以历史深度学习任务的任务记录trace作为训练数据驱动集群模拟器能够使调度算法的测试和模拟更接近于实际情况。
示例性的,资源调度请求可通过集群管理器SLURM提供的预设接口sacct API获取,即上述任务记录trace可由该预设接口sacct API获取。
402:根据所述请求参数执行任务调度策略将所述资源调度请求对应的深度学习任务添加到任务队列中,以及执行预设资源分配策略从所述图形处理器GPU集群中确定出至少一个目标GPU。
本申请实施例中,请求参数包括深度学习任务的任务类型,比如任务类型可以是深度学习的模型训练或在线预测。
示例性的,上述根据所述请求参数执行任务调度策略将所述资源调度请求对应的深度学习任务添加到任务队列中,包括:
根据所述深度学习任务的任务类型从所述图形处理器GPU集群的至少一个任务分区中确定出所述深度学习任务待请求的目标任务分区;
执行所述目标任务分区对应的所述任务调度策略将所述深度学习任务添加到所述目标任务分区的任务队列中。
具体的,在获取到资源调度请求的情况下,执行对图形处理器GPU集群中的节点进行分类的操作,一方面,按照图形处理器GPU集群中节点的任务类型对节点进行分类,得到至少一个任务分区,比如将执行模型训练的节点作为一个任务分区,将执行在线预测的节点作为一个任务分区,等等。每一个任务分区都有自己独立的资源池和任务队列,且每一个任务分区都预设有不同的任务调度策略。另一方面,按照图形处理器GPU集群中节点所连接的交换机对节点进行分类,得到至少一个网络拓扑,比如节点43、55、46、52连接一个交换机,则将该四个节点作为一个网络拓扑,节点94、97、100、101连接一个交换机,则将该四个节点作为一个网络拓扑,等等。
示例性的,按照图形处理器GPU集群中节点的任务类型对节点进行分类的操作可调用集群管理器SLURM的配置文件slurm.conf或预设接口sinfo API完成。按照图形处理器GPU集群中节点所连接的交换机对节点进行分类的操作可调用无线带宽infiniband的预设接口iblinkinfo API完成。
针对分类得到的至少一个任务分区,将其任务类型与资源调度请求对应的深度学习任务的任务类型相同的任务分区作为目标任务分区,执行该目标任务分区预设的任务调度策略将该深度学习任务添加到该目标任务分区的任务队列中,以进行等待。
示例性的,任务调度策略包括抢占式调度策略、非抢占式调度策略和学习型调度策略中的一种或多种的组合。比如某个深度学习任务可以仅采用一种任务调度策略执行,也可以分部分采用不同的任务调度策略执行。其中,抢占式调度策略可以是MLFQ等,该类任务调度策略允许运行任务的暂停和恢复,具体可通过集群模拟器提供的访问接口实现,另外,开发人员还可为该类任务调度策略配置不同参数,比如算法的运行时间、层级关系等,以此提高算法的性能;其中,非抢占式调度策略可以是FCFS、SJF等;其中,学习型调度策略可以是基于机器学习、强化学习、颠倒强化学习的策略,该类任务调度策略的开发往往需要大量的任务记录trace作为训练数据,经历多次的决策迭代才能达到一个较优的决策结果,这在实际环境下往往是难以实现的,通过集群模拟器来模拟进行,有利于降低该类任务调度策略的开发难度。另外,开发者可以在集群模拟器上采用各种任务调度策略进行测试和模拟,因此其灵活性更强。
示例性的,上述执行预设资源分配策略从所述图形处理器GPU集群中确定出至少一个目标GPU,包括:
根据上述平均完成时长和上述平均等待时长计算出所述深度学习任务待请求的GPU资源量;
根据所述待请求的GPU资源量执行第一预设资源分配策略或第二预设资源分配策略,以从所述目标任务分区中确定出所述至少一个目标GPU;所述第一预设资源分配策略用于查找到所述目标任务分区中的空闲GPU资源,则将所述空闲GPU资源确定为目标GPU,所述第二预设资源分配策略用于查找到所述目标任务分区中满足计算条件的空闲GPU资源,则将所述满足计算条件的空闲GPU资源确定为目标GPU。
具体的,待请求的GPU资源量是指深度学习任务需要多少GPU来执行,比如4个算力为3.7的GPU、8个算力为2.5的GPU等,即通过对任务记录trace中的参数的学习,可以计算出一个深度学习任务所需的GPU资源。在确定出待请求的GPU资源量后,可根据待请求的GPU资源量的不同执行第一预设资源分配策略或第二预设资源分配策略,其中,第一预设资源分配策略可以是首次适应算法first-fit,第二预设资源分配策略可以是最佳适应算法best-fit,比如对GPU资源量要求较低的深度学习任务可以采用首次适应算法first-fit,对GPU资源量要求较高的深度学习任务可以采用最佳适应算法best-fit。其中,上述满足计算条件的空闲GPU资源是指满足最佳适应算法best-fit的计算要求,即找到最佳的GPU资源。
进一步的,集群模拟器还允许图形处理器GPU集群中的多个节点为单个节点提供GPU资源支持,比如,某个节点正在执行深度学习任务,但是其GPU的性能较低,而其他节点正好有空闲的GPU资源,则可将该深度学习任务未执行的部分调度到其他节点执行,换言之即是,集群模拟器支持深度学习任务的分割、迁移、重构等操作。
进一步的,集群模拟器还支持动态资源迁移和资源的重新分配,比如2个节点均有8个GPU,其中的4个均已被占用,而当前任务需要8个GPU资源来执行,那么该任务不得不被调度到该2个节点上执行,即2个节点的资源均被碎片化。在集群模拟器中,针对这种情况,可在某个节点的4个GPU资源被释放的情况下,将其用来执行当前任务的另一部分,通过这样的资源迁移或重新分配,可以减少已分配资源的碎片化程度。
403:将所述深度学习任务调度至所述至少一个目标GPU上进行处理。
本申请实施例中,在根据所述待请求的GPU资源量执行第一预设资源分配策略或第二预设资源分配策略,以从所述目标任务分区中确定出所述至少一个目标GPU之后,所述方法还包括:
确定所述至少一个目标GPU所属的节点是否在所述至少一个网络拓扑的不同网络拓扑中;
若是,则为所述深度学习任务增加额外的通信开销。
具体的,考虑到在实际SLURM集群上,深度学习任务的性能会受到GPU资源的倾向性的影响,比如同一深度学习任务更倾向于在同一节点或同一网络拓扑的GPU上执行,对于确定出的至少一个目标GPU,可能会属于不同的节点或不同的网络拓扑,本申请实施例在集群模拟器中,对于不在同一节点或同一网络拓扑中执行的深度学习任务,会为其增加额外的通信开销,以保证其性能。
对于在任务队列中等待的深度学习任务,在确定出至少一个目标GPU后,即可将其调度至至少一个目标GPU上进行处理。
404:调整所述任务调度策略和所述预设资源分配策略,将调整后的所述任务调度策略和所述预设资源分配策略部署在第二运行环境中。
本申请实施例中,上述步骤401-403为调度算法(包括任务调度策略和资源分配策略)在集群模拟器上的测试和模拟,对于效果或性能不符合要求的任务调度策略和资源分配策略,可响应于开发人员的输入(比如程序代码或参数)对任务调度策略和预设资源分配策略进行调整或修改,对于调整或修改后的任务调度策略和预设资源分配策略,将其添加到集群管理器SLURM的源码模块plugin/select和plugin/sched中,以完成调整或修改后的任务调度策略和预设资源分配策略在第二运行环境中的部署。
可以看出,在本申请实施例中,可通过在第一运行环境(集群模拟器)中,获取对图形处理器GPU集群中GPU的资源调度请求,然后任务调度策略将资源调度请求对应的深度学习任务添加到任务队列中,以及执行预设资源分配策略从图形处理器GPU集群中确定出至少一个目标GPU,接着将深度学习任务调度至至少一个目标GPU上进行处理,调整任务调度策略和预设资源分配策略,将调整后的任务调度策略和预设资源分配策略部署在第二运行环境中。这样采用第一运行环境进行任务调度策略和资源分配策略的测试和调整,将经过测试和调整的任务调度策略和资源分配策略部署在第二运行环境进行资源调度,有利于避免直接在第二运行环境中进行任务调度策略和资源分配策略的测试和调整所带来的部署流程消耗,从而降低资源调度算法的开发成本,以及降低在第二运行环境中进行资源调度算法开发的风险,加快调度算法的开发迭代速度。对于图形处理器GPU集群的管理人员而言,可通过在第一运行环境中测试资源调度算法来发现资源调度算法的缺陷和瓶颈,以探索可改进的方案。
参阅图5,图5本申请实施例提供的另一种集群资源调度方法的流程示意图。该方法同样应用于资源调度节点。如图5所示,该方法包括以下步骤:
501:在第一运行环境中,获取对图形处理器GPU集群中GPU的资源调度请求;所述资源调度请求中包括请求参数,所述请求参数包括所述资源调度请求对应的深度学习任务的任务类型;
502:根据所述深度学习任务的任务类型从所述图形处理器GPU集群的至少一个任务分区中确定出所述深度学习任务待请求的目标任务分区;
503:执行所述目标任务分区对应的所述任务调度策略将所述深度学习任务添加到所述目标任务分区的任务队列中;
504:执行预设资源分配策略从所述图形处理器GPU集群中确定出至少一个目标GPU;
505:将所述深度学习任务调度至所述至少一个目标GPU上进行处理;
506:调整所述任务调度策略和所述预设资源分配策略,将调整后的所述任务调度策略和所述预设资源分配策略部署在第二运行环境中。
其中,上述步骤501-506的具体实施方式在图4所示的实施例中已有相关说明,且能达到相同或相似的有益效果,为避免重复,此处不再赘述。
参阅图6,图6本申请实施例提供的一种集群资源调度装置的功能单元组成框图。集群资源调度装置600包括:收发单元601和处理单元602,其中:
收发单元601,用于在第一运行环境中,获取对图形处理器GPU集群中GPU的资源调度请求;所述资源调度请求中包括请求参数;
处理单元602,用于根据所述请求参数执行任务调度策略将所述资源调度请求对应的深度学习任务添加到任务队列中,以及执行预设资源分配策略从所述图形处理器GPU集群中确定出至少一个目标GPU;
所述处理单元602,还用于将所述深度学习任务调度至所述至少一个目标GPU上进行处理;
所述处理单元602,还用于调整所述任务调度策略和所述预设资源分配策略,将调整后的所述任务调度策略和所述预设资源分配策略部署在第二运行环境中。
在一些可能的实施方式中,所述请求参数包括所述深度学习任务的任务类型,在根据所述请求参数执行任务调度策略将所述资源调度请求对应的深度学习任务添加到任务队列方面,所述处理单元602,具体用于:
根据所述深度学习任务的任务类型从所述图形处理器GPU集群的至少一个任务分区中确定出所述深度学习任务待请求的目标任务分区;
执行所述目标任务分区对应的所述任务调度策略将所述深度学习任务添加到所述目标任务分区的任务队列中。
在一些可能的实施方式中,所述请求参数还包括历史深度学习任务的平均完成时长和平均等待时长,在执行预设资源分配策略从所述图形处理器GPU集群中确定出至少一个目标GPU方面,处理单元602,具体用于:
根据所述平均完成时长和所述平均等待时长计算出所述深度学习任务待请求的GPU资源量;
根据所述待请求的GPU资源量执行第一预设资源分配策略或第二预设资源分配策略,以从所述目标任务分区中确定出所述至少一个目标GPU;所述第一预设资源分配策略用于查找到所述目标任务分区中的空闲GPU资源,则将所述空闲GPU资源确定为目标GPU,所述第二预设资源分配策略用于查找到所述目标任务分区中满足计算条件的空闲GPU资源,则将所述满足计算条件的空闲GPU资源确定为目标GPU。
在一些可能的实施方式中,处理单元602,具体还用于:
按照所述图形处理器GPU集群中节点的任务类型对节点进行分类,得到所述至少一个任务分区;
按照所述图形处理器GPU集群中节点所连接的交换机对节点进行分类,得到至少一个网络拓扑。
在一些可能的实施方式中,处理单元602,具体还用于:
确定所述至少一个目标GPU所属的节点是否在所述至少一个网络拓扑的不同网络拓扑中;
若是,则为所述深度学习任务增加额外的通信开销。
在一些可能的实施方式中,所述第二运行环境中同样包括所述图形处理器GPU集群,并采用集群管理器SLURM对所述图形处理器GPU集群中的GPU资源进行管理,在将调整后的所述任务调度策略和所述预设资源分配策略部署在第二运行环境方面,处理单元602,具体用于:
将调整后的所述任务调度策略和所述预设资源分配策略添加到所述集群管理器SLURM的源码模块中,以完成调整后的所述任务调度策略和所述预设资源分配策略在所述第二运行环境中的部署;所述任务调度策略包括抢占式调度策略、非抢占式调度策略和学习型调度策略中的一种或多种的组合。
在一些可能的实施方式中,在获取对图形处理器GPU集群中GPU的资源调度请求方面,处理单元602,具体用于:
通过所述集群管理器SLURM提供的预设接口sacct API获取所述资源调度请求;所述资源调度请求为所述第二运行环境中,在所述图形处理器GPU集群上处理过的历史深度学习任务的任务记录。
参阅图7,图7为本申请实施例提供的一种电子设备的结构示意图。如图7所示,电子设备700包括收发器701、处理器702和存储器703。它们之间通过总线704连接。存储器703用于存储计算机程序和数据,并可以将存储503存储的数据传输给处理器702。
处理器702用于读取存储器703中的计算机程序执行以下操作:
在第一运行环境中,获取对图形处理器GPU集群中GPU的资源调度请求;所述资源调度请求中包括请求参数;
根据所述请求参数执行任务调度策略将所述资源调度请求对应的深度学习任务添加到任务队列中,以及执行预设资源分配策略从所述图形处理器GPU集群中确定出至少一个目标GPU;
将所述深度学习任务调度至所述至少一个目标GPU上进行处理;
调整所述任务调度策略和所述预设资源分配策略,将调整后的所述任务调度策略和所述预设资源分配策略部署在第二运行环境中。
在一些可能的实施方式中,所述请求参数包括所述深度学习任务的任务类型,在根据所述请求参数执行任务调度策略将所述资源调度请求对应的深度学习任务添加到任务队列方面,处理器702,具体用于执行以下操作:
根据所述深度学习任务的任务类型从所述图形处理器GPU集群的至少一个任务分区中确定出所述深度学习任务待请求的目标任务分区;
执行所述目标任务分区对应的所述任务调度策略将所述深度学习任务添加到所述目标任务分区的任务队列中。
在一些可能的实施方式中,所述请求参数还包括历史深度学习任务的平均完成时长和平均等待时长,在执行预设资源分配策略从所述图形处理器GPU集群中确定出至少一个目标GPU方面,处理器702,具体用于执行以下操作:
根据所述平均完成时长和所述平均等待时长计算出所述深度学习任务待请求的GPU资源量;
根据所述待请求的GPU资源量执行第一预设资源分配策略或第二预设资源分配策略,以从所述目标任务分区中确定出所述至少一个目标GPU;所述第一预设资源分配策略用于查找到所述目标任务分区中的空闲GPU资源,则将所述空闲GPU资源确定为目标GPU,所述第二预设资源分配策略用于查找到所述目标任务分区中满足计算条件的空闲GPU资源,则将所述满足计算条件的空闲GPU资源确定为目标GPU。
在一些可能的实施方式中,处理器702,具体还用于执行以下操作:
按照所述图形处理器GPU集群中节点的任务类型对节点进行分类,得到所述至少一个任务分区;
按照所述图形处理器GPU集群中节点所连接的交换机对节点进行分类,得到至少一个网络拓扑。
在一些可能的实施方式中,处理器702,具体还用于执行以下操作:
确定所述至少一个目标GPU所属的节点是否在所述至少一个网络拓扑的不同网络拓扑中;
若是,则为所述深度学习任务增加额外的通信开销。
在一些可能的实施方式中,所述第二运行环境中同样包括所述图形处理器GPU集群,并采用集群管理器SLURM对所述图形处理器GPU集群中的GPU资源进行管理,在将调整后的所述任务调度策略和所述预设资源分配策略部署在第二运行环境方面,处理器702,具体用于执行以下操作:
将调整后的所述任务调度策略和所述预设资源分配策略添加到所述集群管理器SLURM的源码模块中,以完成调整后的所述任务调度策略和所述预设资源分配策略在所述第二运行环境中的部署;所述任务调度策略包括抢占式调度策略、非抢占式调度策略和学习型调度策略中的一种或多种的组合。
在一些可能的实施方式中,在获取对图形处理器GPU集群中GPU的资源调度请求方面,处理器702,具体用于执行以下操作:
通过所述集群管理器SLURM提供的预设接口sacct API获取所述资源调度请求;所述资源调度请求为所述第二运行环境中,在所述图形处理器GPU集群上处理过的历史深度学习任务的任务记录。
具体地,上述收发器701可为图6所述的实施例的集群资源调度装置600的收发单元601,上述处理器702可以为图6所述的实施例的集群资源调度装置600的处理单元602。
示例性的,上述电子设备可以是独立的物理服务器,也可以是服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、以及大数据和人工智能平台等基础云计算服务的云服务器。电子设备包括但不仅限于收发器701、处理器702存储器703和总线704。本领域技术人员可以理解,所述示意图仅仅是电子设备的示例,并不构成对电子设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件。
需要说明的是,由于电子设备的处理器702执行计算机程序时实现上述的集群资源调度方法中的步骤,因此上述集群资源调度方法的实施例均适用于该电子设备,且均能达到相同或相似的有益效果。
本申请实施例还提供了一种计算机可读存储介质(Memory),所述计算机可读存储介质是电子设备中的记忆设备,用于存放程序和数据。可以理解的是,此处的计算机可读存储介质既可以包括终端中的内置存储介质,当然也可以包括终端所支持的扩展存储介质。计算机可读存储介质提供存储空间,该存储空间存储了终端的操作系统。并且,在该存储空间中还存放了适于被处理器702加载并执行的一条或多条的指令,这些指令可以是一个或一个以上的计算机程序(包括程序代码)。需要说明的是,此处的计算机可读存储介质可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器;可选的,还可以是至少一个位于远离前述处理器702的计算机存储介质。在一个实施例中,可由处理器702加载并执行计算机存储介质中存放的一条或多条指令,以实现上述有关集群资源调度方法的相应步骤。
示例性的,计算机可读存储介质的计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读存储介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。
需要说明的是,由于计算机可读存储介质的计算机程序被处理器执行时实现上述的集群资源调度方法中的步骤,因此上述集群资源调度方法的所有实施例均适用于该计算机可读存储介质,且均能达到相同或相似的有益效果。
本申请实施例还提供一种计算机程序产品,所述计算机程序产品包括存储了计算机程序的非易失性计算机可读存储介质,所述计算机程序可操作来使计算机执行如上述方法实施例中记载的任何一种集群资源调度方法的部分或全部步骤。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于可选实施例,所涉及的动作和模块并不一定是本申请所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件程序模块的形式实现。
所述集成的单元如果以软件程序模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储器中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储器包括:U盘、只读存储器、随机存取存储器、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储器中,存储器可以包括:闪存盘、只读存储器、随机存取器、磁盘或光盘等。
以上对本申请实施例进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (10)
1.一种集群资源调度方法,其特征在于,包括:
在第一运行环境中,获取对图形处理器GPU集群中GPU的资源调度请求;所述资源调度请求中包括请求参数;
根据所述请求参数执行任务调度策略将所述资源调度请求对应的深度学习任务添加到任务队列中,以及执行预设资源分配策略从所述图形处理器GPU集群中确定出至少一个目标GPU;
将所述深度学习任务调度至所述至少一个目标GPU上进行处理;
调整所述任务调度策略和所述预设资源分配策略,将调整后的所述任务调度策略和所述预设资源分配策略部署在第二运行环境中。
2.根据权利要求1所述的方法,其特征在于,所述请求参数包括所述深度学习任务的任务类型,所述根据所述请求参数执行任务调度策略将所述资源调度请求对应的深度学习任务添加到任务队列中,包括:
根据所述深度学习任务的任务类型从所述图形处理器GPU集群的至少一个任务分区中确定出所述深度学习任务待请求的目标任务分区;
执行所述目标任务分区对应的所述任务调度策略将所述深度学习任务添加到所述目标任务分区的任务队列中。
3.根据权利要求2所述的方法,其特征在于,所述请求参数还包括历史深度学习任务的平均完成时长和平均等待时长,所述执行预设资源分配策略从所述图形处理器GPU集群中确定出至少一个目标GPU,包括:
根据所述平均完成时长和所述平均等待时长计算出所述深度学习任务待请求的GPU资源量;
根据所述待请求的GPU资源量执行第一预设资源分配策略或第二预设资源分配策略,以从所述目标任务分区中确定出所述至少一个目标GPU;所述第一预设资源分配策略用于查找到所述目标任务分区中的空闲GPU资源,则将所述空闲GPU资源确定为目标GPU,所述第二预设资源分配策略用于查找到所述目标任务分区中满足计算条件的空闲GPU资源,则将所述满足计算条件的空闲GPU资源确定为目标GPU。
4.根据权利要求3所述的方法,其特征在于,在根据所述深度学习任务的任务类型从所述图形处理器GPU集群的至少一个任务分区中确定出所述深度学习任务待请求的目标任务分区之前,所述方法还包括:
按照所述图形处理器GPU集群中节点的任务类型对节点进行分类,得到所述至少一个任务分区;
按照所述图形处理器GPU集群中节点所连接的交换机对节点进行分类,得到至少一个网络拓扑。
5.根据权利要求4所述的方法,其特征在于,在根据所述待请求的GPU资源量执行第一预设资源分配策略或第二预设资源分配策略,以从所述目标任务分区中确定出所述至少一个目标GPU之后,所述方法还包括:
确定所述至少一个目标GPU所属的节点是否在所述至少一个网络拓扑的不同网络拓扑中;
若是,则为所述深度学习任务增加额外的通信开销。
6.根据权利要求1-5中任一项所述的方法,其特征在于,所述第二运行环境中同样包括所述图形处理器GPU集群,并采用集群管理器SLURM对所述图形处理器GPU集群中的GPU资源进行管理,所述将调整后的所述任务调度策略和所述预设资源分配策略部署在第二运行环境中,包括:
将调整后的所述任务调度策略和所述预设资源分配策略添加到所述集群管理器SLURM的源码模块中,以完成调整后的所述任务调度策略和所述预设资源分配策略在所述第二运行环境中的部署;所述任务调度策略包括抢占式调度策略、非抢占式调度策略和学习型调度策略中的一种或多种的组合。
7.根据权利要求6所述的方法,其特征在于,所述获取对图形处理器GPU集群中GPU的资源调度请求,包括:
通过所述集群管理器SLURM提供的预设接口sacct API获取所述资源调度请求;所述资源调度请求为所述第二运行环境中,在所述图形处理器GPU集群上处理过的历史深度学习任务的任务记录。
8.一种集群资源调度装置,其特征在于,包括:
收发单元,用于在第一运行环境中,获取对图形处理器GPU集群中GPU的资源调度请求;所述资源调度请求中包括请求参数;
处理单元,用于根据所述请求参数执行任务调度策略将所述资源调度请求对应的深度学习任务添加到任务队列中,以及执行预设资源分配策略从所述图形处理器GPU集群中确定出至少一个目标GPU;
所述处理单元,还用于将所述深度学习任务调度至所述至少一个目标GPU上进行处理;
所述处理单元,还用于调整所述任务调度策略和所述预设资源分配策略,将调整后的所述任务调度策略和所述预设资源分配策略部署在第二运行环境中。
9.一种电子设备,其特征在于,包括:处理器,所述处理器与存储器相连,所述存储器用于存储计算机程序,所述处理器用于执行所述存储器中存储的计算机程序,以使得所述电子设备执行如权利要求1-7中任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行以实现如权利要求1-7任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110664041.0A CN113377540A (zh) | 2021-06-15 | 2021-06-15 | 集群资源调度方法及装置、电子设备和存储介质 |
PCT/CN2021/126478 WO2022262167A1 (zh) | 2021-06-15 | 2021-10-26 | 集群资源调度方法及装置、电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110664041.0A CN113377540A (zh) | 2021-06-15 | 2021-06-15 | 集群资源调度方法及装置、电子设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113377540A true CN113377540A (zh) | 2021-09-10 |
Family
ID=77574472
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110664041.0A Pending CN113377540A (zh) | 2021-06-15 | 2021-06-15 | 集群资源调度方法及装置、电子设备和存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN113377540A (zh) |
WO (1) | WO2022262167A1 (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114629906A (zh) * | 2022-03-14 | 2022-06-14 | 浙江大学 | 一种可靠的基于深度强化学习的云容器集群资源调度方法及装置 |
CN114911612A (zh) * | 2022-04-29 | 2022-08-16 | 中国航空无线电电子研究所 | 一种面向cpu-gpu异构资源的任务调度方法 |
CN115080248A (zh) * | 2022-08-19 | 2022-09-20 | 中兴通讯股份有限公司 | 调度装置的调度优化方法、调度装置和存储介质 |
CN115220921A (zh) * | 2022-09-19 | 2022-10-21 | 浙江大华技术股份有限公司 | 资源调度方法及相关装置、图形处理器、摄像器件和介质 |
CN115421930A (zh) * | 2022-11-07 | 2022-12-02 | 山东海量信息技术研究院 | 任务处理方法、系统、装置、设备及计算机可读存储介质 |
WO2022262167A1 (zh) * | 2021-06-15 | 2022-12-22 | 上海商汤科技开发有限公司 | 集群资源调度方法及装置、电子设备和存储介质 |
CN115525425A (zh) * | 2022-09-16 | 2022-12-27 | 中国电信股份有限公司 | 基于云原生技术的联邦学习计算引擎编排方法及其设备 |
CN116483584A (zh) * | 2023-05-26 | 2023-07-25 | 摩尔线程智能科技(北京)有限责任公司 | Gpu的任务处理方法、装置、电子设备和存储介质 |
CN116739090A (zh) * | 2023-05-12 | 2023-09-12 | 北京大学 | 基于Web浏览器的深度神经网络推理度量方法和装置 |
CN117032937A (zh) * | 2023-09-28 | 2023-11-10 | 之江实验室 | 基于gpu的任务调度方法、电子装置和存储介质 |
CN117155928A (zh) * | 2023-10-31 | 2023-12-01 | 浪潮电子信息产业股份有限公司 | 通信任务处理方法、系统、设备、集群及可读存储介质 |
WO2024027413A1 (zh) * | 2022-08-01 | 2024-02-08 | 华为技术有限公司 | 一种协同调度方法和相关设备 |
CN116483584B (zh) * | 2023-05-26 | 2024-05-03 | 摩尔线程智能科技(北京)有限责任公司 | Gpu的任务处理方法、装置、电子设备和存储介质 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116185645B (zh) * | 2023-04-28 | 2023-08-04 | 联通沃音乐文化有限公司 | 基于神经网络的集群资源智能调度方法、系统及存储介质 |
CN116542334B (zh) * | 2023-05-12 | 2023-10-20 | 北京大学 | 基于Web浏览器的深度神经网络推理调度方法和装置 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102541640A (zh) * | 2011-12-28 | 2012-07-04 | 厦门市美亚柏科信息股份有限公司 | 一种集群gpu资源调度系统和方法 |
WO2017166803A1 (zh) * | 2016-03-30 | 2017-10-05 | 华为技术有限公司 | 一种资源调度方法及装置 |
CN108733464A (zh) * | 2017-04-18 | 2018-11-02 | 华为软件技术有限公司 | 一种确定计算任务的调度方案的方法及装置 |
CN109144716A (zh) * | 2017-06-28 | 2019-01-04 | 中兴通讯股份有限公司 | 基于机器学习的操作系统调度方法及装置、设备 |
CN109614236A (zh) * | 2018-12-07 | 2019-04-12 | 深圳前海微众银行股份有限公司 | 集群资源动态调整方法、装置、设备及可读存储介质 |
CN109634748A (zh) * | 2018-12-12 | 2019-04-16 | 深圳前海微众银行股份有限公司 | 集群资源调度方法、装置、设备及计算机可读存储介质 |
CN111258734A (zh) * | 2020-01-16 | 2020-06-09 | 中国人民解放军国防科技大学 | 一种基于强化学习的深度学习任务调度方法 |
CN111736987A (zh) * | 2020-05-29 | 2020-10-02 | 山东大学 | 一种基于gpu空间资源共享的任务调度方法 |
CN111966484A (zh) * | 2020-06-23 | 2020-11-20 | 北京大学 | 一种基于深度强化学习的集群资源管理和任务调度方法及系统 |
US20200412835A1 (en) * | 2018-03-23 | 2020-12-31 | Huawei Technologies Co., Ltd. | Scheduling method, scheduler, storage medium, and system |
CN112433819A (zh) * | 2020-11-30 | 2021-03-02 | 中国科学院深圳先进技术研究院 | 异构集群调度的模拟方法、装置、计算机设备及存储介质 |
CN112882828A (zh) * | 2021-01-25 | 2021-06-01 | 北京大学 | 基于slurm作业调度系统的昇腾处理器管理和调度方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106992901B (zh) * | 2016-01-20 | 2020-08-18 | 阿里巴巴集团控股有限公司 | 用于资源调度模拟压力的方法和设备 |
US10262390B1 (en) * | 2017-04-14 | 2019-04-16 | EMC IP Holding Company LLC | Managing access to a resource pool of graphics processing units under fine grain control |
CN111159004A (zh) * | 2018-11-07 | 2020-05-15 | 中移(苏州)软件技术有限公司 | 一种Hadoop集群仿真测试方法、装置及存储介质 |
CN112416585B (zh) * | 2020-11-20 | 2024-03-15 | 南京大学 | 面向深度学习的gpu资源管理与智能化调度方法 |
CN113377540A (zh) * | 2021-06-15 | 2021-09-10 | 上海商汤科技开发有限公司 | 集群资源调度方法及装置、电子设备和存储介质 |
-
2021
- 2021-06-15 CN CN202110664041.0A patent/CN113377540A/zh active Pending
- 2021-10-26 WO PCT/CN2021/126478 patent/WO2022262167A1/zh unknown
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102541640A (zh) * | 2011-12-28 | 2012-07-04 | 厦门市美亚柏科信息股份有限公司 | 一种集群gpu资源调度系统和方法 |
WO2017166803A1 (zh) * | 2016-03-30 | 2017-10-05 | 华为技术有限公司 | 一种资源调度方法及装置 |
CN108733464A (zh) * | 2017-04-18 | 2018-11-02 | 华为软件技术有限公司 | 一种确定计算任务的调度方案的方法及装置 |
CN109144716A (zh) * | 2017-06-28 | 2019-01-04 | 中兴通讯股份有限公司 | 基于机器学习的操作系统调度方法及装置、设备 |
US20200412835A1 (en) * | 2018-03-23 | 2020-12-31 | Huawei Technologies Co., Ltd. | Scheduling method, scheduler, storage medium, and system |
CN109614236A (zh) * | 2018-12-07 | 2019-04-12 | 深圳前海微众银行股份有限公司 | 集群资源动态调整方法、装置、设备及可读存储介质 |
CN109634748A (zh) * | 2018-12-12 | 2019-04-16 | 深圳前海微众银行股份有限公司 | 集群资源调度方法、装置、设备及计算机可读存储介质 |
CN111258734A (zh) * | 2020-01-16 | 2020-06-09 | 中国人民解放军国防科技大学 | 一种基于强化学习的深度学习任务调度方法 |
CN111736987A (zh) * | 2020-05-29 | 2020-10-02 | 山东大学 | 一种基于gpu空间资源共享的任务调度方法 |
CN111966484A (zh) * | 2020-06-23 | 2020-11-20 | 北京大学 | 一种基于深度强化学习的集群资源管理和任务调度方法及系统 |
CN112433819A (zh) * | 2020-11-30 | 2021-03-02 | 中国科学院深圳先进技术研究院 | 异构集群调度的模拟方法、装置、计算机设备及存储介质 |
CN112882828A (zh) * | 2021-01-25 | 2021-06-01 | 北京大学 | 基于slurm作业调度系统的昇腾处理器管理和调度方法 |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022262167A1 (zh) * | 2021-06-15 | 2022-12-22 | 上海商汤科技开发有限公司 | 集群资源调度方法及装置、电子设备和存储介质 |
CN114629906B (zh) * | 2022-03-14 | 2023-09-29 | 浙江大学 | 一种可靠的基于深度强化学习的云容器集群资源调度方法及装置 |
CN114629906A (zh) * | 2022-03-14 | 2022-06-14 | 浙江大学 | 一种可靠的基于深度强化学习的云容器集群资源调度方法及装置 |
CN114911612A (zh) * | 2022-04-29 | 2022-08-16 | 中国航空无线电电子研究所 | 一种面向cpu-gpu异构资源的任务调度方法 |
WO2024027413A1 (zh) * | 2022-08-01 | 2024-02-08 | 华为技术有限公司 | 一种协同调度方法和相关设备 |
CN115080248A (zh) * | 2022-08-19 | 2022-09-20 | 中兴通讯股份有限公司 | 调度装置的调度优化方法、调度装置和存储介质 |
CN115080248B (zh) * | 2022-08-19 | 2023-01-10 | 中兴通讯股份有限公司 | 调度装置的调度优化方法、调度装置和存储介质 |
CN115525425A (zh) * | 2022-09-16 | 2022-12-27 | 中国电信股份有限公司 | 基于云原生技术的联邦学习计算引擎编排方法及其设备 |
CN115220921A (zh) * | 2022-09-19 | 2022-10-21 | 浙江大华技术股份有限公司 | 资源调度方法及相关装置、图形处理器、摄像器件和介质 |
CN115220921B (zh) * | 2022-09-19 | 2023-01-03 | 浙江大华技术股份有限公司 | 资源调度方法及相关装置、图形处理器、摄像器件和介质 |
CN115421930A (zh) * | 2022-11-07 | 2022-12-02 | 山东海量信息技术研究院 | 任务处理方法、系统、装置、设备及计算机可读存储介质 |
CN116739090A (zh) * | 2023-05-12 | 2023-09-12 | 北京大学 | 基于Web浏览器的深度神经网络推理度量方法和装置 |
CN116739090B (zh) * | 2023-05-12 | 2023-11-28 | 北京大学 | 基于Web浏览器的深度神经网络推理度量方法和装置 |
CN116483584A (zh) * | 2023-05-26 | 2023-07-25 | 摩尔线程智能科技(北京)有限责任公司 | Gpu的任务处理方法、装置、电子设备和存储介质 |
CN116483584B (zh) * | 2023-05-26 | 2024-05-03 | 摩尔线程智能科技(北京)有限责任公司 | Gpu的任务处理方法、装置、电子设备和存储介质 |
CN117032937A (zh) * | 2023-09-28 | 2023-11-10 | 之江实验室 | 基于gpu的任务调度方法、电子装置和存储介质 |
CN117032937B (zh) * | 2023-09-28 | 2024-01-09 | 之江实验室 | 基于gpu的任务调度方法、电子装置和存储介质 |
CN117155928A (zh) * | 2023-10-31 | 2023-12-01 | 浪潮电子信息产业股份有限公司 | 通信任务处理方法、系统、设备、集群及可读存储介质 |
CN117155928B (zh) * | 2023-10-31 | 2024-02-09 | 浪潮电子信息产业股份有限公司 | 通信任务处理方法、系统、设备、集群及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2022262167A1 (zh) | 2022-12-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113377540A (zh) | 集群资源调度方法及装置、电子设备和存储介质 | |
CN110869909B (zh) | 应用机器学习算法来计算健康分数以进行工作负载调度的系统和方法 | |
CN110532092A (zh) | 资源匹配方法、装置及设备 | |
US9612878B2 (en) | Resource allocation in job scheduling environment | |
CN114741207B (zh) | 一种基于多维度组合并行的gpu资源调度方法和系统 | |
CN110389816B (zh) | 用于资源调度的方法、装置以及计算机可读介质 | |
CN112416585B (zh) | 面向深度学习的gpu资源管理与智能化调度方法 | |
US11429434B2 (en) | Elastic execution of machine learning workloads using application based profiling | |
CN113641457A (zh) | 容器创建方法、装置、设备、介质及程序产品 | |
Caviglione et al. | Deep reinforcement learning for multi-objective placement of virtual machines in cloud datacenters | |
US11055139B2 (en) | Smart accelerator allocation and reclamation for deep learning jobs in a computing cluster | |
CN112540841B (zh) | 任务调度的方法、装置、处理器与电子设备 | |
CN111143039B (zh) | 一种虚拟机的调度方法、装置及计算机存储介质 | |
CN111984400A (zh) | 神经网络的内存分配方法及装置 | |
CN113946431B (zh) | 一种资源调度方法、系统、介质及计算设备 | |
CN115686805A (zh) | Gpu资源共享的方法和装置、调度gpu资源共享的方法和装置 | |
CN115586961A (zh) | 一种ai平台计算资源任务调度方法、装置及介质 | |
CN112965788B (zh) | 一种混合虚拟化方式的任务执行方法、系统及设备 | |
CN116089477B (zh) | 分布式训练方法及系统 | |
CN117311973A (zh) | 计算设备调度方法、装置、非易失性存储介质及电子设备 | |
CN111580975B (zh) | 用于语音合成的内存优化方法及系统 | |
Hauser et al. | Predictability of resource intensive big data and hpc jobs in cloud data centres | |
Tang et al. | Edge computing energy-efficient resource scheduling based on deep reinforcement learning and imitation learning | |
CN109617954B (zh) | 一种创建云主机的方法和装置 | |
CN110955644A (zh) | 一种存储系统的io控制方法、装置、设备及存储介质 |
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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40051751 Country of ref document: HK |