CN110096367A - 一种基于多gpu的全景实时视频流处理方法 - Google Patents

一种基于多gpu的全景实时视频流处理方法 Download PDF

Info

Publication number
CN110096367A
CN110096367A CN201910399059.5A CN201910399059A CN110096367A CN 110096367 A CN110096367 A CN 110096367A CN 201910399059 A CN201910399059 A CN 201910399059A CN 110096367 A CN110096367 A CN 110096367A
Authority
CN
China
Prior art keywords
gpu
video
spliced
real
processing based
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
Application number
CN201910399059.5A
Other languages
English (en)
Inventor
马万涛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ningxia Media Technology Co Ltd
Original Assignee
Ningxia Media Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Ningxia Media Technology Co Ltd filed Critical Ningxia Media Technology Co Ltd
Priority to CN201910399059.5A priority Critical patent/CN110096367A/zh
Publication of CN110096367A publication Critical patent/CN110096367A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5044Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering hardware capabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/698Control of cameras or camera modules for achieving an enlarged field of view, e.g. panoramic image capture

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Studio Devices (AREA)

Abstract

本发明公开了一种基于多GPU的全景实时视频流处理方法,包括以下步骤:步骤1.单个GPU的任务执行;步骤2.占有率分配;步骤3.多个GPU分配任务;步骤4.计算将视频汇总;步骤5.汇总后的视频拼接存入至第二存储列队;步骤6.将步骤5经过第二存储列队汇总后的视频数据传输至主机接收端;本发明的有益效果:本发明采用多GPU协调工作,在微处理器的调节下实现对全景实时视频流量多GPU协调处理,在峰时和谷时实现多GPU架构并发运算,通过实时监控分布式计算框架中各个数据处理组件的GPU使用状况,在流量较高的时候采用多种强GPU复合处理,在流量较低时候采用单个或较少的GPU进行处理,解决视频处理会消耗大量空闲GPU资源的问题,实现实时效果,提高资源利用率。

Description

