一种多任务并行调度机制的制作方法

文档序号:6340934阅读:231来源:国知局
专利名称:一种多任务并行调度机制的制作方法
技术领域
本发明涉及节目制作技术领域,尤其涉及一种多任务并行调度方法。
背景技术
在图像/视频后期处理软件中,由于软件的特殊性,有各种硬件资源,包括CPU、 GPU、高速硬盘、视音频板卡等。在后期处理软件中需要对这些硬件资源进行访问,比如需要从磁盘中读取素材数据,需要使用CPU执行算法和界面现实,需要GPU来进行图形渲染,需要用视音频板卡来进行图像和声音的输出。然而本发明发明人在实现本发明时,发现现有技术中至少存在如下技术缺陷 CPU、GPU、高速硬盘、视音频板卡等硬件资源是相对独立的,一般情况下,这些资源都是串行进行使用的,在使用一种资源的时候,要等到这种资源使用完才能使用下一种资源,这样, 将极大浪费硬件资源,节目制作的效率将很低。

发明内容
本发明提供一种多任务并行调度方法,从而解决了现有CPU、GPU、高速硬盘、视音频板卡等硬件资源是相对独立工作的,这样将极大浪费硬件资源,导致节目制作的效率很低的问题。为达到上述目的,本发明提出一种统一的特技调节方法,包括接收带有函数和标注了类型的多个任务;检查所述多个任务是否具备执行条件;同时启动多个线程调度硬件资源。本发明实施例还提供一种多任务并行调度装置,包括接收任务模块,用于接收带有函数和标注了类型的多个任务;任务检查模块,用于检查所述多个任务是否具备执行条件;硬件资源调度模块,用于同时启动多个线程调度硬件资源。本发明实施例的技术方案具有以下优点本发明实施例通过使现有CPU、GPU、高速硬盘、视音频板卡等硬件资源并行调度,让它们同时工作,从而大大提高了资源的利用率,使节目制作的效率得以提升。


图1为本发明实施例多任务并行调度方法流程图1 ;图2为本发明实施例多任务并行调度方法流程图2 ;图3为本发明实施例多任务并行调度装置示意图。
具体实施例方式本发明发明人针对现有图像/视频后期处理软件中CPU、GPU、高速硬盘、视音频板卡等硬件资源是相对独立工作的,这样将极大浪费硬件资源,导致节目制作的效率很低的问题。通过一种多任务并行调度方法,将现有CPU、GPU、高速硬盘、视音频板卡等硬件资源并行调度,让他们同时工作,从而大大的提高了资源的利用率,使节目制作的效率得以提升。一般来讲,使不同的硬件能够并行工作是指把能在时间上可以同时工作的硬件资源同时调度起来,让它们在同一时间完成不同的工作,比如可以在CPU执行算法的时候, 同时调度硬盘让它可以开始读写素材文件。针对不同硬件的工作分为不同类型的任务 (task),一类任务完成针对一种硬件资源的工作,比如硬盘读写定义为Disk任务,算法定义为CPU任务,图像渲染定义为GPU任务等等。针对使用同一类硬件资源任务的调度叫作任务执行器,它是一个线程,负责将所有到来的任务推送到相应的硬件资源并执行上述任务。下面结合附图和实施例,对本发明的具体实施方式
作进一步详细描述如图1所示,为本发明实施例一种多任务并行调度方法流程图,包括步骤S101,接收带有函数和标注了类型的多个任务。首先需要产生多个任务,每个任务带有一个函数代表了该任务想做的工作,同时需要将每个任务标注一个类型,该类型可以用Disk、CPU、GPU等来标识,表示希望这个任务在哪种硬件资源上运行。同时需要设定这个任务被执行的先决条件。将带有函数的任务推送到任务分发中心,分发中心将检测是否有相应的执行器存在,如果存在,将把任务放入相应执行器的任务队列中,如果不存在将负责创建一个这种类型的执行器出来,并把任务发发送到相应的执行器中。执行器在创建的时候同时将创建一个线程,这个线程通过调用任务带有的函数,将任务执行起来。步骤S102,检查所述多个任务是否具备执行条件。执行器检查是否有任务到达,如果到达将检查任务是否具备执行条件,如果是则把任务推送相应的硬件资源,让硬件资源启动;如果不具备执行条件,则等待任务条件的满足;如果执行器发现没有任务将进入休眠状态。步骤S103,同时启动多个线程调度硬件资源。执行器不断接到不同类型的任务,这些任务将能同时启动多个线程,这些线程将能同时将所有硬件资源调度出来,这样就实现了所有硬件资源的并行功能。当所有任务调度结束后,回收销毁任务和任务执行器。本发明实施例通过通过一种多任务并行调度方法,将现有CPU、GPU、高速硬盘、视音频板卡等硬件资源并行调度,让他们同时工作,从而大大的节约了硬件的资源,使节目制作的效率得以提升。如图2所示,为本发明实施例一种多任务并行调度装置的结构图,包括任务接收模块2,用于接收带有函数和标注了类型的多个任务;任务检查模块3,用于检查所述多个任务是否具备执行条件;硬件资源调度模块4,用于同时启动多个线程调度硬件资源。通过以上实施例提供的装置,可以将现有CPU、GPU、高速硬盘、视音频板卡等硬件资源并行调度,让他们同时工作,从而大大的节约了硬件的资源,使节目制作的效率得以提升。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台终端设备(可以是手机,个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。 以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
权利要求
1.一种多任务并行调度方法,其特征在于,包括如下步骤接收带有函数和标注了类型的多个任务;检查所述多个任务是否具备执行条件;同时启动多个线程调度硬件资源。
2.如权利要求1所述的多任务并行调度方法,其特征在于,所述在所述接收带有函数和标注了类型的多个任务之前,还包括将所述任务推送到任务分发中心,并检验是否有相应的执行器存在,如果存在,将把所述任务放入相应的任务队列中,如果不存在,则创建新的这种类型的执行器。
3.如权利要求2所述的多任务并行调度方法,其特征在于,所述创建一个新的这种类型的执行器,还包括同时创建一个线程,所述线程调用所述任务带有的函数。
4.如权利要求1所述的多任务并行调度方法,其特征在于,所述任务的类型,用Disk、 CPU、GPU等来标识。
5.如权利要求1所述的多任务并行调度方法,其特征在于,所述检查多个任务是否具备执行条件,具体包括如果所述多个任务符合执行条件,则把任务推送至相应的硬件资源,同时启动所述硬件资源;如果没有发现任务,则执行器进入休眠状态。
6.一种多任务并行调度装置,包括接收任务模块,用于接收带有函数和标注了类型的多个任务;任务检查模块,用于检查所述多个任务是否具备执行条件;硬件资源调度模块,用于同时启动多个线程调度硬件资源。
全文摘要
本发明实施例公开了一种多任务并行调度方法,包括接收带有函数和标注了类型的多个任务;检查所述多个任务是否具备执行条件;同时启动多个线程调度硬件资源。本发明还公开了一种多任务并行调度装置。通过应用本发明,能够使现有CPU、GPU、高速硬盘、视音频板卡等硬件资源并行调度,让它们同时工作,从而大大提高了资源的利用率,使节目制作的效率得以提升。
文档编号G06F9/46GK102567084SQ20101061785
公开日2012年7月11日 申请日期2010年12月31日 优先权日2010年12月31日
发明者刘铁华, 徐进, 见良, 郑鹏程 申请人:新奥特(北京)视频技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1