一种面向实时视频处理的负载感知云计算系统的制作方法

文档序号:9330609阅读:416来源:国知局
一种面向实时视频处理的负载感知云计算系统的制作方法
【技术领域】
[0001]本发明涉及云计算大数据、视频处理领域,具体涉及一种面向实时视频处理的负载感知云计算系统。
【背景技术】
[0002]随着互联网、移动设备、智能家居、智能交通等商业模式和研究方向的蓬勃发展,海量实时数据需要得到有效利用,而其中因实时性高,数据量大等特点,视频数据显得尤为重要。Internat1nal Data Corporat1n 最新报告 “The Digital Universe in 2020” 指出,2012年全球大数据的一半都是视频数据,到2015年该比例将达到65%。
[0003]相对于CPU而言,采用GPU处理视频能大大提高计算速度。然而目前的GPU处理平台不足之处在于,基于GPU的任务虽然消耗更少的CPU,但是却会占用大量的内存。特别是在内存不足的情况下,此瓶颈会大大限制处理效率。
[0004]因此,如何高效地利用海量数据并充分挖掘其间的信息成了本领域亟待解决的问题。

【发明内容】

[0005]为解决云环境下实时视频流之间智能信息挖掘所带来的资源消耗大,数据量大的问题,本发明在基于云计算和大数据平台的基础上提出了一种面向实时视频处理的负载感知云计算系统,能最大化利用云节点资源,提高计算速度。
[0006]本发明的技术方案是这样实现的:
[0007]一种面向实时视频处理的负载感知云计算系统,包括:
[0008]Storm集群,提供基础设施服务;
[0009]视频流产生器,用于视频流的产生,接受和发送;
[0010]流服务器,缓存视频数据并提供统一的消息接口,降低组件之间的耦合;
[0011]负载检查器,其绑定负载感知算法以感知任务的计算负载,通过对任务所在节点的CPU、GPU和内存使用情况的分析,通知Storm集群应该选择处理器类型;
[0012]参数控制器,用于集群的性能的分析和评估;
[0013]视频处理器,其分别提供基于CPU和GPU处理的接口 ;
[0014]协议供应者,提供各种协议,通过协议供应者,所述参数控制器与Storm集群进行交互,实现不同协议下的消息交换,同时解除模块间的耦合。
[0015]可选地,所述协议供应者提供AOP,RMI,HTTP协议。
[0016]可选地,所述负载动态感知算法首先在拓扑作业提交之前统计云环境中每一个计算节点的计算资源;当此拓扑提交后,获取拓扑每一个worker的资源请求,将此请求与每一个云节点的可用资源比较,当某云节点的可用资源大于该worker的请求时,将该worker规划到此节点;然后,通过比较该worker对CPU和GPU资源的不同请求,分别计算出在使用CPU和使用GPU的情况下该worker能被容纳个数,选择出能容纳最多个数的处理器。
[0017]本发明的有益效果是:
[0018](I)构建了一种面向海量实时视频处理的高效云计算系统,实现了对海量实时视频的智能处理;
[0019](2)提出了一种CPU与GPU相结合的负载动态感知算法,实现了云节点计算资源的最大化利用。
【附图说明】
[0020]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0021]图1为本发明面向实时视频处理的负载感知云计算系统的原理框图;
[0022]图2为本发明面向实时视频处理的负载感知云计算系统的运行流程图;
[0023]图3为本发明的CPU与GPU相结合的负载动态感知算法流程图。
【具体实施方式】
[0024]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0025]如图1所示,本发明面向实时视频处理的负载感知云计算系统包括=Storm集群、视频流产生器、流服务器、负载检查器、参数控制器、视频处理器和协议供应者。
[0026]Storm集群作为本发明的核心组件,用于提供基础设施服务。
[0027]视频流产生器负责视频流的产生,接受和发送。
[0028]流服务器用于缓存视频数据并提供统一的消息接口,降低组件之间的耦合。
[0029]负载检查器绑定负载动态感知算法以感知任务的计算负载。通过对任务所在节点的CPU、GPU和内存使用情况的分析,通知Storm集群应该选择处理器类型。
[0030]参数控制器用于集群的性能的分析和评估。
[0031 ] 视频处理器分别提供基于CPU和GPU处理的接口。
[0032]协议供应者提供各种协议,包括AOP,RMI,HTTP等。
[0033]图2为本发明面向实时视频处理的负载感知云计算系统的运行流程图。
[0034]当一个新的作业提交到本发明的系统之后,系统首先检查Storm平台是否还有多的虚拟机进程来运行此作业。
[0035]如果是,那么本发明的系统就满足此任务所请求的所有worker,当所有worker都被分配之后,每一个worker便开始自己的运行。
[0036]需要注意的是,有些worker不会包含计算任务重的工作,所以本发明的系统还包括CPU与GPU相结合的负载动态感知算法,首先检查某一 worker是否包含视频计算任务。如果包含,那么就执行负载感知算法,决定将此任务分配给CPU计算还是GPU计算。
[0037]当所有worker都被遍历之后,整个作业便开始执行。
[0038]同时为了检测新此上传的作业是否影响其他作业的顺利运行,本发明的系统还会检测整个Storm平台的性能,如果整个平台性能受到影响,便提出报警。
[0039]不同的计算任务,可能适用于CPU处理,也可能适用于GPU处理,所以本发明提出一种CPU与GPU相结合的负载动态感知算法,实现CPU-GPU的协调处理。云计算节点RAM或CPU在被过多占用的情况,可导致性能下降。而为了避免这种情况,我们设置两个阈值CPU使用率α和RAM使用率β。如图3所示,根据节点的负载情况,进行CPU-GPU灵活选择的算法可以定义如下:
[0040]N = {nj:节点集合;
[0041]TC1, UC1:节点i的总体CPU和使用的CPU ;
[0042]TR1,UR1:点i的总体RAM和使用的RAM ;
[0043]AC,AR:节点可用 CPU 和 RAM ;
[0044]Topo = {tj}:应用部署分布图(topologies)的集合;
[0045]Wj= {w j, J:从第 j 个图(topology)需要分配的进程(workers);
[0046]grcJ>k, grry:进程 w 在使用 GPU 时需要的 CPU 和 RAM ;
[0047]crcj>k, Crrj,k:w j,k在使用 CPU 时需要的 CPU 和 RAM。
[0048]本发明的CPU与GPU相结合的负载动态感知算法首先在拓扑作业提交之前统计云环境中每一个计算节点的计算资源;当此拓扑提交后,获取拓扑每一个worker的资源请求,将此请求与每一个云节点的可用资源比较,当某云节点的可用资源大于此worker的请求时,将此worker规划到此节点;然后,通过比较此worker对cpu和gpu资源的不同请求,分别计算出在使用cpu和使用gpu的情况下此worker能被容纳个数,选择出能容纳最多个数的处理器。
[0049]本发明的面向实时视频处理的负载感知云计算系统,实现了对海量实时视频的智能处理;提出了一种CPU与GPU相结合的负载动态感知算法,实现了云节点计算资源的最大化利用。
[0050]以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
【主权项】
1.一种面向实时视频处理的负载感知云计算系统,其特征在于,包括: Storm集群,提供基础设施服务; 视频流产生器,用于视频流的产生,接受和发送; 流服务器,缓存视频数据并提供统一的消息接口,降低组件之间的耦合; 负载检查器,其绑定负载动态感知算法以感知任务的计算负载,通过对任务所在节点的CPU、GPU和内存使用情况的分析,通知Storm集群应该选择处理器类型; 参数控制器,用于集群的性能的分析和评估; 视频处理器,其分别提供基于CPU和GPU处理的接口 ; 协议供应者,提供各种协议,通过协议供应者,所述参数控制器与Storm集群进行交互,实现不同协议下的消息交换,同时解除模块间的耦合; 当一个新的作业提交到本系统之后,系统首先检查Storm平台是否还有多的虚拟机进程来运行此作业;如果是,则系统满足此任务所请求的所有worker,当所有worker都被分配之后,每一个worker便开始自己的运行;所述负载动态感知算法,首先检查某一 worker是否包含视频计算任务,如果包含,执行负载动态感知算法,决定将此任务分配给CPU计算还是GPU计算;当所有worker都被遍历之后,整个作业便开始执行。2.如权利要求1所述的面向实时视频处理的负载感知云计算系统,其特征在于,所述协议供应者提供AOP,RMI,HTTP协议。3.如权利要求1所述的面向实时视频处理的负载感知云计算系统,其特征在于,所述负载动态感知算法包括以下步骤: 首先在拓扑作业提交之前统计云环境中每一个计算节点的计算资源; 当此拓扑提交后,获取拓扑每一个worker的资源请求,将该请求与每一个云节点的可用资源比较,当某云节点的可用资源大于该worker的请求时,将该worker规划到此节点;然后,通过比较该worker对CPU和GPU资源的不同请求,分别计算出在使用CPU和使用GPU的情况下该worker能被容纳个数,选择出能容纳最多个数的处理器。
【专利摘要】本发明提出了一种面向实时视频处理的负载感知云计算系统,包括:Storm集群,提供基础设施服务;视频流产生器,用于视频流的产生,接受和发送;流服务器,缓存视频数据并提供统一的消息接口,降低组件之间的耦合;负载检查器,其绑定负载感知算法以感知任务的计算负载,通过对任务所在节点的CPU、GPU和内存使用情况的分析,通知Storm集群应该选择处理器类型;参数控制器,用于集群的性能的分析和评估;视频处理器,其分别提供基于CPU和GPU处理的接口;协议供应者,提供各种协议,通过协议供应者,所述参数控制器与Storm集群进行交互,实现不同协议下的消息交换,同时解除模块间的耦合。
【IPC分类】G06F9/50, H04L29/08
【公开号】CN105049485
【申请号】CN201510330962
【发明人】张卫山, 段鹏程, 卢清华, 宫文娟, 李忠伟
【申请人】中国石油大学(华东)
【公开日】2015年11月11日
【申请日】2015年6月9日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1