一种基于多GPU的全景实时视频流处理方法
技术领域:
本发明属于视频流处理技术领域,特别涉及一种基于多GPU的全景实时视频流处理方法。
背景技术:
全景,又被称为3D实景,是一种新兴的富媒体技术,其与视频,声音,图片等传统的流媒体最大的区别是“可操作,可交互”。全景分为虚拟现实和3D实景两种。虚拟现实是利用maya等软件,制作出来的模拟现实的场景,代表有虚拟紫禁城,河北虚拟旅游,泰山虚拟游等;3D实景是利用单反相机或街景车拍摄实景照片,经过特殊的拼合,处理,让作者立于画境中,让最美的一面展现出来,流处理是一种重要的大数据处理手段,其主要特点是其处理的数据是源源不断且实时到来的。分布式流处理是一种面向动态数据的细粒度处理模式,基于分布式内存,对不断产生的动态数据进行处理。其对数据处理的快速,高效,低延迟等特性,在大数据处理中发挥越来越重要的作用,全景实时视频因图像内容较大,计算量较多,大多采用并行多个GPU协同计算的方法进行加速,但由于全景实时视频的流量会随之变化,因此长时间让GPU全负荷运转极大了增加了视频解码拼接端的发热量,长期以往大大降低了GPU的使用寿命,因此如何在全景实时视频中解决处理流量变化带给GPU的负荷问题成为重中之重。
发明内容:
本发明的目的就在于为了解决上述问题而提供一种基于多GPU的全景实时视频流处理方法,解决了目前现有的问题。
为了解决上述问题,本发明提供了一种技术方案:
一种基于多GPU的全景实时视频流处理方法,包括以下步骤:
步骤1.将待拼接视频图像任务列表的视频在处理内存的调控下进行单个GPU的任务执行;
步骤2.系统处理器根据单个GPU流处理器数量、核心频率、显存位宽占有率分配待拼接视频图像任务;
步骤3.若待拼接视频图像任务满足单个GPU最大负载,系统则安排单个GPU进行任务分配,若待拼接视频图像任务大于单个GPU最大负载,系统则根据待拼接视频图像任务的存储大小具体分配多个GPU(GPU1......GPUn)进行工作;
步骤4.将步骤3中的经过多个GPU(GPU1......GPUn)计算后将视频汇总;
步骤5.汇总后的视频经过对应的第一存储列队(GPU1......GPUn)对应拼接存入至第二存储列队(GPU1......GPUn);
步骤6.将步骤5经过第二存储列队(GPU1......GPUn)汇总后的视频数据传输至主机接收端。
作为优选,所述步骤1中的待拼接视频图像任务列表中的视频采用多线程并行获取的方式多路获得。
作为优选,所述步骤3中需要从步骤1中调取适合任务进程的处理内存百分比进行工作。
作为优选,所述步骤2中的GPU资源调采用实时监控嵌入式微型中央处理器分布集群中的GPU使用情况并进行GPU的资源调度。
作为优选,所述步骤6中的主机接收端包括云存储服务器,将视频处理结果上传到云存储服务器进行存储。
作为优选,所述步骤1至步骤4中从待拼接视频预处理中得到的帧图像作为视频数据处理层中的分布式计算框架的输入源,将每一帧图像分别传入分布式计算框架中进行处理,利用分布式计算框架的并行能力在视频数据处理层的各个GPU中进行视频的并行处理。
作为优选,所述步骤3中实时监控分布式计算框架中各个数据处理组件的GPU使用状况,将GPU消耗过大的进程分配到有较强GPU的数据处理组件上。
本发明的有益效果:本发明采用多GPU协调工作,在微处理器的调节下实现对全景实时视频流量多GPU协调处理,在峰时和谷时实现多GPU架构并发运算,通过实时监控分布式计算框架中各个数据处理组件的GPU使用状况,在流量较高的时候采用多种强GPU复合处理,在流量较低时候采用单个或较少的GPU进行处理,解决视频处理会消耗大量空闲GPU资源的问题,实现实时效果,提高资源利用率。
附图说明:
为了易于说明,本发明由下述的具体实施及附图作以详细描述。
图1是本发明GPU的全景实时视频流处理的工艺流程图;
图2是本发明GPU的全景实时视频拼接汇总的工艺流程图。
具体实施方式:
如图1-2所示,本具体实施方式采用以下技术方案:一种基于多GPU的全景实时视频流处理方法,包括以下步骤:
步骤1.将待拼接视频图像任务列表的视频在处理内存的调控下进行单个GPU的任务执行;
步骤2.系统处理器根据单个GPU流处理器数量、核心频率、显存位宽占有率分配待拼接视频图像任务;
步骤3.若待拼接视频图像任务满足单个GPU最大负载,系统则安排单个GPU进行任务分配,若待拼接视频图像任务大于单个GPU最大负载,系统则根据待拼接视频图像任务的存储大小具体分配多个GPU(GPU1......GPUn)进行工作;
步骤4.将步骤3中的经过多个GPU(GPU1......GPUn)计算后将视频汇总;
步骤5.汇总后的视频经过对应的第一存储列队(GPU1......GPUn)对应拼接存入至第二存储列队(GPU1......GPUn),在启动第一存储列队的过程中启动与GPU数量相当的线程,每个线程分别将待拼接计算的任务传输至对应的GPU中的第一存储列队,每个线程在传输完成此批数据后会自动实施第二存储列队中下一批数据的传输;
步骤6.将步骤5经过第二存储列队(GPU1......GPUn)汇总后的视频数据传输至主机接收端。
其中,所述步骤1中的待拼接视频图像任务列表中的视频采用多线程并行获取的方式多路获得。
其中,所述步骤3中需要从步骤1中调取适合任务进程的处理内存百分比进行工作。
其中,所述步骤2中的GPU资源调采用实时监控嵌入式微型中央处理器分布集群中的GPU使用情况并进行GPU的资源调度。
其中,所述步骤6中的主机接收端包括云存储服务器,将视频处理结果上传到云存储服务器进行存储。
其中,所述步骤1至步骤4中从待拼接视频预处理中得到的帧图像作为视频数据处理层中的分布式计算框架的输入源,将每一帧图像分别传入分布式计算框架中进行处理,利用分布式计算框架的并行能力在视频数据处理层的各个GPU中进行视频的并行处理。
其中,所述步骤3中实时监控分布式计算框架中各个数据处理组件的GPU使用状况,将GPU消耗过大的进程分配到有较强GPU的数据处理组件上。
本发明的有益效果:本发明采用多GPU协调工作,在微处理器的调节下实现对全景实时视频流量多GPU协调处理,在峰时和谷时实现多GPU架构并发运算,通过实时监控分布式计算框架中各个数据处理组件的GPU使用状况,在流量较高的时候采用多种强GPU复合处理,在流量较低时候采用单个或较少的GPU进行处理,解决视频处理会消耗大量空闲GPU资源的问题,实现实时效果,提高资源利用率。
以上显示和描述了本发明的基本原理和主要特征和本发明的优点,本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内,本发明要求保护范围由所附的权利要求书及其等效物界定。

