CN115981871B - 一种gpu资源调度方法、装置、设备及存储介质 - Google Patents
一种gpu资源调度方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN115981871B CN115981871B CN202310261205.4A CN202310261205A CN115981871B CN 115981871 B CN115981871 B CN 115981871B CN 202310261205 A CN202310261205 A CN 202310261205A CN 115981871 B CN115981871 B CN 115981871B
- Authority
- CN
- China
- Prior art keywords
- task
- gpu
- current
- model
- server
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 44
- 238000012216 screening Methods 0.000 claims abstract description 58
- 238000001514 detection method Methods 0.000 claims abstract description 40
- 238000012545 processing Methods 0.000 claims description 20
- 238000004590 computer program Methods 0.000 claims description 16
- 238000004891 communication Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 238000012544 monitoring process Methods 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本申请公开了一种GPU资源调度方法方法、装置、设备及存储介质,涉及计算机资源动态调度领域,包括:获取业务侧发送的初始图片检测任务并根据所述初始图片检测任务确定待执行任务和待使用模型;从所述待执行任务和所述待使用模型中确定出当前待执行任务和当前目标模型,并基于所述当前目标模型获取各GPU服务器的当前状态信息;根据所述当前状态信息并利用预设服务器筛选逻辑从所述各GPU服务器中筛选出目标服务器,以便所述目标服务器利用所述当前目标模型执行所述当前待执行任务。这样一来,可以避免GPU服务器与模型绑定,从而可以动态调度GPU服务器资源,提高了GPU服务器资源的利用率,实现了对GPU服务器资源的高效利用。
Description
技术领域
本发明涉及计算机资源动态调度领域,特别涉及一种GPU资源调度方法、装置、设备及存储介质。
背景技术
GPU (Graphic Process Unit,图形处理器),又称显示核心、视觉处理器、显示芯片,是一种专门在个人电脑、工作站、游戏机和一些移动设备(如平板电脑、智能手机等)上图像运算工作的微处理器,与CPU(Central Processing Unit,中央处理器)类似,只不过GPU是专为执行复杂的数学和几何计算而设计的,而这些计算是图形渲染所必需的。GPU 加速计算是指同时利用GPU和 CPU,加快科学、分析、工程、消费和企业应用程序的运行速度。如今基于GPU加速的应用越来越多,相对比于传统WEB服务的集群架构,GPU计算资源集群架构并不多。
目前的现有技术中,来自业务的神经网络计算任务会与已有的计算资源绑定,并且一般与模型绑定,一台GPU计算服务器往往运行单一模型,且无法动态调度任务,这样在高峰时刻会造成计算任务的计算缓慢问题,而在低峰时刻会造成资源浪费问题。
发明内容
有鉴于此,本发明的目的在于提供一种GPU资源调度方法、装置、设备及存储介质,可以避免GPU服务器与模型绑定,动态调度GPU服务器资源,提高GPU服务器资源的利用率,并实现对GPU服务器资源的高效利用。其具体方案如下:
第一方面,本申请提供了一种GPU资源调度方法,应用于资源调度侧,包括:
获取业务侧发送的初始图片检测任务并根据所述初始图片检测任务确定待执行任务和待使用模型;
从所述待执行任务和所述待使用模型中确定出当前待执行任务和当前目标模型,并基于所述当前目标模型获取各GPU服务器的当前状态信息;
根据所述当前状态信息并利用预设服务器筛选逻辑从所述各GPU服务器中筛选出目标服务器,以便所述目标服务器利用所述当前目标模型执行所述当前待执行任务。
可选的,所述根据所述初始图片检测任务确定待执行任务和待使用模型,包括:
根据所述初始图片检测任务生成抓拍指令和任务记录,并基于所述任务记录确定相应的待使用模型;
将所述抓拍指令发送至预设抓拍设备,并获取所述预设抓拍设备进行抓拍后得到的待检测图片;
基于所述待检测图片确定相应的待执行任务。
可选的,所述资源调度侧中设有第一处理节点和第二处理节点;其中,所述第一处理节点用于执行所述根据所述初始图片检测任务生成抓拍指令和任务记录的步骤;所述第二处理节点用于执行所述获取所述预设抓拍设备进行抓拍后得到的待检测图片的步骤。
可选的,所述从所述待执行任务和所述待使用模型中确定出当前待执行任务和当前目标模型,包括:
将所述待执行任务发送至任务队列的队尾进行保存,并基于先进先出顺序依次从所述任务队列中确定出当前待执行任务;
将与所述当前待执行任务对应的待使用模型确定为当前目标模型。
可选的,所述从所述待执行任务和所述待使用模型中确定出当前待执行任务和当前目标模型之后,还包括:
根据所述当前目标模型获取当前目标模型信息;所述当前目标模型信息包括与所述当前目标模型对应的预估显存占用量、模型运行GPU占用率、模型首次装载耗时和模型处理任务耗时;
相应的,所述根据所述当前状态信息并利用预设服务器筛选逻辑从所述各GPU服务器中筛选出目标服务器,包括:
根据所述当前状态信息和所述当前目标模型信息并利用预设服务器筛选逻辑从所述各GPU服务器中筛选出目标服务器。
可选的,所述GPU资源调度方法,还包括:
在所述目标服务器利用所述当前目标模型执行完所述当前待执行任务之后,获取所述目标服务器卸载所述当前目标模型后反馈的当前状态信息。
可选的,所述根据所述当前状态信息并利用预设服务器筛选逻辑从所述各GPU服务器中筛选出目标服务器,包括:
根据所述当前状态信息确定所述各GPU服务器中是否存在已装载所述当前目标模型的GPU服务器;
若存在,则从已装载所述当前目标模型的GPU服务器中筛选出满足预设服务器性能要求的一台GPU服务器作为所述目标服务器;
若不存在,则从所述各GPU服务器中筛选出满足所述预设服务器性能要求的一台GPU服务器作为所述目标服务器。
第二方面,本申请提供了一种GPU资源调度装置,应用于资源调度侧,包括:
任务模型确定模块,用于获取业务侧发送的初始图片检测任务并根据所述初始图片检测任务确定待执行任务和待使用模型;
状态信息获取模块,用于从所述待执行任务和所述待使用模型中确定出当前待执行任务和当前目标模型,并基于所述当前目标模型获取各GPU服务器的当前状态信息;
服务器筛选模块,用于根据所述当前状态信息并利用预设服务器筛选逻辑从所述各GPU服务器中筛选出目标服务器,以便所述目标服务器利用所述当前目标模型执行所述当前待执行任务。
第三方面,本申请提供了一种电子设备,包括:
存储器,用于保存计算机程序;
处理器,用于执行所述计算机程序以实现前述的GPU资源调度方法。
第四方面,本申请提供了一种计算机可读存储介质,用于保存计算机程序,所述计算机程序被处理器执行时实现前述的GPU资源调度方法。
本申请中,获取业务侧发送的初始图片检测任务并根据所述初始图片检测任务确定待执行任务和待使用模型;从所述待执行任务和所述待使用模型中确定出当前待执行任务和当前目标模型,并基于所述当前目标模型获取各GPU服务器的当前状态信息;根据所述当前状态信息并利用预设服务器筛选逻辑从所述各GPU服务器中筛选出目标服务器,以便所述目标服务器利用所述当前目标模型执行所述当前待执行任务。通过上述方案,本申请可以根据业务侧发送的初始图片检测任务确定出待执行任务和待使用模型,以得到当前待执行任务和当前目标模型,基于所述当前目标模型获取各GPU服务器的当前状态信息,以利用预设服务器筛选逻辑筛选出目标服务器,以便所述目标服务器利用所述当前目标模型执行所述当前待执行任务。这样一来,可以根据当前待执行任务和当前目标模型选择满足用户需求的目标服务器,避免GPU服务器与模型绑定,从而可以动态调度GPU服务器资源,提高了GPU服务器资源的利用率,实现了对GPU服务器资源的高效利用。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请提供的一种GPU资源调度方法流程图;
图2为本申请提供的一种具体的GPU资源调度方法流程图;
图3为本申请提供的一种GPU资源调度系统架构示意图;
图4为本申请提供的一种GPU资源调度装置结构示意图;
图5为本申请提供的一种电子设备结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
目前来自业务的神经网络计算任务会与已有的计算资源绑定,并且一般与模型绑定,这样无法动态调度任务,在高峰时刻会造成计算任务的计算缓慢问题,而在低峰时刻会造成资源浪费问题。因此,本申请公开了一种GPU资源调度方法,可以避免GPU服务器与模型绑定,动态调度GPU服务器资源,提高GPU服务器资源的利用率,并实现对GPU服务器资源的高效利用。
参见图1所示,本发明实施例公开了一种GPU资源调度方法,应用于资源调度侧,包括:
步骤S11、获取业务侧发送的初始图片检测任务并根据所述初始图片检测任务确定待执行任务和待使用模型。
本实施例中,需要指出的是,所述根据所述初始图片检测任务确定待执行任务和待使用模型,具体可以包括:根据所述初始图片检测任务生成抓拍指令和任务记录,并基于所述任务记录确定相应的待使用模型;将所述抓拍指令发送至预设抓拍设备,并获取所述预设抓拍设备进行抓拍后得到的待检测图片;基于所述待检测图片确定相应的待执行任务。可以理解的是,所述资源调度侧中设有第一处理节点和第二处理节点;其中,所述第一处理节点用于执行所述根据所述初始图片检测任务生成抓拍指令和任务记录的步骤;所述第二处理节点用于执行所述获取所述预设抓拍设备进行抓拍后得到的待检测图片的步骤。这样一来,可以根据业务侧发送的初始图片监测任务确定出本申请中需要目标服务器执行的待执行任务和目标服务器执行上述任务所需要利用的待使用模型。
步骤S12、从所述待执行任务和所述待使用模型中确定出当前待执行任务和当前目标模型,并基于所述当前目标模型获取各GPU服务器的当前状态信息。
本实施例中,基于当前目标模型获取各GPU服务器中相应的当前状态信息,可以理解的是,所述当前状态信息包括当前GPU服务器是否已经预装载了当前目标模型、当前GPU服务器的显存剩余与GPU算力剩余量。这样一来,可以通过获取各GPU服务器的当前状态信息,来筛选出满足当前目标模型装载需求的目标服务器执行当前待执行任务。
步骤S13、根据所述当前状态信息并利用预设服务器筛选逻辑从所述各GPU服务器中筛选出目标服务器,以便所述目标服务器利用所述当前目标模型执行所述当前待执行任务。
本实施例中,需要指出的是,所述根据所述当前状态信息并利用预设服务器筛选逻辑从所述各GPU服务器中筛选出目标服务器,具体可以包括:根据所述当前状态信息确定所述各GPU服务器中是否存在已装载所述当前目标模型的GPU服务器;若存在,则从已装载所述当前目标模型的GPU服务器中筛选出满足预设服务器性能要求的一台GPU服务器作为所述目标服务器;若不存在,则从所述各GPU服务器中筛选出满足所述预设服务器性能要求的一台GPU服务器作为所述目标服务器。这样一来,若各GPU服务器中存在已装载当前目标模型的GPU服务器,则可从已装载当前目标模型的GPU服务器中筛选出满足预设服务器性能要求的一台GPU服务器作为目标服务器,以节省在执行当前待执行任务之前模型装载的时间,提高任务执行的效率;若不存在,则从各GPU服务器中筛选出满足所述预设服务器性能要求的一台GPU服务器作为目标服务器,所述预设服务器性能要求可以根据用户的需求而进行设定,从而提高用户的使用体验,提高本发明的普适性。
可以理解的是,在所述目标服务器利用所述当前目标模型执行完所述当前待执行任务之后,获取所述目标服务器卸载所述当前目标模型后反馈的当前状态信息。这样一来,本发明可以在目标服务器卸载当前目标模型之后,根据目标服务器反馈的状态信息进行实时更新,避免在目标服务器利用模型处理任务后始终对利用的模型保持占用状态,从而提高资源调度的准确性和任务处理的效率。需要注意的是,本发明中目标服务器对自身的当前状态的反馈并不仅在卸载当前目标模型后才触发,也可以是根据预设时间周期进行周期性反馈,所述预设时间周期可以根据用户需求进行设定。
本实施例中,获取业务侧发送的初始图片检测任务并根据所述初始图片检测任务确定待执行任务和待使用模型;从所述待执行任务和所述待使用模型中确定出当前待执行任务和当前目标模型,并基于所述当前目标模型获取各GPU服务器的当前状态信息;根据所述当前状态信息并利用预设服务器筛选逻辑从所述各GPU服务器中筛选出目标服务器,以便所述目标服务器利用所述当前目标模型执行所述当前待执行任务。通过上述方案,本申请可以根据业务侧发送的初始图片检测任务确定出待执行任务和待使用模型,以得到当前待执行任务和当前目标模型,基于所述当前目标模型获取各GPU服务器的当前状态信息,以利用预设服务器筛选逻辑筛选出目标服务器,以便所述目标服务器利用所述当前目标模型执行所述当前待执行任务。这样一来,可以根据当前待执行任务和当前目标模型选择满足用户需求的目标服务器,避免GPU服务器与模型绑定,从而可以动态调度GPU服务器资源,提高了GPU服务器资源的利用率,实现了对GPU服务器资源的高效利用。
参见图2所示,本发明实施例公开了一种具体的GPU资源调度方法,应用于资源调度侧,包括:
步骤S21、获取业务侧发送的初始图片检测任务并根据所述初始图片检测任务确定待执行任务和待使用模型。
步骤S22、将所述待执行任务发送至任务队列的队尾进行保存,并基于先进先出顺序依次从所述任务队列中确定出当前待执行任务。
本实施例中,可以将确定出的待执行任务发送至任务队列的队尾进行保存,每次均基于先进先出的顺序从所述任务队列中确定出当前待执行任务。可以理解的是,所述从所述任务队列中确定出当前待执行任务之后,具体还可以包括:监测所述当前待执行任务的任务执行状态;若监测到所述当前待执行任务的任务执行状态为预设执行失败状态,则将所述当前待执行任务发送至所述任务队列的队尾进行保存。也即,当监测到当前待执行任务的任务执行状态为预设执行失败状态时,例如当所有GPU服务器此时均处于繁忙状态时,无法基于与当前待执行任务对应的当前目标模型确定出可以执行所述当前待执行任务的目标服务器,此时可以确定当前待执行任务的任务执行状态为预设执行失败状态,然后可以将所述当前待执行任务发送至所述任务队列的队尾进行保存,以便后续进行资源调度。这样一来,可以降低当前待执行任务的等待时长,提高资源调度和任务处理的效率。
步骤S23、将与所述当前待执行任务对应的待使用模型确定为当前目标模型,并基于所述当前目标模型获取各GPU服务器的当前状态信息。
步骤S24、根据所述当前状态信息并利用预设服务器筛选逻辑从所述各GPU服务器中筛选出目标服务器,以便所述目标服务器利用所述当前目标模型执行所述当前待执行任务。
关于步骤S21、步骤S23和步骤S24的具体实施过程可以参考前述实施例中的相应公开内容,在此不再进行赘述。
本实施例中,获取业务侧发送的初始图片检测任务并根据所述初始图片检测任务确定待执行任务和待使用模型;将所述待执行任务发送至任务队列的队尾进行保存,并基于先进先出顺序依次从所述任务队列中确定出当前待执行任务;将与所述当前待执行任务对应的待使用模型确定为当前目标模型,并基于所述当前目标模型获取各GPU服务器的当前状态信息;根据所述当前状态信息并利用预设服务器筛选逻辑从所述各GPU服务器中筛选出目标服务器,以便所述目标服务器利用所述当前目标模型执行所述当前待执行任务。这样一来,可以将待执行任务存储在任务队列中,基于先进先出顺序从所述任务队列中确定出当前待执行任务,从而可以保存多个待执行任务,在任务量较多时根据待执行任务在任务队列中的顺序确定出当前待执行任务,避免只针对业务侧发送的当前图片检测任务进行处理,提高了本申请的通用性和普适性。
下面结合如图3所示的一种GPU资源调度系统架构示意图,对本申请的具体实施过程进行具体说明。
如图3所示,本申请可以采用分布式结构,方便动态扩容、动态新增AI(ArtificialIntelligence,人工智能)计算模型。本申请在获取到业务侧发送的初始图片监测任务后,根据所述初始图片检测任务确定待执行任务和待使用模型,其中资源调度侧设有Task IO节点和Media IO节点,Task IO节点用于接收到业务侧下发的初始图片监测任务后向预设抓拍设备如IPC(IP CAMERA,网络摄像机)、NVR(Network Video Recorder,网络视频录像机)和边缘设备等发送抓拍指令,其中,抓拍指令可以是通过定时下发的方式进行发送;而Media IO节点用于接收所述预设抓拍设备抓拍后得到的图片,并存储相应的图片信息,所述图片信息包括但不限于图片地址、检测的模型信息如检测区域、检测任务对应的任务ID、模型ID和抓拍设备ID等,然后根据与所述抓拍指令对应的任务记录和存储的图片信息确定待执行任务和待使用模型,将确定后的待执行任务发送至任务队列,并且会标记各种必要属性:模型ID(每个模型具有事先评估的预测运行环境资源占用额度属性集合,所述预测运行环境资源占用额度属性集合会在确定目标服务器的过程中产生影响,是用于确定目标服务器的一项重要指标)、私有化标签、任务优先级、输入数据地址(HTTP协议(Hyper TextTransfer Protocol,超文本传输协议))、输出数据地址(HTTP协议)。
基于先进先出顺序依次从所述任务队列中确定出当前待执行任务,此时可以对所述当前待执行任务进行锁定,以免对同一待执行任务重复进行目标服务器的确定。将与所述当前待执行任务对应的待使用模型确定为当前目标模型,并根据所述当前目标模型获取当前目标模型信息,所述当前目标模型信息包括与所述当前目标模型对应的预估显存占用量、模型运行GPU占用率、模型首次装载耗时和模型处理任务耗时,可以理解的是,模型的模型信息如当前目标模型信息包括与所述当前目标模型对应的预估显存占用量、模型运行GPU占用率、模型首次装载耗时和模型处理任务耗时等存储在业务数据库中,此外业务数据也存储在业务数据库中。基于所述当前目标模型从GPU控制后台中获取各GPU服务器的当前状态信息,当前状态信息包括当前GPU服务器是否已经预装载了当前目标模型、当前GPU服务器的显存剩余与GPU算力剩余量,然后根据所述当前状态信息和所述当前目标模型信息并利用预设服务器筛选逻辑从所述各GPU服务器中筛选出目标服务器,其中,先确定所述各GPU服务器中是否存在已装载所述当前目标模型的GPU服务器;若存在,则从已装载所述当前目标模型的GPU服务器中筛选出满足预设服务器性能要求的一台GPU服务器作为所述目标服务器;若不存在,则从所述各GPU服务器中筛选出满足所述预设服务器性能要求的一台GPU服务器作为所述目标服务器,所述满足预设服务器性能要求可以是选择出当前负载最小的GPU服务器,负载量可以根据当前GPU服务器是否已经预装载了当前目标模型、当前GPU服务器的显存剩余与GPU算力剩余量、当前目标模型运行时所需资源量等参数进行计算,若未成功找到目标服务器,则可以将当前待执行任务发送至任务队列的队尾重新进行排队,避免影响下一待执行任务的执行过程。
确定出目标服务器后,若目标服务器未装载当前目标模型,则对当前目标模型进行装载,然后执行当前待执行任务,任务成功执行完成后,将任务的执行结果上报给业务侧,目标服务器在满足预设模型卸载条件后会对当前目标模型进行卸载,以释放算力。此外,各GPU服务器会定期高频率的上报自身状态信息至GPU控制后台,以更新各GPU服务器的当前状态信息,并且如图3所示,本申请中包含日志库,可以支持日志回溯,追踪所有任务的输入输出结果,以便排查执行信息。
参见图4所示,本申请公开了一种GPU资源调度装置,应用于资源调度侧,包括:
任务模型确定模块11,用于获取业务侧发送的初始图片检测任务并根据所述初始图片检测任务确定待执行任务和待使用模型;
状态信息获取模块12,用于从所述待执行任务和所述待使用模型中确定出当前待执行任务和当前目标模型,并基于所述当前目标模型获取各GPU服务器的当前状态信息;
服务器筛选模块13,用于根据所述当前状态信息并利用预设服务器筛选逻辑从所述各GPU服务器中筛选出目标服务器,以便所述目标服务器利用所述当前目标模型执行所述当前待执行任务。
本申请中,获取业务侧发送的初始图片检测任务并根据所述初始图片检测任务确定待执行任务和待使用模型;从所述待执行任务和所述待使用模型中确定出当前待执行任务和当前目标模型,并基于所述当前目标模型获取各GPU服务器的当前状态信息;根据所述当前状态信息并利用预设服务器筛选逻辑从所述各GPU服务器中筛选出目标服务器,以便所述目标服务器利用所述当前目标模型执行所述当前待执行任务。通过上述方案,本申请可以根据业务侧发送的初始图片检测任务确定出待执行任务和待使用模型,以得到当前待执行任务和当前目标模型,基于所述当前目标模型获取各GPU服务器的当前状态信息,以利用预设服务器筛选逻辑筛选出目标服务器,以便所述目标服务器利用所述当前目标模型执行所述当前待执行任务。这样一来,可以根据当前待执行任务和当前目标模型选择满足用户需求的目标服务器,避免GPU服务器与模型绑定,从而可以动态调度GPU服务器资源,提高了GPU服务器资源的利用率,实现了对GPU服务器资源的高效利用。
在一些具体实施例中,所述任务模型确定模块11,具体可以包括:
抓拍指令生成单元,用于根据所述初始图片检测任务生成抓拍指令;
待使用模型确定单元,用于根据所述初始图片检测任务生成任务记录,并基于所述任务记录确定相应的待使用模型;
待检测图片获取单元,用于将所述抓拍指令发送至预设抓拍设备,并获取所述预设抓拍设备进行抓拍后得到的待检测图片;
待执行任务确定单元,用于基于所述待检测图片确定相应的待执行任务。
在一些具体实施例中,所述状态信息获取模块12,具体可以包括:
当前待执行任务确定单元,用于将所述待执行任务发送至任务队列的队尾进行保存,并基于先进先出顺序依次从所述任务队列中确定出当前待执行任务;
当前目标模型确定单元,用于将与所述当前待执行任务对应的待使用模型确定为当前目标模型。
在一些具体实施例中,所述GPU资源调度装置,具体还可以包括:
模型信息获取模块,用于根据所述当前目标模型获取当前目标模型信息;所述当前目标模型信息包括与所述当前目标模型对应的预估显存占用量、模型运行GPU占用率、模型首次装载耗时和模型处理任务耗时。
在一些具体实施例中,所述GPU资源调度装置,具体还可以包括:
状态信息更新模块,用于在所述目标服务器利用所述当前目标模型执行完所述当前待执行任务之后,获取所述目标服务器卸载所述当前目标模型后反馈的当前状态信息。
在一些具体实施例中,所述服务器筛选模块13,具体可以包括:
GPU模型装载确定单元,用于根据所述当前状态信息确定所述各GPU服务器中是否存在已装载所述当前目标模型的GPU服务器;
第一目标服务器确定单元,用于当存在时,从已装载所述当前目标模型的GPU服务器中筛选出满足预设服务器性能要求的一台GPU服务器作为所述目标服务器;
第二目标服务器确定单元,用于当不存在时,从所述各GPU服务器中筛选出满足所述预设服务器性能要求的一台GPU服务器作为所述目标服务器。
进一步的,本申请实施例还公开了一种电子设备,图5是根据一示例性实施例示出的电子设备20结构图,图中的内容不能认为是对本申请的使用范围的任何限制。
图5为本申请实施例提供的一种电子设备20的结构示意图。该电子设备 20,具体可以包括:至少一个处理器21、至少一个存储器22、电源23、通信接口24、输入输出接口25和通信总线26。其中,所述存储器22用于存储计算机程序,所述计算机程序由所述处理器21加载并执行,以实现前述任一实施例公开的GPU资源调度方法中的相关步骤。另外,本实施例中的电子设备20具体可以为电子计算机。
本实施例中,电源23用于为电子设备20上的各硬件设备提供工作电压;通信接口24能够为电子设备20创建与外界设备之间的数据传输通道,其所遵 循的通信协议是能够适用于本申请技术方案的任意通信协议,在此不对其进 行具体限定;输入输出接口25,用于获取外界输入数据或向外界输出数据,其具体的接口类型可以根据具体应用需要进行选取,在此不进行具体限定。
另外,存储器22作为资源存储的载体,可以是只读存储器、随机存储器、 磁盘或者光盘等,其上所存储的资源可以包括操作系统221、计算机程序222 等,存储方式可以是短暂存储或者永久存储。
其中,操作系统221用于管理与控制电子设备20上的各硬件设备以及计算 机程序222,其可以是Windows Server、Netware、Unix、Linux等。计算机程序222除了包括能够用于完成前述任一实施例公开的由电子设备20执行的GPU资源调度方法的计算机程序之外,还可以进一步包括能够用于完成其他特定工作的计算机程序。
进一步的,本申请还公开了一种计算机可读存储介质,用于存储计算机程序;其中,所述计算机程序被处理器执行时实现前述公开的GPU资源调度方法。关于该方法的具体步骤可以参考前述实施例中公开的相应内容,在此不再进行赘述。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本申请所提供的技术方案进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (8)
1.一种GPU资源调度方法,其特征在于,应用于资源调度侧,包括:
获取业务侧发送的初始图片检测任务并根据所述初始图片检测任务确定待执行任务和待使用模型;
从所述待执行任务和所述待使用模型中确定出当前待执行任务和当前目标模型,并基于所述当前目标模型获取各GPU服务器的当前状态信息;
根据所述当前状态信息并利用预设服务器筛选逻辑从所述各GPU服务器中筛选出目标服务器,以便所述目标服务器利用所述当前目标模型执行所述当前待执行任务;其中,所述根据所述当前状态信息并利用预设服务器筛选逻辑从所述各GPU服务器中筛选出目标服务器,包括:根据所述当前状态信息确定所述各GPU服务器中是否存在已装载所述当前目标模型的GPU服务器;若存在,则从已装载所述当前目标模型的GPU服务器中筛选出满足预设服务器性能要求的一台GPU服务器作为所述目标服务器;若不存在,则从所述各GPU服务器中筛选出满足所述预设服务器性能要求的一台GPU服务器作为所述目标服务器;
在所述目标服务器利用所述当前目标模型执行完所述当前待执行任务之后,获取所述目标服务器卸载所述当前目标模型后反馈的当前状态信息。
2.根据权利要求1所述的GPU资源调度方法,其特征在于,所述根据所述初始图片检测任务确定待执行任务和待使用模型,包括:
根据所述初始图片检测任务生成抓拍指令和任务记录,并基于所述任务记录确定相应的待使用模型;
将所述抓拍指令发送至预设抓拍设备,并获取所述预设抓拍设备进行抓拍后得到的待检测图片;
基于所述待检测图片确定相应的待执行任务。
3.根据权利要求2所述的GPU资源调度方法,其特征在于,所述资源调度侧中设有第一处理节点和第二处理节点;其中,所述第一处理节点用于执行所述根据所述初始图片检测任务生成抓拍指令和任务记录的步骤;所述第二处理节点用于执行所述获取所述预设抓拍设备进行抓拍后得到的待检测图片的步骤。
4.根据权利要求1所述的GPU资源调度方法,其特征在于,所述从所述待执行任务和所述待使用模型中确定出当前待执行任务和当前目标模型,包括:
将所述待执行任务发送至任务队列的队尾进行保存,并基于先进先出顺序依次从所述任务队列中确定出当前待执行任务;
将与所述当前待执行任务对应的待使用模型确定为当前目标模型。
5.根据权利要求1所述的GPU资源调度方法,其特征在于,所述从所述待执行任务和所述待使用模型中确定出当前待执行任务和当前目标模型之后,还包括:
根据所述当前目标模型获取当前目标模型信息;所述当前目标模型信息包括与所述当前目标模型对应的预估显存占用量、模型运行GPU占用率、模型首次装载耗时和模型处理任务耗时;
相应的,所述根据所述当前状态信息并利用预设服务器筛选逻辑从所述各GPU服务器中筛选出目标服务器,包括:
根据所述当前状态信息和所述当前目标模型信息并利用预设服务器筛选逻辑从所述各GPU服务器中筛选出目标服务器。
6.一种GPU资源调度装置,其特征在于,应用于资源调度侧,包括:
任务模型确定模块,用于获取业务侧发送的初始图片检测任务并根据所述初始图片检测任务确定待执行任务和待使用模型;
状态信息获取模块,用于从所述待执行任务和所述待使用模型中确定出当前待执行任务和当前目标模型,并基于所述当前目标模型获取各GPU服务器的当前状态信息;
服务器筛选模块,用于根据所述当前状态信息并利用预设服务器筛选逻辑从所述各GPU服务器中筛选出目标服务器,以便所述目标服务器利用所述当前目标模型执行所述当前待执行任务;
其中,所述服务器筛选模块,具体用于根据所述当前状态信息确定所述各GPU服务器中是否存在已装载所述当前目标模型的GPU服务器;若存在,则从已装载所述当前目标模型的GPU服务器中筛选出满足预设服务器性能要求的一台GPU服务器作为所述目标服务器;若不存在,则从所述各GPU服务器中筛选出满足所述预设服务器性能要求的一台GPU服务器作为所述目标服务器;
在所述目标服务器利用所述当前目标模型执行完所述当前待执行任务之后,获取所述目标服务器卸载所述当前目标模型后反馈的当前状态信息。
7.一种电子设备,其特征在于,包括:
存储器,用于保存计算机程序;
处理器,用于执行所述计算机程序以实现如权利要求1至5任一项所述的GPU资源调度方法。
8.一种计算机可读存储介质,其特征在于,用于保存计算机程序,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述的GPU资源调度方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310261205.4A CN115981871B (zh) | 2023-03-17 | 2023-03-17 | 一种gpu资源调度方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310261205.4A CN115981871B (zh) | 2023-03-17 | 2023-03-17 | 一种gpu资源调度方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115981871A CN115981871A (zh) | 2023-04-18 |
CN115981871B true CN115981871B (zh) | 2024-01-26 |
Family
ID=85968520
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310261205.4A Active CN115981871B (zh) | 2023-03-17 | 2023-03-17 | 一种gpu资源调度方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115981871B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117573371B (zh) * | 2024-01-09 | 2024-03-29 | 支付宝(杭州)信息技术有限公司 | 一种对于基于图形处理器运行的服务的调度方法和装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109992422A (zh) * | 2019-04-11 | 2019-07-09 | 北京朗镜科技有限责任公司 | 一种面向gpu资源的任务调度方法、装置和系统 |
CN110543887A (zh) * | 2018-05-29 | 2019-12-06 | 杭州海康威视数字技术股份有限公司 | 目标分析方法、装置、电子设备及可读存储介质 |
CN112148468A (zh) * | 2019-06-28 | 2020-12-29 | 杭州海康威视数字技术股份有限公司 | 一种资源调度方法、装置、电子设备及存储介质 |
CN112162865A (zh) * | 2020-11-03 | 2021-01-01 | 中国工商银行股份有限公司 | 服务器的调度方法、装置和服务器 |
WO2022088659A1 (zh) * | 2020-10-26 | 2022-05-05 | 北京市商汤科技开发有限公司 | 资源调度方法及装置、电子设备、存储介质和程序产品 |
CN115167937A (zh) * | 2022-07-01 | 2022-10-11 | 深圳市商汤科技有限公司 | 模型调用方法、装置、设备及存储介质 |
WO2022252456A1 (zh) * | 2021-06-01 | 2022-12-08 | 苏州浪潮智能科技有限公司 | 一种任务调度方法、装置、电子设备及可读存储介质 |
-
2023
- 2023-03-17 CN CN202310261205.4A patent/CN115981871B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110543887A (zh) * | 2018-05-29 | 2019-12-06 | 杭州海康威视数字技术股份有限公司 | 目标分析方法、装置、电子设备及可读存储介质 |
CN109992422A (zh) * | 2019-04-11 | 2019-07-09 | 北京朗镜科技有限责任公司 | 一种面向gpu资源的任务调度方法、装置和系统 |
CN112148468A (zh) * | 2019-06-28 | 2020-12-29 | 杭州海康威视数字技术股份有限公司 | 一种资源调度方法、装置、电子设备及存储介质 |
WO2022088659A1 (zh) * | 2020-10-26 | 2022-05-05 | 北京市商汤科技开发有限公司 | 资源调度方法及装置、电子设备、存储介质和程序产品 |
CN112162865A (zh) * | 2020-11-03 | 2021-01-01 | 中国工商银行股份有限公司 | 服务器的调度方法、装置和服务器 |
WO2022252456A1 (zh) * | 2021-06-01 | 2022-12-08 | 苏州浪潮智能科技有限公司 | 一种任务调度方法、装置、电子设备及可读存储介质 |
CN115167937A (zh) * | 2022-07-01 | 2022-10-11 | 深圳市商汤科技有限公司 | 模型调用方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN115981871A (zh) | 2023-04-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109582466B (zh) | 一种定时任务执行方法、分布式服务器集群及电子设备 | |
US10033816B2 (en) | Workflow service using state transfer | |
US10783002B1 (en) | Cost determination of a service call | |
CN109408205B (zh) | 基于hadoop集群的任务调度方法和装置 | |
CN112035238B (zh) | 任务调度处理方法、装置、集群系统及可读存储介质 | |
CN109033814B (zh) | 智能合约触发方法、装置、设备及存储介质 | |
CN111338791A (zh) | 集群队列资源的调度方法、装置、设备及存储介质 | |
CN115981871B (zh) | 一种gpu资源调度方法、装置、设备及存储介质 | |
CN113986534A (zh) | 任务调度方法、装置、计算机设备和计算机可读存储介质 | |
CN109144741A (zh) | 进程间通信的方法、装置及电子设备 | |
CN108415765B (zh) | 任务调度方法、装置及智能终端 | |
CN115328741A (zh) | 一种异常处理方法、装置、设备和存储介质 | |
CN117707737A (zh) | 一种任务调度优化方法、装置、设备及其存储介质 | |
CN112052077B (zh) | 软件任务管理的方法、装置、设备、介质 | |
CN110968422A (zh) | 用于集成场景的负载分发 | |
CN110033242B (zh) | 工作时间确定方法、装置、设备和介质 | |
CN111190731A (zh) | 基于权重的集群任务调度系统 | |
CN112463514A (zh) | 分布式缓存集群的监测方法和装置 | |
CN112764837B (zh) | 数据上报方法、装置、存储介质及终端 | |
CN115809126A (zh) | 混合部署场景下的作业调度方法、装置及电子设备 | |
US9772877B2 (en) | Managing I/O operations in a shared file system | |
CN113992493A (zh) | 视频处理方法、系统、设备及存储介质 | |
CN111158847A (zh) | 一种开源信息采集虚拟主机资源调度方法和系统 | |
CN116909758B (zh) | 算力任务的处理方法、装置及电子设备 | |
CN116719632B (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 |