CN109788325B - 视频任务分配方法及服务器 - Google Patents
视频任务分配方法及服务器 Download PDFInfo
- Publication number
- CN109788325B CN109788325B CN201811627768.6A CN201811627768A CN109788325B CN 109788325 B CN109788325 B CN 109788325B CN 201811627768 A CN201811627768 A CN 201811627768A CN 109788325 B CN109788325 B CN 109788325B
- Authority
- CN
- China
- Prior art keywords
- gpu
- server
- video
- sub
- subprocess
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 217
- 230000008569 process Effects 0.000 claims abstract description 83
- 239000000126 substance Substances 0.000 claims 1
- 238000004590 computer program Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
Landscapes
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明实施例涉及视计算机技术领域,公开了一种视频任务分配方法及服务器。视频任务分配方法,应用于服务器;所述视频任务分配方法包括:若检测到目标应用程序被启动,生成目标应用程序的主进程,并通过主进程创建多个子进程;当主进程接收到多个视频任务时,通过主进程将多个视频任务分别分配到各子进程;通过各子进程将各视频任务分配给服务器的GPU。本发明中,能够充分利用服务器中GPU的性能。
Description
技术领域
本发明实施例涉及计算机技术领域,特别涉及一种视频任务分配方法及服务器。
背景技术
目前,为了满足视频多终端播放的需求,一般需要对视频进行转码等处理。视频的处理需要依赖于用于解释计算机指令以及处理计算机软件中的数据的处理器(CentralProcessing Unit,简称CPU)的高处理能力或者具有转码能力的其他设备,如用于图像运算工作的图形处理器(Graphics Processing Unit,简称GPU)等。当视频处理服务器收到视频的处理任务后,需要将视频任务协调分配给CPU或者GPU。对于视频处理任务的分配,主流的做法往往通过在单进程中开辟线程来将视频任务分配给CPU或者GPU。
发明人发现现有技术中至少存在如下问题:现有技术中,如果通过单个进程无法充分利用GPU性能,目前单进程只能用到GPU性能的50%都不到。如果有多个GPU在同一台视频处理服务器上,则会导致GPU的性能使用率更低。
发明内容
本发明实施方式的目的在于提供一种视频任务分配方法及服务器,能够充分利用服务器中GPU的性能。
为解决上述技术问题,本发明的实施方式提供了一种视频任务分配方法,应用于服务器;方法包括:若检测到目标应用程序被启动,生成目标应用程序的主进程,并通过主进程创建多个子进程;当主进程接收到多个视频任务时,通过主进程将多个视频任务分别分配到各子进程;通过各子进程将各视频任务分配给服务器的GPU。
本发明的实施方式还提供了一种服务器,包括:至少一个处理器;以及,与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行上述的视频任务分配方法。
本发明实施方式相对于现有技术而言,在检测到目标应用程序被启动时,生成目标应用程序的主进程,通过主进程创建多个子进程,在主进程接收到多个视频任务时,通过主进程将多个视频任务分别分配到各子进程,最后通过各子进程将各视频任务分配到服务器的GPU。即,本发明中,可以通过多个子进程将各视频任务分配给GPU,从而GPU能够并行处理多个子进程分配的视频任务,以充分利用服务器中GPU的性能。
另外,在通过各子进程将各视频任务分配给服务器的GPU之前,还包括:通过各子进程根据各视频任务的类型判断各视频任务是否适用GPU处理;若各视频任务均适用GPU处理,进入通过各子进程将各视频任务分配给服务器的GPU的步骤;若存在至少一视频任务不适用GPU处理,通过各子进程将适用GPU处理的视频任务分配给GPU,并将至少一视频任务分配给服务器上的CPU。本实施方式,可以根据各视频任务的类型对视频任务进行分配,从而能够充分发挥GPU与CPU的性能。
另外,通过各子进程根据各视频任务的类型判断各视频任务是否适用GPU处理,具体为:通过各子进程根据各视频任务的类型判断各视频任务是否支持硬件解码;当各视频任务均支持硬件解码时,进入通过各子进程将各视频任务分配给服务器的GPU的步骤;当存在至少一视频任务不支持硬件解码时,通过各子进程将支持硬件解码的视频任务分配给GPU,并通过各子进程将不支持硬件解码的视频任务分配给CPU。本实施方式提供了一种通过各子进程根据各视频任务的类型判断各视频任务是否适用GPU处理的具体实现方式,子进程根据视频任务的类型来对各视频任务进行分配,从而能够充分发挥GPU与CPU的性能。
另外,在通过各子进程将各视频任务分配给服务器的GPU之前,还包括:通过子进程判断目标应用程序的GPU配置信息是否为启用GPU;若GPU配置信息为启用GPU,进入通过各子进程将各视频任务分配给服务器的GPU的步骤;若GPU配置信息为不启用GPU,通过各子进程将各视频任务分配至服务器上的CPU。本实施方式中,用户可以预先设置目标应用程序的GPU配置信息,并能够根据用户设置的GPU配置信息对视频任务进行分配。
另外,在通过各子进程将各视频任务分配给服务器的GPU之前,还包括:通过子进程判断服务器中是否存在可用GPU;若服务器中存在可用GPU,进入通过各子进程将各视频任务分配给服务器的GPU的步骤;若服务器中不存在可用GPU,通过各子进程将各视频任务分配至CPU。本实施方式中,对服务器中是否存在可用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是根据本发明第一实施方式中的视频任务分配方法的具体流程图;
图2是根据本发明第二实施方式中的视频任务分配方法的具体流程图;
图3是根据本发明第三实施方式中的视频任务分配方法的具体流程图;
图4是根据本发明第四实施方式中的视频任务分配方法的具体流程图;
图5是根据本发明第五实施方式中的视频任务分配方法的具体流程图;
图6是根据本发明第六实施方式中的视频任务分配方法的具体流程图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的各实施方式进行详细的阐述。然而,本领域的普通技术人员可以理解,在本发明各实施方式中,为了使读者更好地理解本申请而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本申请所要求保护的技术方案。
本发明的第一实施方式涉及一种视频任务分配方法,应用于服务器,服务器至少包括CPU。
本实施方式的视频任务分配的具体流程如图1所示。
步骤101,检测是否有目标应用程序启动。若是,则进入步骤102;若否,则无需任何处理,直接结束。
具体而言,服务器中安装有各种各样的应用程序,而应用程序在启动时,都会被CPU所监测到,其中目标应用程序可包含用于进行视频处理的应用程序,当检测到目标应用程序启动时,进入步骤102;反之,则说明没有检测到目标应用程序被启动,直接结束。
步骤102,生成目标应用程序的主进程,并通过主进程创建多个子进程。
具体而言,生成该目标应用程序的主进程,并通过主进程创建多个子进程。主进程用于将目标应用程序接收到的视频任务分配给子进程,子进程则用于对接收到的视频任务进行分配。其中,视频任务包含视频文件的转码、切片等;其中,视频任务可以是根据用户请求生成的。
本实施例中,主进程创建的子进程的数量可以根据子进程对服务器的GPU的性能利用率来设定,例如当单个子进程对GPU性能的利用率为50%时,主进程创建2个子进程;当单个子进程对GPU性能的利用率为25%时,主进程创建4个子进程。
步骤103,当主进程接收到多个视频任务时,通过主进程将多个视频任务分别分配到各子进程。
具体而言,当目标应用程序接收到多个视频任务时,目标应用程序的主进程将多个视频任务分配到各个子进程。具体的,主进程分配多个视频任务的方式可以为主进程将多个视频任务均匀分配到各子进程,然不限于此,还可以是主进程根据分配各子进程的视频任务的数量,将视频任务分配给当前分配视频任务数量最低的子进程。
步骤104,通过各子进程将各视频任务分配给服务器的GPU。
具体而言,多视频任务被分配到各子进程将分配后,各子进程将接收到的视频任务分配给服务器的GPU进行处理,从而GPU可以接收到多个子进程分配的视频任务,实现了各子进程分配的视频任务的并行处理,从而提升了服务器GPU性能的利用率。举例来说,以主进程创建的子进程的数量为2个,分别为子进程A和子进程B、服务器中GPU数量为1个,为例进行说明,每个子进程被分配的任务数量为4个,GPU同时接收到两个子进程分配来的8个视频任务,当GPU设定的视频任务最大并行阈值为2时,GPU同时处理一个子进程A分配的视频任务和一个子进程B分配的视频任务。本实施例中,当服务器中GPU的数量为多个时,可以通过各子进程将各视频任务分配给待处理视频任务最少的GPU,从而能够充分发挥多个GPU的性能,提升了视频任务的处理速度。
本实施方式相对于现有技术而言,在检测到目标应用程序被启动时,生成目标应用程序的主进程,通过主进程创建多个子进程,在主进程接收到多个视频任务时,通过主进程将多个视频任务分别分配到各子进程,最后通过各子进程将各视频任务分配到服务器的GPU。即,本发明中,可以通过多个子进程将各视频任务分配给GPU,从而GPU能够并行处理多个子进程分配的视频任务,以充分利用服务器中GPU的性能。
本发明的第二实施方式涉及一种视频任务分配方法,第二实施方式与第一实施方式大致相同,主要区别之处在于:本实施方式可以根据各视频任务的类型对视频任务进行分配。
本实施方式的视频任务分配的具体流程如图2所示。
其中,步骤201至步骤203与步骤101至步骤103大致相同,步骤206与步骤104大致相同,在此不再赘述,主要不同之处在于,增加了步骤204与步骤205,具体如下:
步骤204,通过各子进程根据各视频任务的类型判断各视频任务是否适用GPU处理;若是,则进入步骤206;若否,则进入步骤205。
具体而言,各子进程在将接收到的视频任务进行分配之前,根据各视频任务的类型判断各视频任务是否适用GPU处理,具体的,各子进程可以根据视频任务的类型确认视频任务是否支持硬件解码,若子进程接收到的视频任务均支持硬件解码,子进程判定接收到的视频任务均适用GPU处理,进入步骤206通过各子进程将各视频任务分配给服务器的GPU;若子进程接收到的视频任务中存在至少一视频任务不支持硬件解码,则说明子进程接收到的视频任务中存在至少一视频任务不适用GPU处理,进入步骤205。
步骤205,通过各子进程将适用GPU处理的视频任务分配给GPU,并将至少一视频任务分配给服务器上的CPU。
具体而言,各子进程将适用GPU处理的视频任务分配给GPU进行处理,即将支持硬解的视频任务分配GPU进行处理,并将不适用GPU处理的视频任务分配给服务器上的CPU进行处理,即将不支持硬解(仅支持软解)的视频任务分配给服务器上的CPU进行处理。
本实施方式相对于第一实施方式而言,子进程根据视频任务的类型来对各视频任务进行分配,从而能够充分发挥GPU与CPU的性能。
本发明的第三实施方式涉及一种视频任务分配方法,第三实施方式与第一实施方式大致相同,主要区别之处在于:本实施方式中,增加了对目标应用程序的GPU配置信息是否为启用GPU的判断。
本实施方式的视频任务分配的具体流程如图3所示。
其中,步骤301至步骤303与步骤101至步骤103大致相同,步骤306与步骤104大致相同,在此不再赘述,主要不同之处在于,增加了步骤304与步骤305,具体如下:
步骤304,通过子进程判断目标应用程序的GPU配置信息是否为启用GPU;若是,则进入步骤306;若否,则进入步骤305。
具体而言,用户可以预先对目标应用程序的GPU配置信息进行设置,目标应用程序的GPU配置信息可以设置为启用GPU或者不启用GPU,各子进程在将接收到的视频任务进行分配之前,对目标应用程序的GPU配置信息是否为启用GPU进行判断,若是,则说明用户预先设置了启用服务器中的GPU,进入步骤306通过各子进程将各视频任务分配给服务器的GPU。若否,则说明用户预先设置了不启用服务器中的GPU,进入步骤305。
步骤305,通过各子进程将各视频任务分配至服务器上的CPU。
具体而言,各子进程将接收到的视频任务均分配给服务器上的CPU进行处理。
本实施方式相对于第一实施方式而言,用户可以预先设置目标应用程序的GPU配置信息,并子进程能够根据用户设置的GPU配置信息对视频任务进行分配。需要说明的是,本实施方式也可以作为在第二实施方式基础上的改进,可以达到同样的技术效果。
本发明的第四实施方式涉及一种视频任务分配方法,第四实施方式是在第三实施方式基础上的改进,主要改进之处在于:本实施方式中对服务器中是否存在可用的GPU进行判断。
本实施方式的视频任务分配的具体流程如图4所示。
其中,步骤401至步骤404与步骤301至步骤304大致相同,步骤406、步骤407与步骤305、步骤306大致相同,在此不再赘述,主要不同之处在于,增加了步骤405,具体如下:
步骤405,通过子进程判断服务器中是否存在可用GPU。若是,则进入步骤407;若否,则进入步骤406。
具体而言,子进程在判定目标应用程序的GPU配置信息为启用GPU之后,再判断服务器中是否存在可用的GPU,若判定服务器中存在可用的GPU,进入步骤407通过各子进程将各视频任务分配给服务器的GPU。否则,则说明服务器中不存在可用的GPU,进入步骤406通过各子进程将各视频任务分配至服务器上的CPU。
本实施方式相对于第三实施方式而言,对服务器中是否存在可用GPU进行判断,从而能够更合理的对视频任务进行分配。
本发明的第五实施方式涉及一种视频任务分配方法,第五实施方式与第四实施方式大致相同,主要区别之处在于:本实施方式中,提供了判断服务器中是否存在可用GPU的具体实现方式。
本实施方式的视频任务分配的具体流程如图5所示。
其中,步骤501至步骤504与步骤401至步骤404大致相同,步骤506、步骤507与步骤406、步骤407大致相同,在此不再赘述,主要不同之处在于,步骤505,包括以下子步骤:
子步骤5051,通过子进程判断服务器中是否安装有GPU。若是,则进入子步骤5052;若否,则进入步骤506。
具体而言,子进程可以检测服务器中是否安装有GPU,若检测到服务器中安装有GPU,进入子步骤5052;若检测到服务器中未安装有GPU,判定服务器中不存在可用的GPU,进入步骤506通过各子进程将各视频任务分配至服务器上的CPU。
子步骤5052,通过子进程判断是否存在占用率不超过预设阈值的GPU。若是,则进入步骤507;若否,则进入步骤506。
具体而言,子进程在检测到服务器中安装有GPU后,再对服务器中安装的GPU的占用率是否超过预设阈值进行判断,GPU的占用率未超过预设阈值时,说明该GPU具有处理能力;子进程在判定服务器中存在至少一GPU的占用率未超过预设阈值,则说明服务器中存在至少一可用的GPU,进入步骤507通过各子进程将各视频任务分配给服务器的GPU。否则,则说明服务器中不存在可用的GPU,进入步骤506通过各子进程将各视频任务分配至服务器上的CPU。
本实施方式相对于第四实施方式而言,提供了一种判断服务器中是否存在可用GPU的具体实现方式。
本发明的第六实施方式涉及一种视频任务分配方法,第六实施方式与第三实施方式大致相同,主要区别之处在于:本实施方式中,可以根据目标应用程序的GPU配置信息来控制主进程创建子进程。
本实施方式的视频任务分配的具体流程如图6所示。
其中,步骤601与步骤301大致相同,步骤604至步骤608与步骤302至步骤306大致相同,在此不再赘述,主要不同之处在于,在步骤601与604之间增加了步骤602与步骤603,具体如下:
步骤602,判断目标应用程序的GPU配置信息是否为启用GPU;若是,则进入步骤603;若否,则进入步骤602。
具体而言,用户可以预先对目标应用程序的GPU配置信息进行设置,目标应用程序的GPU配置信息可以设置为启用GPU或者不启用GPU,在目标应用程序被启动后,可对该目标应用程序的GPU配置信息是否为启用GPU进行判断,若是,则说明用户预先设置了该目标应用程序可以调用服务器中的GPU,进入步骤602生成目标应用程序的主进程,并通过主进程创建多个子进程。若否,则说明用户预先设置该目标应用程序不可以调用服务器中的GPU,进入步骤603。
步骤603,生成目标应用程序的主进程,并通过主进程创建一个子进程。
具体而言,生成目标应用程序的主进程,并通过主进程创建一个子进程,之后当目标应用程序接收到多个视频任务时,目标应用程序的主进程直接将所有的视频任务均分配给该子进程,子进程将接收到的视频任务均分配给CPU进行处理。
本实施方式相对于第三实施方式而言,能够根据用户设置的目标应用程序的GPU配置信息,来控制目标应用程序的主进程生成创建子进程。
上面各种方法的步骤划分,只是为了描述清楚,实现时可以合并为一个步骤或者对某些步骤进行拆分,分解为多个步骤,只要包括相同的逻辑关系,都在本专利的保护范围内;对算法中或者流程中添加无关紧要的修改或者引入无关紧要的设计,但不改变其算法和流程的核心设计都在该专利的保护范围内。
本发明第七实施方式涉及一种服务器,包括至少一个处理器;以及,与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使实现如上述第一至第六实施例中任一项所述的视频任务分配方法。
其中,存储器和处理器采用总线方式连接,总线可以包括任意数量的互联的总线和桥,总线将一个或多个处理器和存储器的各种电路连接在一起。总线还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路连接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口在总线和收发机之间提供接口。收发机可以是一个元件,也可以是多个元件,比如多个接收器和发送器,提供用于在传输介质上与各种其他装置通信的单元。经处理器处理的数据通过天线在无线介质上进行传输,进一步,天线还接收数据并将数据传送给处理器。
处理器负责管理总线和通常的处理,还可以提供各种功能,包括定时,外围接口,电压调节、电源管理以及其他控制功能。而存储器可以被用于存储处理器在执行操作时所使用的数据。
本发明第八实施方式涉及一种计算机可读存储介质,存储有计算机程序。计算机程序被处理器执行时实现上述方法实施例。
即,本领域技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域的普通技术人员可以理解,上述各实施方式是实现本发明的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。
Claims (11)
1.一种视频任务分配方法,其特征在于,应用于服务器,所述方法包括:
若检测到目标应用程序被启动,生成所述目标应用程序的主进程;
获取所述服务器的GPU的性能利用率,并根据所述性能利用率通过所述主进程创建多个子进程;
当所述主进程接收到多个视频任务时,通过所述主进程将所述多个视频任务分别分配到各所述子进程;
通过各所述子进程将各所述视频任务分配给所述服务器的GPU。
2.根据权利要求1所述的视频任务分配方法,其特征在于,在所述通过各所述子进程将各所述视频任务分配给所述服务器的GPU之前,还包括:
通过各所述子进程根据各所述视频任务的类型判断各所述视频任务是否适用GPU处理;
若各所述视频任务均适用GPU处理,进入所述通过各所述子进程将各所述视频任务分配给所述服务器的GPU的步骤;
若存在至少一所述视频任务不适用GPU处理,通过各所述子进程将适用GPU处理的所述视频任务分配给所述GPU,并将所述至少一所述视频任务分配给所述服务器上的CPU。
3.根据权利要求2所述的视频任务分配方法,其特征在于,所述通过各所述子进程根据各所述视频任务的类型判断各所述视频任务是否适用GPU处理,具体为:
通过各所述子进程根据各所述视频任务的类型判断各所述视频任务是否支持硬件解码;
当各所述视频任务均支持硬件解码时,进入所述通过各所述子进程将各所述视频任务分配给所述服务器的GPU的步骤;
当存在至少一所述视频任务不支持硬件解码时,通过各所述子进程将支持硬件解码的所述视频任务分配给所述GPU,并通过各所述子进程将不支持硬件解码的所述视频任务分配给所述CPU。
4.根据权利要求1所述的视频任务分配方法,其特征在于,在所述通过各所述子进程将各所述视频任务分配给所述服务器的GPU之前,还包括:
通过所述子进程判断所述目标应用程序的GPU配置信息是否为启用GPU;
若所述GPU配置信息为启用GPU,进入所述通过各所述子进程将各所述视频任务分配给所述服务器的GPU的步骤;
若所述GPU配置信息为不启用GPU,通过各所述子进程将各所述视频任务分配至所述服务器上的CPU。
5.根据权利要求4所述的视频任务分配方法,其特征在于,在所述通过各所述子进程将各所述视频任务分配给所述服务器的GPU之前,还包括:
通过所述子进程判断所述服务器中是否存在可用GPU;
若所述服务器中存在可用GPU,进入所述通过各所述子进程将各所述视频任务分配给所述服务器的GPU的步骤;
若所述服务器中不存在可用GPU,通过各所述子进程将各所述视频任务分配至所述CPU。
6.根据权利要求5所述的视频任务分配方法,其特征在于,所述通过各所述子进程判断所述服务器中是否存在可用GPU,具体包括:
通过所述子进程判断所述服务器中是否安装有GPU;
若通过所述子进程判定所述服务器中安装有GPU,则判定所述服务器中存在可用GPU;
若通过所述子进程判定所述服务器中未安装有GPU,则判定所述服务器中不存在可用GPU。
7.根据权利要求6所述的视频任务分配方法,其特征在于,在通过所述子进程判定所述服务器中安装有GPU之后,还包括:
通过所述子进程判断是否存在占用率不超过预设阈值的GPU;
若存在占用率不超过预设阈值的GPU,则判定所述服务器中存在可用GPU;
若不存在占用率不超过预设阈值的GPU,则判定所述服务器中不存在可用GPU。
8.根据权利要求1所述的视频任务分配方法,其特征在于,所述服务器中GPU的数量为多个;所述通过各所述子进程将各所述视频任务分配给所述服务器的GPU,具体为:
所述通过各所述子进程将各所述视频任务分配给待处理视频任务最少的所述GPU。
9.根据权利要求4所述的视频任务分配方法,其特征在于,在所述获取所述服务器的GPU的性能利用率,并根据所述性能利用率通过所述主进程创建多个子进程之前,还包括:
判断所述目标应用程序的GPU配置信息是否为启用GPU;
若所述目标应用程序的GPU配置信息为启用GPU,进入获取所述服务器的GPU的性能利用率,并根据所述性能利用率通过所述主进程创建多个子进程的步骤;
若所述目标应用程序的GPU配置信息为不启用GPU,生成所述目标应用程序的主进程,并通过所述主进程创建一个子进程。
10.根据权利要求1所述的视频任务分配方法,其特征在于,所述通过所述主进程将所述多个视频任务分配到所述多个子进程,具体为:
通过所述主进程将所述多个视频任务均匀分配给多个所述子进程。
11.一种服务器,其特征在于,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1至10中任一所述的视频任务分配方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811627768.6A CN109788325B (zh) | 2018-12-28 | 2018-12-28 | 视频任务分配方法及服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811627768.6A CN109788325B (zh) | 2018-12-28 | 2018-12-28 | 视频任务分配方法及服务器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109788325A CN109788325A (zh) | 2019-05-21 |
CN109788325B true CN109788325B (zh) | 2021-11-19 |
Family
ID=66498860
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811627768.6A Expired - Fee Related CN109788325B (zh) | 2018-12-28 | 2018-12-28 | 视频任务分配方法及服务器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109788325B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111240848A (zh) * | 2020-02-14 | 2020-06-05 | 腾讯科技(深圳)有限公司 | 一种任务分配处理方法及系统 |
CN111629233B (zh) * | 2020-05-29 | 2022-03-25 | 北京华夏电通科技股份有限公司 | 音视频转码方法及装置 |
CN111866508A (zh) * | 2020-07-13 | 2020-10-30 | 腾讯科技(深圳)有限公司 | 视频处理方法、装置、介质及电子设备 |
CN113849312B (zh) * | 2021-09-29 | 2023-05-16 | 北京百度网讯科技有限公司 | 数据处理任务的分配方法、装置、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103582509A (zh) * | 2010-12-14 | 2014-02-12 | 亚马逊技术股份有限公司 | 通用处理器和图形处理器之间的负载均衡 |
CN107070686A (zh) * | 2016-12-23 | 2017-08-18 | 武汉烽火众智数字技术有限责任公司 | 一种视频监控平台码流并行转码的系统和方法 |
CN107135257A (zh) * | 2017-04-28 | 2017-09-05 | 东方网力科技股份有限公司 | 一种节点集群中任务分配的方法、节点和系统 |
CN108427603A (zh) * | 2018-01-10 | 2018-08-21 | 链家网(北京)科技有限公司 | 一种任务分派方法方法及装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106897126A (zh) * | 2015-12-21 | 2017-06-27 | 北京奇虎科技有限公司 | 一种图片抓取方法和服务器 |
CN105933724A (zh) * | 2016-05-23 | 2016-09-07 | 福建星网视易信息系统有限公司 | 视频制作方法、装置及系统 |
CN106878736A (zh) * | 2017-03-17 | 2017-06-20 | 郑州云海信息技术有限公司 | 一种视频编解码的方法与装置 |
CN108984297A (zh) * | 2018-06-28 | 2018-12-11 | 中国建设银行股份有限公司 | 任务执行方法及装置 |
-
2018
- 2018-12-28 CN CN201811627768.6A patent/CN109788325B/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103582509A (zh) * | 2010-12-14 | 2014-02-12 | 亚马逊技术股份有限公司 | 通用处理器和图形处理器之间的负载均衡 |
CN107070686A (zh) * | 2016-12-23 | 2017-08-18 | 武汉烽火众智数字技术有限责任公司 | 一种视频监控平台码流并行转码的系统和方法 |
CN107135257A (zh) * | 2017-04-28 | 2017-09-05 | 东方网力科技股份有限公司 | 一种节点集群中任务分配的方法、节点和系统 |
CN108427603A (zh) * | 2018-01-10 | 2018-08-21 | 链家网(北京)科技有限公司 | 一种任务分派方法方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN109788325A (zh) | 2019-05-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109788325B (zh) | 视频任务分配方法及服务器 | |
US8307370B2 (en) | Apparatus and method for balancing load in multi-core processor system | |
US8392635B2 (en) | Selectively enabling a host transfer interrupt | |
EP3224726B1 (en) | Method and apparatus for memory management | |
CN107515786B (zh) | 资源分配方法、主装置、从装置和分布式计算系统 | |
US8490107B2 (en) | Processing resource allocation within an integrated circuit supporting transaction requests of different priority levels | |
EP2725862A1 (en) | Resource allocation method and resource management platform | |
US11489735B2 (en) | Dynamic network allocation apparatus, dynamic network allocation method and non-transitory computer-readable medium | |
CN105183565A (zh) | 计算机、服务质量控制方法及装置 | |
CN108228490B (zh) | 一种基于pcie卡高速数据传输的驱动方法 | |
CN104391656A (zh) | 一种存储设备的io资源分配方法、装置及存储设备 | |
CN107741873B (zh) | 业务处理方法及装置 | |
CN116382880A (zh) | 任务执行方法、装置、处理器、电子设备及存储介质 | |
CN111651272B (zh) | 一种嵌入式实时操作的线程时间管理方法及装置 | |
US6598105B1 (en) | Interrupt arbiter for a computing system | |
CN108900865B (zh) | 服务器、转码任务的调度方法及执行方法 | |
KR101227885B1 (ko) | 공유 메모리 채널 다중화 방법 및 그 장치 | |
US20060230246A1 (en) | Memory allocation technique using memory resource groups | |
US20140047454A1 (en) | Load balancing in an sap system | |
CN110955616B (zh) | 用于访问共享资源的系统和方法 | |
CN109298944B (zh) | 服务器压力调节方法及装置、计算机装置及存储介质 | |
CN112114971A (zh) | 一种任务分配方法、装置及设备 | |
CN112642154A (zh) | 云游戏控制方法、装置、网络设备及存储介质 | |
CN112511664A (zh) | 一种级联bms的id分配方法、系统和电子设备 | |
CN114546630A (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 | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20211119 |