Claims (7)

1.一种基于多GPU的全景实时视频流处理方法,其特征在于,包括以下步骤:
步骤1.将待拼接视频图像任务列表的视频在处理内存的调控下进行单个GPU的任务执行;
步骤2.系统处理器根据单个GPU流处理器数量、核心频率、显存位宽占有率分配待拼接视频图像任务;
步骤3.若待拼接视频图像任务满足单个GPU最大负载,系统则安排单个GPU进行任务分配,若待拼接视频图像任务大于单个GPU最大负载,系统则根据待拼接视频图像任务的存储大小具体分配多个GPU(GPU1......GPUn)进行工作;
步骤4.将步骤3中的经过多个GPU(GPU1......GPUn)计算后将视频汇总;
步骤5.汇总后的视频经过对应的第一存储列队(GPU1......GPUn)对应拼接存入至第二存储列队(GPU1......GPUn);
步骤6.将步骤5经过第二存储列队(GPU1......GPUn)汇总后的视频数据传输至主机接收端。
2.根据权利要求1所述的一种基于多GPU的全景实时视频流处理方法,其特征在于:所述步骤1中的待拼接视频图像任务列表中的视频采用多线程并行获取的方式多路获得。
3.根据权利要求1所述的一种基于多GPU的全景实时视频流处理方法,其特征在于:所述步骤3中需要从步骤1中调取适合任务进程的处理内存百分比进行工作。
4.根据权利要求1所述的一种基于多GPU的全景实时视频流处理方法,其特征在于:所述步骤2中的GPU资源调采用实时监控嵌入式微型中央处理器分布集群中的GPU使用情况并进行GPU的资源调度。
5.根据权利要求1所述的一种基于多GPU的全景实时视频流处理方法,其特征在于:所述步骤6中的主机接收端包括云存储服务器,将视频处理结果上传到云存储服务器进行存储。
6.根据权利要求1所述的一种基于多GPU的全景实时视频流处理方法,其特征在于:所述步骤1至步骤4中从待拼接视频预处理中得到的帧图像作为视频数据处理层中的分布式计算框架的输入源,将每一帧图像分别传入分布式计算框架中进行处理,利用分布式计算框架的并行能力在视频数据处理层的各个GPU中进行视频的并行处理。
7.根据权利要求1所述的一种基于多GPU的全景实时视频流处理方法,其特征在于:所述步骤3中实时监控分布式计算框架中各个数据处理组件的GPU使用状况,将GPU消耗过大的进程分配到有较强GPU的数据处理组件上。
CN201910399059.5A 2019-05-14 2019-05-14 一种基于多gpu的全景实时视频流处理方法 Pending CN110096367A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910399059.5A CN110096367A (zh) 2019-05-14 2019-05-14 一种基于多gpu的全景实时视频流处理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910399059.5A CN110096367A (zh) 2019-05-14 2019-05-14 一种基于多gpu的全景实时视频流处理方法

Publications (1)

Publication Number Publication Date
CN110096367A true CN110096367A (zh) 2019-08-06

Family

ID=67447985

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910399059.5A Pending CN110096367A (zh) 2019-05-14 2019-05-14 一种基于多gpu的全景实时视频流处理方法

Country Status (1)

