CN115391051A - 视频计算任务调度方法、设备及计算机可读介质 - Google Patents
视频计算任务调度方法、设备及计算机可读介质 Download PDFInfo
- Publication number
- CN115391051A CN115391051A CN202211191650.XA CN202211191650A CN115391051A CN 115391051 A CN115391051 A CN 115391051A CN 202211191650 A CN202211191650 A CN 202211191650A CN 115391051 A CN115391051 A CN 115391051A
- Authority
- CN
- China
- Prior art keywords
- machine room
- candidate
- target
- video
- 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.)
- Pending
Links
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/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
-
- 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
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本申请提供了一种本申请实施例提供的视频计算任务调度方法、设备及计算机可读介质,该方案可以获取待处理的视频计算任务的任务信息,然后根据所述算法所需要的硬件资源,确定与所述算法匹配的候选服务器以及所述候选服务器所属的候选机房,并根据所述视频的来源标签,从所述候选机房中确定与所述来源标签匹配的目标机房,然后从满足要求的目标机房的候选服务器中选取目标服务器执行所述视频计算任务。由于在确定目标服务器时除了考虑算法与算力资源之间的适配外,还考虑了机房与视频来源之间的关系,可以做到就近调度,减少网络传输的开销,同时还进一步考虑了机房流量上限的问题,避免计算任务集中于某个机房,导致网络阻塞。
Description
技术领域
本申请涉及信息技术领域,尤其涉及一种视频计算任务调度方法、设备及计算机可读介质。
背景技术
视频计算任务调度的本质是视频、算法和算力的组合,也就是找到一台合适的算力服务器,运行指定的算法,对来自于指定摄像头的视频进行解析计算。目前已有的视频计算任务调度一般基于微服务实现,适合扁平网络的场景,不会考虑视频的来源设备(摄像头)和执行视频计算任务的服务器之间复杂的网络情况,可能会将某一摄像头产生的视频调度至距离较远的服务器中执行,由此会增加摄像头与服务器之间的跨区域网络传输开销,导致视频流的延迟增加,视频计算任务的执行效率降低。
发明内容
本申请实施例提供了一种视频计算任务调度方法、设备及计算机可读介质,以解决目前的调度方案会导致网络传输开销增加、效率降低的问题。
为实现上述目的,本申请提供了一种视频计算任务调度方法,所述方法包括:
获取待处理的视频计算任务的任务信息,所述任务信息包括需要运行的算法和视频的来源标签;
根据所述算法所需要的硬件资源,确定与所述算法匹配的候选服务器以及所述候选服务器所属的候选机房;
根据所述视频的来源标签,从所述候选机房中确定与所述来源标签匹配的目标机房;
当所述目标机房中存在与算法匹配的候选服务器,且所述目标机房正在使用的流量之和未达到流量上限时,从所述目标机房的候选服务器中选取目标服务器执行所述视频计算任务。
进一步地,根据所述算法所需要的硬件资源,确定与所述算法匹配的候选服务器以及所述候选服务器所属的候选机房,包括:
将所述算法所需要的硬件资源与服务器可提供的硬件资源比较,若服务器可提供的硬件资源满足所述算法所需要的硬件资源,则将所述服务器确定为与所述算法匹配的候选服务器,同时确定所述候选服务器所属的候选机房。
进一步地,根据所述视频的来源标签,从所述候选机房中确定与所述来源标签匹配的目标机房,包括:
将所述视频的来源标签与候选机房的区域标签进行比较,若任一候选机房的区域标签与所述视频的来源标签一致,则将所述候选机房确定为目标机房;
若候选机房的区域标签与所述视频的来源标签均不一致,则将候选机房中的中心机房确定为目标机房。
进一步地,所述方法还包括:
若候选机房的区域标签与所述视频的来源标签均不一致,且候选机房中不包含中心机房,将响应速度最快的候选机房确定为目标机房。
进一步地,在所述目标机房中存在与算法匹配的候选服务器,且所述目标机房正在使用的流量之和未达到流量上限时,从所述目标机房的候选服务器中选取目标服务器执行所述视频计算任务,包括:
执行第一判断处理:判断目标机房中是否有匹配的候选服务器;
若第一判断处理的判断结果为是,则继续执行第二判断处理:判断所述目标机房正在使用的流量之和未达到流量上限;
若第二判断处理的判断结果为是,从所述目标机房的候选服务器中选取目标服务器执行所述视频计算任务。
进一步地,所述方法还包括:
若第一判断处理或第二判断处理的判断结果为否,将目标机房列入不可用机房;
从所述可用机房选取响应速度最快的机房,重新确定为目标机房,其中,所述可用机房为所述候选机房中除所述不可用机房中的剩余机房。
进一步地,所述方法还包括:
控制机房中的服务器向视频的来源设备发送ping包;
根据接收到的响应数据包,确定机房与视频的来源设备之间的响应速度。
进一步地,从所述目标机房的候选服务器中选取目标服务器执行所述视频计算任务,包括:
从所述目标机房的候选服务器中选取负荷最低的服务器作为目标服务器,并将所述视频计算任务调度至所述目标服务器执行。
基于本申请的另一方面,还提供了一视频计算任务调度设备,其中,该设备包括用于存储计算机程序指令的存储器和用于执行计算机程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发所述设备执行所述视频计算任务调度方法。
此外,本申请还提供了一种计算机可读介质,其上存储有计算机程序指令,所述计算机程序指令可被处理器执行以实现所述视频计算任务调度方法。
相较于现有技术,本申请实施例提供的视频计算任务调度方案中,可以获取待处理的视频计算任务的任务信息,所述任务信息包括需要运行的算法和视频的来源标签,然后根据所述算法所需要的硬件资源,确定与所述算法匹配的候选服务器以及所述候选服务器所属的候选机房,并根据所述视频的来源标签,从所述候选机房中确定与所述来源标签匹配的目标机房;当所述目标机房中存在与算法匹配的候选服务器,且所述目标机房正在使用的流量之和未达到流量上限时,从所述目标机房的候选服务器中选取目标服务器执行所述视频计算任务。由于在确定目标服务器时除了考虑算法与算力资源之间的适配外,还考虑了机房与视频来源之间的关系,可以做到就近调度,减少网络传输的开销,同时还进一步考虑了机房流量上限的问题,避免计算任务集中于某个机房,导致网络阻塞。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1为本申请实施例提供的一种视频计算任务调度方法的处理流程图;
图2为本申请实施例中的一种调度场景示意图;
图3为本申请实施例在数据准备阶段的流程图;
图4为本申请实施例在任务调度阶段的流程图;
附图中相同或相似的附图标记代表相同或相似的部件。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在本申请一个典型的配置中,终端、服务网络的设备均包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体,可以由任何方法或技术来实现信息存储。信息可以是计算机程序指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
本申请实施例提供了一种视频计算任务调度方法,该方法可以获取待处理的视频计算任务的任务信息,所述任务信息包括需要运行的算法和视频的来源标签,然后根据所述算法所需要的硬件资源,确定与所述算法匹配的候选服务器以及所述候选服务器所属的候选机房,并根据所述视频的来源标签,从所述候选机房中确定与所述来源标签匹配的目标机房;当所述目标机房中存在与算法匹配的候选服务器,且所述目标机房正在使用的流量之和未达到流量上限时,从所述目标机房的候选服务器中选取目标服务器执行所述视频计算任务。由于在确定目标服务器时除了考虑算法与算力资源之间的适配外,还考虑了机房与视频来源之间的关系,可以做到就近调度,减少网络传输的开销,同时还进一步考虑了机房流量上限的问题,避免计算任务集中于某个机房,导致网络阻塞。
在实际场景中,该方法的执行主体可以是用户设备、网络设备或用户设备与网络设备通过网络相集成所构成的设备,或者也可以是运行于上述设备的应用程序。所述用户设备包括但不限于计算机、手机、平板电脑等各类终端设备;所述网络设备包括但不限于如网络主机、单个网络服务器、多个网络服务器集或基于云计算的计算机集合等实现。在此,云由基于云计算(Cloud Computing)的大量主机或网络服务器构成,其中,云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个虚拟计算机。
图1示出了本申请实施例提供的一种视频计算任务调度方法的处理流程,至少包括以下处理步骤:
步骤S101,获取待处理的视频计算任务的任务信息。
其中,所述视频计算任务即为对某一个视频进行计算处理的任务,可以由用户通过选择需要运行的算法和需要解析的视频的方式来主动生成,例如用户可以选择由某一个摄像头拍摄获得的视频v1,同时选择处理该视频v1的算法,由此生成一个视频计算任务来对该视频v1进行处理。此外,视频计算任务也可以由相关设备根据相关的触发条件来自动触发生成,例如在每天的预设时间点,选取当前新拍摄到的视频,同时自动选择预设算法,由此生成相应的视频计算任务。
对于一个视频计算任务,可以包括对应的任务信息,该任务信息描述了该视频计算任务的相关情况,至少可以包括需要运行的算法和视频的来源标签。其中,需要运行的算法为处理该视频所使用的算法,视频的来源标签是指拍摄该视频的来源设备(如摄像头等)的标识,可以用于确定来源设备所在区域。例如,若一个视频计算任务的任务信息包括需要运行的算法a1、视频的来源标签A,该任务信息表示处理该视频计算任务的视频时,需要使用a1算法,并且该视频来自于区域A的摄像头。其中,所述区域标签可以预先为不同来源设备设定,例如对于区域A、区域B和区域C中所部署的摄像头,可以分别为其设定来源标签A、B和C,由此对这些摄像头所拍摄生成的视频计算任务中也会分别包含来源标签A、B或C的任务信息。
步骤S102,根据所述算法所需要的硬件资源,确定与所述算法匹配的候选服务器以及所述候选服务器所属的候选机房。
其中,算法所需要的硬件资源可以预先根据算法的特点确定,例如对于算法a1,可能需要更多的使用CPU资源,同时仅使用少量的GPU资源和内存资源即可,而对于算法a2,则可能需要使用大量的GPU资源和少量的CPU资源和内存资源,同时对于GPU和CPU的型号也具有特定的需求。由此,可以预先根据算法的特定,为每个算法设置匹配的硬件资源。
对于每一个服务器可以预先采集其具有的硬件资源,由此可以将所述算法所需要的硬件资源与服务器可提供的硬件资源比较。若服务器可提供的硬件资源满足所述算法所需要的硬件资源,则将所述服务器确定为与所述算法匹配的候选服务器,同时确定所述候选服务器所属的候选机房。例如,对于一个算法a3,若需要4核CPU、1个GPU和4G内存,若服务器Server1空闲32核CPU、8个GPU和64G内存,则所述服务器Server1即可作为与所述算法a3匹配的候选服务器,同时可以将该服务器Server1所属的机房DC1作为候选机房。
步骤S103,根据所述视频的来源标签,从所述候选机房中确定与所述来源标签匹配的目标机房。
由于视频的来源标签能够表示视频的来源设备所在的区域,而就近选择执行视频计算任务的服务器可以在完成视频计算任务的同时,减少跨区域传输数据的网络开销,提高整体的效率。因此在选择目标机房时,可以距离就近的原则,选择位于同区域的机房,而当候选机房中没有同区域的机房可供选择时,再考虑中心机房。
由此,本申请实施例在从所述候选机房中确定与所述来源标签匹配的目标机房时,可以先将所述视频的来源标签与候选机房的区域标签进行比较,若任一候选机房的区域标签与所述视频的来源标签一致,则将所述候选机房确定为目标机房;若候选机房的区域标签与所述视频的来源标签均不一致,则将候选机房中的中心机房确定为目标机房。以图2所示的场景为例,若某一城市包括三个区域,分别为区域A、区域B和区域C,机房DC1处于区域A,机房DC2处于区域C,而机房DC0为中心机房,当区域A内的摄像头有视频计算任务需要执行时,机房DC1存在与算法匹配的候选服务器,则机房DC1将优先作为目标机房,只有当机房DC1中没有与算法匹配的候选服务器时,才会考虑中心机房DC0。
此外,在实际场景中,还有可能出现同区域的机房和中心机房都不是候选机房的情况。以图2为例,即机房DC1和机房DC0均不是候选机房,此时,为了确保可以顺利执行视频计算任务,可以选择位于其他区域的候选机房,来作为目标机房,同时参考其它区域的候选机房的响应速度,选取其中响应速度最快的机房来作为目标机房。由此,在本申请的一些实施例中,所述方法还可以包括:若候选机房的区域标签与所述视频的来源标签均不一致,且候选机房中不包含中心机房,将响应速度最快的候选机房确定为目标机房。
在本申请的一些实施例中,可以发送ping包的方式来确定检测机房的响应速度,具体为该方法的执行设备控制机房中的服务器向视频的来源设备发送ping包,根据接收到的响应数据包,确定机房与视频的来源设备之间的响应速度。例如,可以统计一段时间内接收到各个响应数据包与发送ping包的时间差,获得平均时间差后,将该平均时间差作为评价响应速度的指标,平均时间差越短,表示响应速度越快。
步骤S104,当所述目标机房中存在与算法匹配的候选服务器,且所述目标机房正在使用的流量之和未达到流量上限时,从所述目标机房的候选服务器中选取目标服务器执行所述视频计算任务。
所述目标机房正在使用的流量之和是指目标机房当前正在运行的所有计算任务所占用的流量的总和,若未达到流量上限,则表示该目标机房当前仍有空余的流量可以供执行本次视频计算任务使用。由此,结合前述步骤中对算法以及来源标签的匹配,可以将视频计算任务调度至合适机房中合适的服务器来执行,在确保视频计算任务能够顺利完成的前提下,减少跨区域的网络传输开销,避免机房的网络阻塞,提升整体的处理效率。
在所述目标机房中存在与算法匹配的候选服务器,且所述目标机房正在使用的流量之和未达到流量上限时,从所述目标机房的候选服务器中选取目标服务器执行所述视频计算任务时,可以包括两部分的判断,即第一判断处理和第二判断处理。其执行顺序可以如下:
首先,执行第一判断处理,具体为:判断目标机房中是否有匹配的候选服务器。
若第一判断处理的判断结果为是,则继续执行第二判断处理。该第二判断处理具体为:判断所述目标机房正在使用的流量之和未达到流量上限。
若第二判断处理的判断结果为是,从所述目标机房的候选服务器中选取目标服务器执行所述视频计算任务。
在实际场景中,前序步骤中筛选出的目标机房有多个时,可以通过遍历的方式,依次对各个目标机房执行第一判断处理和第二判断处理,从两个判断结果均为是的目标机房中,选取候选服务器中选取目标服务器,来执行所述视频计算任务。
此外还可以能会出现以下的情况,即对目标机房的第一判断处理或第二判断处理的判断结果为否的情况,此时可以将目标机房列入不可用机房。当遍历所有目标机房后,若都列入了不可用机房,则可以重新筛选新的目标机房,具体方式:从可用机房选取响应速度最快的机房,重新确定为目标机房。其中,所述可用机房为所述候选机房中除所述不可用机房中的剩余机房。例如,首次选取的目标机房为同区域的机房DC4时,若该机房正在使用的流量之和已经达到流量上限,则可以从剩余的机房DC5、DC6和DC7中选取响应速度最快的机房作为新的目标机房,再次执行第一判断处理和第二判断处理,直至从中找到合适的目标机房。
此外,如果所有的机房均已被列为不可用机房,则表示本次计算任务没有合适的机房可以进行处理,那么可以提示资源不足,计算任务调度失败。
在本申请的一些实施例中,在从所述目标机房的候选服务器中选取目标服务器执行所述视频计算任务时,可以从所述目标机房的候选服务器中选取负荷最低的服务器作为目标服务器,并将所述视频计算任务调度至所述目标服务器执行。例如,当目标机房中同时存在10个符合算法要求的候选服务器时,可以根据这些服务器的当前负荷进行排序,选取其中负荷最低的服务器作为目标服务器,来执行视频计算任务,避免负荷集中于部分服务器导致处理效率降低。
在实际场景中,采用本申请实施例提供的方案实现视频计算任务调度时,首先进行第一阶段,数据准备。数据准备的阶段可以包括如图3所示的处理步骤,包括:
步骤S301,为机房内每台服务器打上所在区域标签,如中心、A、C,分别表示这些服务器属于中心机房,区域A的机房和区域B的机房。
步骤S302,采集每台计算服务器可提供的硬件资源,如CPU、GPU、内存等的型号、数量等。
步骤S303,为每个算法设置匹配需求的硬件资源,如CPU、GPU、内存等的型号、数量等。
步骤S304,为每个机房设置处理视频计算任务的流量上限。
步骤S305,为每个摄像头打上来源标签,如A、B、C等,分别表示摄像头对应的视频计算任务的来源区域。
在完成数据准备后,即可执行第二阶段,任务调度。任务调度的阶段可以包括如图4所示的处理步骤:
步骤S401,用户选择需要运行的算法和需要解析的视频,生成视频计算任务。
步骤S402,调度设备根据用户选择的算法所需要的硬件资源,找到匹配的多个候选服务器,同时确定这些候选服务器所属的机房,作为候选机房。
步骤S403,用户根据视频所属的摄像头的来源标签,与候选机房的区域标签匹配,选择匹配的候选机房,作为目标机房。匹配时,优先选择区域相同的机房,其次考虑中心机房,若没有同区域的机房和中心机房,再考虑其他区域机房中响应速度最快的机房。
对于目标机房,执行两个判断处理:
判断一:当前选择的目标机房是否有与算法匹配的候选服务器,是进入判断二,否进入步骤S404。
判断二:当前选择的目标机房正在运行的计算任务所需要的流量之和是否未达到流量上限,是进入步骤S404,否进入步骤S405。
步骤S404,当前选择的目标机房满足调度的要求,在目标机房内挑选负荷最低的服务器作为调度目标来执行视频计算任务。
步骤S405,说明当前选择的目标机房不满足调度的要求,将当前机房列入不可用机房的名单。
步骤S406,判断是否还有候选机房未被列入不可用机房的名单,若是,则表示还有机房可以尝试作为目标机房,此时可以执行步骤S407。若否,则表示所有的机房均已被列为不可用机房,本次计算任务没有合适的机房可以进行处理,此时可以执行步骤S408。
步骤S407,向其它候选机房发送ping包,根据响应数据包从中找到响应最快的机房,作为目标机房,再次执行判断一和判断二,直至找到调度目标。
步骤S408,提示资源不足,本次视频计算任务调度失败。
此外,本申请实施例还提供了视频计算任务调度设备,该设备包括用于存储计算机程序指令的存储器和用于执行计算机程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发所述设备执行前述的视频计算任务调度方法。
特别地,本申请实施例中的方法和/或实施例可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在该计算机程序被处理单元执行时,执行本申请的方法中限定的上述功能。
需要说明的是,本申请所述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本申请的操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图或框图示出了按照本申请各种实施例的设备、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的针对硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个计算机程序指令,所述计算机程序指令可被处理器执行以实现前述本申请的多个实施例的方法和/或技术方案。
需要注意的是,本申请可在软件和/或软件与硬件的组合体中被实施,例如,可采用专用集成电路(ASIC)、通用目的计算机或任何其他类似硬件设备来实现。在一些实施例中,本申请的软件程序可以通过处理器执行以实现上文步骤或功能。同样地,本申请的软件程序(包括相关的数据结构)可以被存储到计算机可读记录介质中,例如,RAM存储器,磁或光驱动器或软磁盘及类似设备。另外,本申请的一些步骤或功能可采用硬件来实现,例如,作为与处理器配合从而执行各个步骤或功能的电路。
对于本领域技术人员而言,显然本申请不限于上述示范性实施例的细节,而且在不背离本申请的精神或基本特征的情况下,能够以其他的具体形式实现本申请。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本申请的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本申请内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。装置权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。此外,用于标识步骤的数字也并不限定任何步骤之间的先后执行顺序。
Claims (10)
1.一种视频计算任务调度方法,其特征在于,所述方法包括:
获取待处理的视频计算任务的任务信息,所述任务信息包括需要运行的算法和视频的来源标签;
根据所述算法所需要的硬件资源,确定与所述算法匹配的候选服务器以及所述候选服务器所属的候选机房;
根据所述视频的来源标签,从所述候选机房中确定与所述来源标签匹配的目标机房;
当所述目标机房中存在与算法匹配的候选服务器,且所述目标机房正在使用的流量之和未达到流量上限时,从所述目标机房的候选服务器中选取目标服务器执行所述视频计算任务。
2.根据权利要求1所述的方法,其中,根据所述算法所需要的硬件资源,确定与所述算法匹配的候选服务器以及所述候选服务器所属的候选机房,包括:
将所述算法所需要的硬件资源与服务器可提供的硬件资源比较,若服务器可提供的硬件资源满足所述算法所需要的硬件资源,则将所述服务器确定为与所述算法匹配的候选服务器,同时确定所述候选服务器所属的候选机房。
3.根据权利要求1所述的方法,其中,根据所述视频的来源标签,从所述候选机房中确定与所述来源标签匹配的目标机房,包括:
将所述视频的来源标签与候选机房的区域标签进行比较,若任一候选机房的区域标签与所述视频的来源标签一致,则将所述候选机房确定为目标机房;
若候选机房的区域标签与所述视频的来源标签均不一致,则将候选机房中的中心机房确定为目标机房。
4.根据权利要求3所述的方法,其中,所述方法还包括:
若候选机房的区域标签与所述视频的来源标签均不一致,且候选机房中不包含中心机房,将响应速度最快的候选机房确定为目标机房。
5.根据权利要求1所述的方法,其中,在所述目标机房中存在与算法匹配的候选服务器,且所述目标机房正在使用的流量之和未达到流量上限时,从所述目标机房的候选服务器中选取目标服务器执行所述视频计算任务,包括:
执行第一判断处理:判断目标机房中是否有匹配的候选服务器;
若第一判断处理的判断结果为是,则继续执行第二判断处理:判断所述目标机房正在使用的流量之和未达到流量上限;
若第二判断处理的判断结果为是,从所述目标机房的候选服务器中选取目标服务器执行所述视频计算任务。
6.根据权利要求5所述的方法,其中,所述方法还包括:
若第一判断处理或第二判断处理的判断结果为否,将目标机房列入不可用机房;
从所述可用机房选取响应速度最快的机房,重新确定为目标机房,其中,所述可用机房为所述候选机房中除所述不可用机房中的剩余机房。
7.根据权利要求4或6所述的方法,其中,所述方法还包括:
控制机房中的服务器向视频的来源设备发送ping包;
根据接收到的响应数据包,确定机房与视频的来源设备之间的响应速度。
8.根据权利要求1所述的方法,其中,从所述目标机房的候选服务器中选取目标服务器执行所述视频计算任务,包括:
从所述目标机房的候选服务器中选取负荷最低的服务器作为目标服务器,并将所述视频计算任务调度至所述目标服务器执行。
9.一种视频计算任务调度设备,其中,该系统包括用于存储计算机程序指令的存储器和用于执行计算机程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发所述设备执行权利要求1至8中任一项所述的方法。
10.一种计算机可读介质,其上存储有计算机程序指令,所述计算机程序指令可被处理器执行以实现如权利要求1至8中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211191650.XA CN115391051A (zh) | 2022-09-28 | 2022-09-28 | 视频计算任务调度方法、设备及计算机可读介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211191650.XA CN115391051A (zh) | 2022-09-28 | 2022-09-28 | 视频计算任务调度方法、设备及计算机可读介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115391051A true CN115391051A (zh) | 2022-11-25 |
Family
ID=84127861
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211191650.XA Pending CN115391051A (zh) | 2022-09-28 | 2022-09-28 | 视频计算任务调度方法、设备及计算机可读介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115391051A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115794423A (zh) * | 2023-02-09 | 2023-03-14 | 深圳市华创智能工程技术有限公司 | 一种智能机房的管理方法、装置、电子设备及存储介质 |
-
2022
- 2022-09-28 CN CN202211191650.XA patent/CN115391051A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115794423A (zh) * | 2023-02-09 | 2023-03-14 | 深圳市华创智能工程技术有限公司 | 一种智能机房的管理方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10939075B2 (en) | Monitoring target object by multiple cameras | |
US11646972B2 (en) | Dynamic allocation of network resources using external inputs | |
US10367719B2 (en) | Optimized consumption of third-party web services in a composite service | |
CN111966289A (zh) | 基于Kafka集群的分区优化方法和系统 | |
CN116225679A (zh) | 算力网络调度方法、装置及存储介质 | |
CN115391051A (zh) | 视频计算任务调度方法、设备及计算机可读介质 | |
CN107038067B (zh) | 分布式流处理中处理资源的管理方法和装置 | |
CN106571935B (zh) | 一种资源调度的方法与设备 | |
CN108804210B (zh) | 一种云平台的资源配置方法及装置 | |
CN114466227A (zh) | 一种视频分析方法、装置、电子设备及存储介质 | |
CN110928649A (zh) | 资源调度的方法和装置 | |
CN117707737A (zh) | 一种任务调度优化方法、装置、设备及其存储介质 | |
CN115373764B (zh) | 一种容器自动加载方法和装置 | |
CN109286532B (zh) | 云计算系统中告警信息的管理方法和装置 | |
CN111324583A (zh) | 一种业务日志的分类方法及装置 | |
CN116841720A (zh) | 资源配置方法、装置、计算机设备、存储介质及程序产品 | |
US10986036B1 (en) | Method and apparatus for orchestrating resources in multi-access edge computing (MEC) network | |
CN115065685B (zh) | 云计算资源调度方法、装置、设备及介质 | |
CN117056073B (zh) | 一种工业视觉分析下的计算资源优化配置方法及装置 | |
CN110928738B (zh) | 性能分析方法、装置和设备 | |
CN115361388B (zh) | 一种边缘云计算系统中的资源调度方法及装置 | |
CN112291292B (zh) | 数据存储方法、装置、设备和介质 | |
CN114443247A (zh) | 一种任务调度方法及装置 | |
CN116405496A (zh) | 一种流量调度方法、装置、电子设备及机器可读存储介质 | |
CN115545951A (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 |