CN108363623A - Gpu资源调度方法、装置、设备及计算机可读存储介质 - Google Patents
Gpu资源调度方法、装置、设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN108363623A CN108363623A CN201810161507.3A CN201810161507A CN108363623A CN 108363623 A CN108363623 A CN 108363623A CN 201810161507 A CN201810161507 A CN 201810161507A CN 108363623 A CN108363623 A CN 108363623A
- Authority
- CN
- China
- Prior art keywords
- task
- index
- gpu
- node
- idle node
- 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
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/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/5038—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 execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/508—Monitor
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种GPU资源调度方法,包括接收用户输入的任务以及所述任务对应的任务运行指数;其中,所述任务运行指数包括GPU运行数目;获取空闲节点指数;其中,所述空闲节点指数包括GPU空闲数目;判断所述任务运行指数是否超出所述空闲节点指数;若是,则将所述任务设置为排队状态,直至所述任务运行指数不超出所述空闲节点指数;若否,则将所述任务发送至对应的空闲节点上。该方法可以对GPU资源进行合理调度,进一步实现了对CPU资源和GPU资源的统一调度,最大化的利用了集群中的CPU资源和GPU资源,有效避免了资源闲置和浪费。本发明还公开了一种GPU资源调度装置、设备及计算机可读存储介质,均具有上述有益效果。
Description
技术领域
本发明涉及计算机集群设备资源管理领域,特别涉及一种GPU资源调度方法,还涉及一种GPU资源调度装置、设备及计算机可读存储介质。
背景技术
当前,Linux服务器和Linux计算机集群被越来越多的使用,对于一个普通的超算平台,其可供使用的计算核心往往达到上千个,故其计算资源和计算作业任务也会极其复杂。更为复杂的是,现在的超算设备很多都搭载有异构加速卡,如GPU计算卡,FPGA计算卡等。然而,当前的作业调度设备大多只能调度和分配传统超算设备中的CPU、内存等资源,而GPU加速卡的资源分配,则没有较为成熟和通用的方式。
在现有技术中,采用通过划分队列的方式来分配GPU资源。具体来说,把计算集群中含GPU卡的节点划分成一个队列,不含GPU卡的节点划分成另外一个队列。如果集群中含有不同种类的GPU卡或者节点上GPU卡的数量不一致,则依次划分成不同的队列。在划分完队列以后,用户自行判断那个队列更适合自己的作业,并把作业提交到相应的队列进行处理。
然而,对于这种方法来说,当一个GPU节点被分配作业后,其他作业就不会再分配到该节点上。因为作业调度设备无法判断已分配的作业需要多少GPU资源,以及当前节点上的GPU资源是否还有富余。因此会选择不再往该节点投递作业,来防止多个作业运行在同一个GPU上,造成抢占和其他计算异常。但是这种方式会造成计算资源或多或少的浪费。比如,一个计算节点上搭载了2颗GPU芯片,而投递在该节点上的作业只使用了1颗,则另一颗即会处于闲置的状态。此外,由于当前一个计算节点上往往有具有多达十几个CPU核心,而一些GPU程序往往只能使用一个CPU核心,这会使其他大量的CPU核心则处于闲置状态,造成了较大的资源闲置和浪费。
因此,如何适当的调度GPU资源,以进一步实现CPU资源和GPU资源的统一调度,最大化的利用其计算资源,避免资源浪费是本领域技术人员亟待解决的问题。
发明内容
本发明的目的是提供一种GPU资源调度方法,该GPU资源调度方法可以对GPU资源进行合理调度,进一步实现了对CPU资源和GPU资源的统一调度,最大化的利用了集群中的CPU资源和GPU资源,有效避免了资源闲置和浪费;本发明的另一目的是提供一种GPU资源调度装置、设备及计算机可读存储介质,均具有上述有益效果。
为解决上述技术问题,本发明提供一种GPU资源调度方法,该GPU资源调度方法包括:
接收用户输入的任务以及所述任务对应的任务运行指数;其中,所述任务运行指数包括GPU运行数目;
获取空闲节点指数;其中,所述空闲节点指数包括GPU空闲数目;
判断所述任务运行指数是否超出所述空闲节点指数;
若是,则将所述任务设置为排队状态,直至所述任务运行指数不超出所述空闲节点指数;
若否,则将所述任务发送至对应的空闲节点上。
优选的,所述任务运行指数还包括计算节点运行数目和CPU运行数目;所述空闲节点指数还包括计算节点空闲数目和CPU空闲数目。
优选的,所述获取空闲节点指数包括:
在节点信息数据库中采集标记为非忙碌状态的节点,获取所述空闲节点指数。
优选的,该GPU资源调度方法还包括:
在所述节点信息数据库中获取各个GPU的剩余显存容量。
优选的,所述将所述任务发送至对应的空闲节点上之后还包括:
保存运行所述任务的空闲节点的ID信息。
为解决上述技术问题,本发明还提供一种GPU资源调度装置,该GPU资源调度装置包括:
接收模块,用于接收用户输入的任务以及所述任务对应的任务运行指数;其中,所述任务运行指数包括GPU运行数目;
第一获取模块,用于获取空闲节点指数;其中,所述空闲节点指数包括GPU空闲数目;
判断模块,用于判断所述任务运行指数是否超出所述空闲节点指数;
设置模块,用于若所述任务运行指数超出所述空闲节点指数,则将所述任务设置为排队状态,直至所述任务运行指数不超出所述空闲节点指数;
发送模块,用于若所述任务运行指数未超出所述空闲节点指数,则将所述任务发送至对应的空闲节点上。
优选的,该GPU资源调度装置还包括:
第二获取模块,用于在所述节点信息数据库中获取各个GPU的剩余显存容量。
优选的,该GPU资源调度装置还包括:
保存模块,用于保存运行所述任务的空闲节点的ID信息。
为解决上述技术问题,本发明还提供一种GPU资源调度设备,该GPU资源调度设备包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现上述任意一项所述的GPU资源调度方法的步骤。
为解决上述技术问题,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一项所述的GPU资源调度方法的步骤。
本发明所提供的一种GPU资源调度方法,包括接收用户输入的任务以及所述任务对应的任务运行指数;其中,所述任务运行指数包括GPU运行数目;获取空闲节点指数;其中,所述空闲节点指数包括GPU空闲数目;判断所述任务运行指数是否超出所述空闲节点指数;若是,则将所述任务设置为排队状态,直至所述任务运行指数不超出所述空闲节点指数;若否,则将所述任务发送至对应的空闲节点上。
可见,本发明所提供的技术方案,在任务提交脚本中增加了运行该任务时所需的节点上的GPU运行数目,与此同时,在采集空闲节点时,也增加了采集空闲节点中的GPU空闲数目,由此实现了对GPU资源的合理调度,进一步实现了对CPU资源和GPU资源的统一调度,最大化的利用了集群中的CPU资源和GPU资源,有效避免了资源闲置和浪费;同时,合理的资源调度也有效缩短了集群中各类任务的排队时间,极大的提高了任务的处理效率。
本发明还提供了一种GPU资源调度装置、设备及计算机可读存储介质,均具有上述有益效果,在此不再赘述。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明所提供的一种GPU资源调度方法的流程示意图;
图2为本发明所提供的一种GPU资源调度装置的示意图;
图3为本发明所提供的一种GPU资源调度设备的示意图。
具体实施方式
本发明的核心是提供一种GPU资源调度方法,该GPU资源调度方法可以对GPU资源进行合理调度,进一步实现了对CPU资源和GPU资源的统一调度,最大化的利用了集群中的CPU资源和GPU资源,有效避免了资源闲置和浪费;本发明的另一核心是提供一种GPU资源调度装置、设备及计算机可读存储介质,均具有上述有益效果。
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
请参考图1,图1为本发明所提供的一种GPU资源调度方法的流程示意图,该GPU资源调度方法可以包括:
S101:接收用户输入的任务以及任务对应的任务运行指数;其中,任务运行指数包括GPU运行数目;
具体的,用户在提交需要处理的任务时,同时可提交运行该任务时所需要的任务运行指数,该任务运行指数包括处理该任务所需要的GPU的数目,即GPU运行数目。当然,上述任务运行指数还可以包括其他的参数,如运行上述任务所需要的CPU的数目或计算节点的数目等,更加便于实现对GPU资源的合理调度,本发明对此不做限定。
例如,可以通过开源软件torque PBS来实现上述过程,torque PBS在处理用户提交的任务时,可实现对运行该任务时所需要的计算节点以及CPU的数目的设置,现可进一步对PBS作业提交脚本进行扩展,提交如下声明:
#PBS-l nodes=<N1>:ppn=<N2>:gpn=<N3>
其中,N1为运行该任务时需要的计算节点数,N2为运行该任务时每个计算节点上需要使用的CPU的核数,N3则为运行该任务时每个计算节点上需要使用的GPU的芯片数,由此,即实现了对任务运行时所需要的GPU的数目,也即GPU运行数目的设置。
例如,当前集群中有1个管理节点mu01和2个计算节点cu01和cu02,其中,cu01有12个CPU核心和1个GPU芯片,cu02有24个CPU核心和2个GPU芯片,假设现有任务A需要提交,该任务A需要2个计算节点,每个计算节点上的6个CPU核心和1个GPU芯片,由此即可提交如下声明:
#PBS-l nodes=<2>:ppn=<6>:gpn=<1>
此外,上述声明的设置是对torque PBS中的qsub命令进行的修改和扩展,可将其称之为qsub_gpu,在qsub_gpu读入作业提交脚本pbs.conf中时,如若其中并不含有gpn的声明,即上述N3取0,则说明该程序为纯CPU程序,如若含有gpn的声明,即可说明运行该任务需要使用GPU。当然,当程序为纯CPU程序时,可直接使用torque PBS中现有的调度策略。
S102:获取空闲节点指数;其中,空闲节点指数包括GPU空闲数目;
具体的,在运行用户提交的任务之前,还需对计算机集群系统中空闲的节点数,即空闲节点指数进行采集,该空闲节点指数包括空闲的GPU的数目,即上述GPU空闲数目,以便于将上述任务合理的分配至空闲的GPU上进行处理。当然,上述空闲节点指数还可以包括其他的参数,如空闲的CPU的数目或计算节点的数目等,更加便于实现对GPU资源的合理调度,本发明对此不做限定。
优选的,上述任务运行指数还可以包括计算节点运行数目和CPU运行数目;上述空闲节点指数还可以包括计算节点空闲数目和CPU空闲数目。
具体的,在进行任务处理时,为便于实现对GPU资源和CPU资源的统一调度,可进一步设置处理该任务所需的CPU以及计算节点的数目,即上述计算节点运行数目和CPU运行数目,同时采集计算机集群系统中空闲的CPU以及计算节点的数目,即上述计算节点空闲数目和CPU空闲数目,其具体设置方式可参照上述开源软件torque PBS运行程序的介绍。当然,上述任务运行指数和空闲节点指数还可以包括其他的内核芯片,如FPGA等,本发明在此不做具体限定。
优选的,上述获取空闲节点指数的过程可以包括:在节点信息数据库中采集标记为非忙碌状态的节点,获取所述空闲节点指数。
具体的,可预先建立节点信息数据库,以存储集群系统中各个计算节点以及各个计算节点上的CPU、GPU等核心的运行信息,如忙碌状态或非忙碌状态,或各个对应的内存、显存的容量等,本发明对此不做具体限定,进一步可直接从该节点信息数据库获取上述空闲节点指数。
例如,相对于上述开源软件torque PBS,其内部的节点信息数据库可对集群系统中各个计算节点以及其中的CPU核心的运行信息进行保存,现可在该节点信息数据库中增加新的列,以保存各个计算节点上GPU的运行信息,如其状态和显存容量。具体的,可通过每个计算节点上的pbs_mom守护进程实现GPU运行信息的采集,通过部署和运行在管理节点上的pbs_server守护进程实现GPU运行信息记录,进一步将其保存至上述节点信息数据库中。
此外,对于上述步骤S101和S102的执行过程,本发明不做具体限定,也可以在提交任务之前获取上述空闲节点指数,其执行步骤的先后不会影响本技术方案的实施。
S103:判断任务运行指数是否超出空闲节点指数;
S104:若任务运行指数超出空闲节点指数,则将任务设置为排队状态,直至任务运行指数不超出空闲节点指数;
S105:若任务运行指数未超出空闲节点指数,则将任务发送至对应的空闲节点上。
具体的,对设置的任务运行指数和获取的空闲节点指数进行比对,如若任务运行指数超出空闲节点指数,则说明计算机集群系统中所空闲的节点已经不足以处理用户提交的任务,此时该任务可被设置为排队状态,等前一个任务处理完毕后,再判断任务运行指数是否还超出空闲节点指数,以此类推,直至任务运行指数不超出空闲节点指数为止。如若任务运行指数未超出空闲节点指数,则说明计算机集群系统中空闲的节点足以处理用户提交的任务,此时将该任务分配至合适的空闲节点上即可。
例如,当前集群中有1个管理节点mu01和2个计算节点cu01和cu02,其中,cu01有12个CPU核心和1个GPU芯片,cu02有24个CPU核心和2个GPU芯片,且均处于非忙碌状态。相对于上述开源软件torque PBS,假设现有任务B需要提交,该任务B需要2个计算节点,每个计算节点上的6个CPU核心和1个GPU芯片,则可提交如下声明:
#PBS-l nodes=<2>:ppn=<6>:gpn=<1>
此时,cu01上还有空闲的CPU核心6个,无空闲GPU芯片,cu02上还有空闲的CPU核心18个,空闲的GPU芯片1个。此时假设有任务C需要提交,该任务C也需要2个计算节点,每个计算节点上的6个CPU核心和1个GPU芯片,则可同样提交如下声明:
#PBS-l nodes=<2>:ppn=<6>:gpn=<1>
此时,由于cu01上已无空闲的GPU芯片,那么任务C则需要进入排队状态,等待任务B处理完毕,再进行处理。如若此时有任务D需要提交,该任务D需要1个计算节点,该计算节点上的6个CPU核心和1个GPU芯片,则可提交如下声明:
#PBS-l nodes=<1>:ppn=<6>:gpn=<1>
此时,由于cu02可满足其要求,即可将该任务D发送至cu02上进行处理。
优选的,该GPU资源调度方法还可以包括:在节点信息数据库中获取各个GPU的剩余显存容量。
具体的,由于用户提交的某些任务可能占用空间较小,如只需占用GPU显存30%的容量,那么剩余70%则会处于空闲状态,造成资源浪费,故可进一步获取GPU的剩余显存容量,当集群系统再次接收到占用空间较小的任务时,可按照具体情况发送至相应的具有适当剩余显存容量的GPU芯片上,进一步对GPU资源进行了合理调度,避免了资源浪费。
优选的,上述将任务发送至对应的空闲节点上之后还可以包括:保存运行任务的空闲节点的ID信息。
具体的,如若任务在运行过程中出现状况,为避免难以找到运行该任务的计算节点,可进一步在将任务发送至相应的空闲节点上之后,获取并保存运行该任务的空闲节点的ID信息。具体的,相对于上述开源软件torque PBS,在把任务提交到空闲的计算节点进行处理时,可以通过在每个计算节点上声明CUDA_VISIBLE_DEVICES变量,以便于任务可以使用分配的GPU id设备来进行处理。在任务提交运行后,可通过pbs_mom监控任务的运行情况,并把每个任务在每个计算节点上使用的GPU的ID信息反馈给pbs_master,由pbs_master存储并记录相关信息,由此实现了上述保存运行任务的空闲节点的ID信息的过程。
本发明所提供的GPU资源调度方法,在任务提交脚本中增加了运行该任务时所需的节点上的GPU运行数目,与此同时,在采集空闲节点时,也增加了采集空闲节点中的GPU空闲数目,由此实现了对GPU资源的合理调度,进一步实现了对CPU资源和GPU资源的统一调度,最大化的利用了集群中的CPU资源和GPU资源,有效避免了资源闲置和浪费;同时,合理的资源调度也有效缩短了集群中各类任务的排队时间,极大的提高了任务的处理效率。
为解决上述问题,请参考图2,图2为本发明所提供的一种GPU资源调度装置的示意图,该GPU资源调度装置可以包括:
接收模块1,用于接收用户输入的任务以及任务对应的任务运行指数;其中,任务运行指数包括GPU运行数目;
第一获取模块2,用于获取空闲节点指数;其中,空闲节点指数包括GPU空闲数目;
判断模块3,用于判断任务运行指数是否超出空闲节点指数;
设置模块4,用于若任务运行指数超出空闲节点指数,则将任务设置为排队状态,直至任务运行指数不超出空闲节点指数;
发送模块5,用于若任务运行指数未超出空闲节点指数,则将任务发送至对应的空闲节点上。
作为一种优选实施例,上述第一获取模块2具体用于在节点信息数据库中采集标记为非忙碌状态的节点,获取空闲节点指数。
作为一种优选实施例,该GPU资源调度装置还可以包括:
第二获取模块,用于在节点信息数据库中获取各个GPU的剩余显存容量。
作为一种优选实施例,该GPU资源调度装置还可以包括:
保存模块,用于保存运行任务的空闲节点的ID信息。
对于本发明提供的装置的介绍请参照上述方法实施例,本发明在此不做赘述。
为解决上述问题,请参考图3,图3为本发明所提供的一种GPU资源调度设备的示意图,该GPU资源调度设备可以包括:
存储器10,用于存储计算机程序;
处理器20,用于执行计算机程序时实现如下步骤:
接收用户输入的任务以及任务对应的任务运行指数;其中,任务运行指数包括GPU运行数目;获取空闲节点指数;其中,空闲节点指数包括GPU空闲数目;判断任务运行指数是否超出空闲节点指数;若是,则将任务设置为排队状态,直至任务运行指数不超出空闲节点指数;若否,则将任务发送至对应的空闲节点上。
对于本发明提供的设备的介绍请参照上述方法实施例,本发明在此不做赘述。
为解决上述问题,本发明还提供了一种计算机可读存储介质,该计算机可读存储介质上存有计算机程序,该计算机程序被处理器执行时可实现如下步骤:
接收用户输入的任务以及任务对应的任务运行指数;其中,任务运行指数包括GPU运行数目;获取空闲节点指数;其中,空闲节点指数包括GPU空闲数目;判断任务运行指数是否超出空闲节点指数;若是,则将任务设置为排队状态,直至任务运行指数不超出空闲节点指数;若否,则将任务发送至对应的空闲节点上。
其中,上述计算机可读存储介质可以包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
对于本发明提供的计算机可读存储介质的介绍请参照上述方法实施例,本发明在此不做赘述。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上对本发明所提供的GPU资源调度方法、装置、设备及计算机可读存储介质进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围要素。
Claims (10)
1.一种GPU资源调度方法,其特征在于,包括:
接收用户输入的任务以及所述任务对应的任务运行指数;其中,所述任务运行指数包括GPU运行数目;
获取空闲节点指数;其中,所述空闲节点指数包括GPU空闲数目;
判断所述任务运行指数是否超出所述空闲节点指数;
若是,则将所述任务设置为排队状态,直至所述任务运行指数不超出所述空闲节点指数;
若否,则将所述任务发送至对应的空闲节点上。
2.如权利要求1所述的GPU资源调度方法,其特征在于,所述任务运行指数还包括计算节点运行数目和CPU运行数目;所述空闲节点指数还包括计算节点空闲数目和CPU空闲数目。
3.如权利要求2所述的GPU资源调度方法,其特征在于,所述获取空闲节点指数包括:
在节点信息数据库中采集标记为非忙碌状态的节点,获取所述空闲节点指数。
4.如权利要求3所述的GPU资源调度方法,其特征在于,还包括:
在所述节点信息数据库中获取各个GPU的剩余显存容量。
5.如权利要求4所述的GPU资源调度方法,其特征在于,所述将所述任务发送至对应的空闲节点上之后还包括:
保存运行所述任务的空闲节点的ID信息。
6.一种GPU资源调度装置,其特征在于,包括:
接收模块,用于接收用户输入的任务以及所述任务对应的任务运行指数;其中,所述任务运行指数包括GPU运行数目;
第一获取模块,用于获取空闲节点指数;其中,所述空闲节点指数包括GPU空闲数目;
判断模块,用于判断所述任务运行指数是否超出所述空闲节点指数;
设置模块,用于若所述任务运行指数超出所述空闲节点指数,则将所述任务设置为排队状态,直至所述任务运行指数不超出所述空闲节点指数;
发送模块,用于若所述任务运行指数未超出所述空闲节点指数,则将所述任务发送至对应的空闲节点上。
7.如权利要求6所述的GPU资源调度装置,其特征在于,还包括:
第二获取模块,用于在所述节点信息数据库中获取各个GPU的剩余显存容量。
8.如权利要求7所述的GPU资源调度装置,其特征在于,还包括:
保存模块,用于保存运行所述任务的空闲节点的ID信息。
9.一种GPU资源调度设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至5任意一项所述的GPU资源调度方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至5任意一项所述的GPU资源调度方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810161507.3A CN108363623A (zh) | 2018-02-27 | 2018-02-27 | Gpu资源调度方法、装置、设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810161507.3A CN108363623A (zh) | 2018-02-27 | 2018-02-27 | Gpu资源调度方法、装置、设备及计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108363623A true CN108363623A (zh) | 2018-08-03 |
Family
ID=63003001
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810161507.3A Pending CN108363623A (zh) | 2018-02-27 | 2018-02-27 | Gpu资源调度方法、装置、设备及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108363623A (zh) |
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109189699A (zh) * | 2018-09-21 | 2019-01-11 | 郑州云海信息技术有限公司 | 多路服务器通信方法、系统、中间控制器及可读存储介质 |
CN109213600A (zh) * | 2018-09-11 | 2019-01-15 | 郑州云海信息技术有限公司 | 一种基于ai云的gpu资源调度方法和装置 |
CN109376009A (zh) * | 2018-09-26 | 2019-02-22 | 郑州云海信息技术有限公司 | 一种共享资源的方法及装置 |
CN109710414A (zh) * | 2018-12-29 | 2019-05-03 | 北京三快在线科技有限公司 | 一种作业调度方法、装置、设备及存储介质 |
CN110389843A (zh) * | 2019-07-29 | 2019-10-29 | 广东浪潮大数据研究有限公司 | 一种业务调度方法、装置、设备及可读存储介质 |
CN110688218A (zh) * | 2019-09-05 | 2020-01-14 | 广东浪潮大数据研究有限公司 | 资源调度方法及装置 |
CN110706148A (zh) * | 2019-10-10 | 2020-01-17 | 中国建设银行股份有限公司 | 人脸图像处理方法、装置、设备和存储介质 |
CN110750358A (zh) * | 2019-10-18 | 2020-02-04 | 上海交通大学苏州人工智能研究院 | 一种超算平台资源利用率分析方法 |
CN110796591A (zh) * | 2019-09-25 | 2020-02-14 | 广东浪潮大数据研究有限公司 | 一种gpu卡的使用方法及相关设备 |
CN110888743A (zh) * | 2019-11-27 | 2020-03-17 | 中科曙光国际信息产业有限公司 | 一种gpu资源使用方法、装置及存储介质 |
CN111090574A (zh) * | 2018-10-23 | 2020-05-01 | 深圳云天励飞技术有限公司 | 一种回归测试方法、装置及存储介质 |
CN111160710A (zh) * | 2019-12-05 | 2020-05-15 | 国网浙江省电力有限公司温州供电公司 | 多目标资源调度自动化管控方法及装置 |
CN111314401A (zh) * | 2018-12-12 | 2020-06-19 | 百度在线网络技术(北京)有限公司 | 资源配置方法、装置、系统、终端和计算机可读存储介质 |
CN111966500A (zh) * | 2020-09-07 | 2020-11-20 | 网易(杭州)网络有限公司 | 资源调度方法、装置、电子设备及存储介质 |
CN112000463A (zh) * | 2020-07-16 | 2020-11-27 | 苏州浪潮智能科技有限公司 | 一种基于cuda的gpu资源分配方法、系统、终端及存储介质 |
CN112148467A (zh) * | 2019-06-28 | 2020-12-29 | 微软技术许可有限责任公司 | 计算资源的动态分配 |
CN113032137A (zh) * | 2019-12-25 | 2021-06-25 | 中科寒武纪科技股份有限公司 | 任务分配方法、装置、计算机设备及可读存储介质 |
CN113127189A (zh) * | 2019-12-31 | 2021-07-16 | 奇安信科技集团股份有限公司 | 鉴定任务管理方法、系统及装置 |
CN113157427A (zh) * | 2020-01-07 | 2021-07-23 | 中科寒武纪科技股份有限公司 | 任务迁移的方法、装置、计算机设备及可读存储介质 |
CN113742064A (zh) * | 2021-08-06 | 2021-12-03 | 苏州浪潮智能科技有限公司 | 一种服务器集群的资源整理方法、系统、设备及介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102521012A (zh) * | 2011-11-24 | 2012-06-27 | 华中科技大学 | 基于虚拟机的gpu集群管理系统 |
US9135741B2 (en) * | 2012-01-23 | 2015-09-15 | Nec Laboratories America, Inc. | Interference-driven resource management for GPU-based heterogeneous clusters |
CN106959891A (zh) * | 2017-03-30 | 2017-07-18 | 山东超越数控电子有限公司 | 一种实现gpu调度的集群管理方法和系统 |
-
2018
- 2018-02-27 CN CN201810161507.3A patent/CN108363623A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102521012A (zh) * | 2011-11-24 | 2012-06-27 | 华中科技大学 | 基于虚拟机的gpu集群管理系统 |
US9135741B2 (en) * | 2012-01-23 | 2015-09-15 | Nec Laboratories America, Inc. | Interference-driven resource management for GPU-based heterogeneous clusters |
CN106959891A (zh) * | 2017-03-30 | 2017-07-18 | 山东超越数控电子有限公司 | 一种实现gpu调度的集群管理方法和系统 |
Non-Patent Citations (1)
Title |
---|
顾群: "基于Torque的异构集群平台调度算法的设计与实现", 《中国优秀硕士学位论文全文数据库信息科技辑,2014年第10期》 * |
Cited By (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109213600B (zh) * | 2018-09-11 | 2021-04-30 | 郑州云海信息技术有限公司 | 一种基于ai云的gpu资源调度方法和装置 |
CN109213600A (zh) * | 2018-09-11 | 2019-01-15 | 郑州云海信息技术有限公司 | 一种基于ai云的gpu资源调度方法和装置 |
CN109189699A (zh) * | 2018-09-21 | 2019-01-11 | 郑州云海信息技术有限公司 | 多路服务器通信方法、系统、中间控制器及可读存储介质 |
CN109189699B (zh) * | 2018-09-21 | 2022-03-22 | 郑州云海信息技术有限公司 | 多路服务器通信方法、系统、中间控制器及可读存储介质 |
CN109376009A (zh) * | 2018-09-26 | 2019-02-22 | 郑州云海信息技术有限公司 | 一种共享资源的方法及装置 |
CN111090574B (zh) * | 2018-10-23 | 2024-02-27 | 深圳云天励飞技术有限公司 | 一种回归测试方法、装置及存储介质 |
CN111090574A (zh) * | 2018-10-23 | 2020-05-01 | 深圳云天励飞技术有限公司 | 一种回归测试方法、装置及存储介质 |
CN111314401A (zh) * | 2018-12-12 | 2020-06-19 | 百度在线网络技术(北京)有限公司 | 资源配置方法、装置、系统、终端和计算机可读存储介质 |
CN109710414A (zh) * | 2018-12-29 | 2019-05-03 | 北京三快在线科技有限公司 | 一种作业调度方法、装置、设备及存储介质 |
CN109710414B (zh) * | 2018-12-29 | 2021-03-26 | 北京三快在线科技有限公司 | 一种作业调度方法、装置、设备及存储介质 |
CN112148467A (zh) * | 2019-06-28 | 2020-12-29 | 微软技术许可有限责任公司 | 计算资源的动态分配 |
CN110389843A (zh) * | 2019-07-29 | 2019-10-29 | 广东浪潮大数据研究有限公司 | 一种业务调度方法、装置、设备及可读存储介质 |
CN110389843B (zh) * | 2019-07-29 | 2022-04-15 | 广东浪潮大数据研究有限公司 | 一种业务调度方法、装置、设备及可读存储介质 |
CN110688218B (zh) * | 2019-09-05 | 2022-11-04 | 广东浪潮大数据研究有限公司 | 资源调度方法及装置 |
CN110688218A (zh) * | 2019-09-05 | 2020-01-14 | 广东浪潮大数据研究有限公司 | 资源调度方法及装置 |
CN110796591A (zh) * | 2019-09-25 | 2020-02-14 | 广东浪潮大数据研究有限公司 | 一种gpu卡的使用方法及相关设备 |
CN110796591B (zh) * | 2019-09-25 | 2023-11-03 | 广东浪潮大数据研究有限公司 | 一种gpu卡的使用方法及相关设备 |
CN110706148B (zh) * | 2019-10-10 | 2023-08-15 | 中国建设银行股份有限公司 | 人脸图像处理方法、装置、设备和存储介质 |
CN110706148A (zh) * | 2019-10-10 | 2020-01-17 | 中国建设银行股份有限公司 | 人脸图像处理方法、装置、设备和存储介质 |
CN110750358A (zh) * | 2019-10-18 | 2020-02-04 | 上海交通大学苏州人工智能研究院 | 一种超算平台资源利用率分析方法 |
CN110888743B (zh) * | 2019-11-27 | 2022-12-20 | 中科曙光国际信息产业有限公司 | 一种gpu资源使用方法、装置及存储介质 |
CN110888743A (zh) * | 2019-11-27 | 2020-03-17 | 中科曙光国际信息产业有限公司 | 一种gpu资源使用方法、装置及存储介质 |
CN111160710A (zh) * | 2019-12-05 | 2020-05-15 | 国网浙江省电力有限公司温州供电公司 | 多目标资源调度自动化管控方法及装置 |
CN113032137A (zh) * | 2019-12-25 | 2021-06-25 | 中科寒武纪科技股份有限公司 | 任务分配方法、装置、计算机设备及可读存储介质 |
CN113127189A (zh) * | 2019-12-31 | 2021-07-16 | 奇安信科技集团股份有限公司 | 鉴定任务管理方法、系统及装置 |
CN113157427A (zh) * | 2020-01-07 | 2021-07-23 | 中科寒武纪科技股份有限公司 | 任务迁移的方法、装置、计算机设备及可读存储介质 |
CN113157427B (zh) * | 2020-01-07 | 2024-03-15 | 中科寒武纪科技股份有限公司 | 任务迁移的方法、装置、计算机设备及可读存储介质 |
CN112000463B (zh) * | 2020-07-16 | 2022-11-25 | 苏州浪潮智能科技有限公司 | 一种基于cuda的gpu资源分配方法、系统、终端及存储介质 |
CN112000463A (zh) * | 2020-07-16 | 2020-11-27 | 苏州浪潮智能科技有限公司 | 一种基于cuda的gpu资源分配方法、系统、终端及存储介质 |
CN111966500B (zh) * | 2020-09-07 | 2023-08-11 | 网易(杭州)网络有限公司 | 资源调度方法、装置、电子设备及存储介质 |
CN111966500A (zh) * | 2020-09-07 | 2020-11-20 | 网易(杭州)网络有限公司 | 资源调度方法、装置、电子设备及存储介质 |
CN113742064A (zh) * | 2021-08-06 | 2021-12-03 | 苏州浪潮智能科技有限公司 | 一种服务器集群的资源整理方法、系统、设备及介质 |
CN113742064B (zh) * | 2021-08-06 | 2023-08-04 | 苏州浪潮智能科技有限公司 | 一种服务器集群的资源整理方法、系统、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108363623A (zh) | Gpu资源调度方法、装置、设备及计算机可读存储介质 | |
CN102567086B (zh) | 一种任务调度的方法、设备和系统 | |
US9875139B2 (en) | Graphics processing unit controller, host system, and methods | |
CN110109752A (zh) | 一种任务分配方法、装置、电子设备及存储介质 | |
CN107688495B (zh) | 调度处理器的方法及设备 | |
CN113051053B (zh) | 异构资源调度方法、装置、设备和计算机可读存储介质 | |
CN110018892A (zh) | 基于线程资源的任务处理方法及相关装置 | |
CN109857535B (zh) | 面向Spark JDBC的任务优先级控制的实现方法及装置 | |
CN110162388A (zh) | 一种任务调度方法、系统及终端设备 | |
CN107851039A (zh) | 用于资源管理的系统和方法 | |
CN108052396A (zh) | 一种资源分配方法及系统 | |
CN111338791A (zh) | 集群队列资源的调度方法、装置、设备及存储介质 | |
CN103617088B (zh) | 在不同类型线程中分配内核资源的方法、装置及其处理器 | |
CN107656813A (zh) | 一种负载调度的方法、装置及终端 | |
CN115220921B (zh) | 资源调度方法及相关装置、图形处理器、摄像器件和介质 | |
CN105824705B (zh) | 一种任务分配方法和电子设备 | |
CN103503412A (zh) | 用于调度资源的方法及装置 | |
CN107682391A (zh) | 电子装置、服务器分配控制方法和计算机可读存储介质 | |
CN107704322A (zh) | 请求分配方法及装置 | |
CN108595259A (zh) | 一种基于全局管理的内存池管理方法 | |
US20090187614A1 (en) | Managing Dynamically Allocated Memory in a Computer System | |
CN116126545B (zh) | 资源调度的数据抽取方法、系统、存储介质及设备 | |
WO2013178244A1 (en) | A graphics processing unit controller, host system, and methods | |
CN116881003A (zh) | 资源分配方法、装置、服务设备及存储介质 | |
CN109445863B (zh) | 一种基于fpga的数据处理方法、装置、设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180803 |
|
RJ01 | Rejection of invention patent application after publication |