Country Link
CN (1) CN110096367A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110717853A (zh) * 2019-12-12 2020-01-21 武汉精立电子技术有限公司 一种基于嵌入式gpu的光学图像处理系统
CN112702509A (zh) * 2020-12-15 2021-04-23 杭州丽视智能科技有限公司 用于相机的全景视频生成方法、相机及存储介质
CN112738558A (zh) * 2021-01-19 2021-04-30 深圳市前海手绘科技文化有限公司 一种分布式视频合成方法与装置
CN113992493A (zh) * 2020-07-08 2022-01-28 阿里巴巴集团控股有限公司 视频处理方法、系统、设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106686352A (zh) * 2016-12-23 2017-05-17 北京大学 多gpu平台的多路视频数据的实时处理方法
CN107027042A (zh) * 2017-04-19 2017-08-08 中国电子科技集团公司电子科学研究院 一种基于多gpu的全景实时视频流处理方法及装置
CN107067365A (zh) * 2017-04-25 2017-08-18 中国石油大学(华东) 基于深度学习的分布嵌入式实时视频流处理系统及方法
CN107341057A (zh) * 2017-07-07 2017-11-10 郑州云海信息技术有限公司 一种数据处理方法及装置
CN109213601A (zh) * 2018-09-12 2019-01-15 华东师范大学 一种基于cpu-gpu的负载均衡方法及设备
CN109656691A (zh) * 2017-10-11 2019-04-19 阿里巴巴集团控股有限公司 计算资源的处理方法、装置以及电子设备

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106686352A (zh) * 2016-12-23 2017-05-17 北京大学 多gpu平台的多路视频数据的实时处理方法
CN107027042A (zh) * 2017-04-19 2017-08-08 中国电子科技集团公司电子科学研究院 一种基于多gpu的全景实时视频流处理方法及装置
CN107067365A (zh) * 2017-04-25 2017-08-18 中国石油大学(华东) 基于深度学习的分布嵌入式实时视频流处理系统及方法
CN107341057A (zh) * 2017-07-07 2017-11-10 郑州云海信息技术有限公司 一种数据处理方法及装置
CN109656691A (zh) * 2017-10-11 2019-04-19 阿里巴巴集团控股有限公司 计算资源的处理方法、装置以及电子设备
CN109213601A (zh) * 2018-09-12 2019-01-15 华东师范大学 一种基于cpu-gpu的负载均衡方法及设备

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110717853A (zh) * 2019-12-12 2020-01-21 武汉精立电子技术有限公司 一种基于嵌入式gpu的光学图像处理系统
CN113992493A (zh) * 2020-07-08 2022-01-28 阿里巴巴集团控股有限公司 视频处理方法、系统、设备及存储介质
CN112702509A (zh) * 2020-12-15 2021-04-23 杭州丽视智能科技有限公司 用于相机的全景视频生成方法、相机及存储介质
CN112738558A (zh) * 2021-01-19 2021-04-30 深圳市前海手绘科技文化有限公司 一种分布式视频合成方法与装置

Similar Documents

Publication Publication Date Title
CN110096367A (zh) 一种基于多gpu的全景实时视频流处理方法
Li et al. Cost-efficient and robust on-demand video transcoding using heterogeneous cloud services
CN107067365A (zh) 基于深度学习的分布嵌入式实时视频流处理系统及方法
CN101573690B (zh) 线程排队的方法和装置
CN102915254B (zh) 任务管理方法及装置
CN105828105A (zh) 一种基于分布式环境的视频转码系统及视频转码方法
Reddy et al. Qos-Aware Video Streaming Based Admission Control And Scheduling For Video Transcoding In Cloud Computing
CN110769278A (zh) 一种分布式视频转码方法及系统
CN103297499B (zh) 一种基于云平台的调度方法及系统
CN103927225A (zh) 一种多核心架构的互联网信息处理优化方法
CN102404615A (zh) 基于云计算的视频处理系统
CN103516807A (zh) 一种云计算平台服务器负载均衡系统及方法
CN101587583A (zh) 基于gpu集群的渲染农场
CN102981973B (zh) 在存储系统中执行请求的方法
CN102592315A (zh) 基于gpu云集群的3d渲染平台
US11132221B2 (en) Method, apparatus, and computer-readable medium for dynamic binding of tasks in a data exchange
CN106648872A (zh) 用于多线程处理的方法及装置、服务器
TWI832000B (zh) 用於神經網路之方法及系統
CN104320672A (zh) Cdn-p2p混合架构下的直播流媒体系统资源调度方法
CN102624558A (zh) 一种基于云计算技术解决通信行业网管系统性能瓶颈的方法
CN105094751A (zh) 一种用于流式数据并行处理的内存管理方法
CN110347489A (zh) 一种基于Spark的多中心数据协同计算的流处理方法
WO2016041126A1 (zh) 基于gpu的数据流处理方法和装置
US20220368946A1 (en) Heterogeneous real-time streaming and decoding of ultra-high resolution video content
CN105653347B (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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20190806