[发明专利]用于基于GPU的解块的高并行依赖性模式在审
申请号: | 201580061427.5 | 申请日: | 2015-11-02 |
公开(公告)号: | CN107113439A | 公开(公告)日: | 2017-08-29 |
发明(设计)人: | H.吴;J.A.古尔德 | 申请(专利权)人: | 英特尔公司 |
主分类号: | H04N19/436 | 分类号: | H04N19/436;H04N19/86 |
代理公司: | 中国专利代理(香港)有限公司72001 | 代理人: | 姜冰,付曼 |
地址: | 美国加利*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 基于 gpu 并行 依赖性 模式 | ||
背景技术
VP9是Google所提出的领先视频压缩标准,其在互联网媒体应用(包括流播视频和视频会议)上经历着日益增长的普及。VP9致力于64×64像素的超级块。VP9的解块模块通过首先对垂直边缘并且其次对水平边缘进行滤波(filtering),来减少超级块上的块状伪像。
VP9的解块模块因其对近邻结果的高依赖性而在传统软件实现中消耗计算成本的大部分。更具体来说,线程在能够使用由那些邻近线程进行的执行的结果来完成执行之前需要等待邻近块的线程的执行。采用传统图形处理单元(GPU)实现,计算并行效率由于VP9解块模块的新空间依赖性模式而是非常差的。
附图说明
关于下列的图来描述一些实施例:
图1示出按照一个实施例的波前26依赖性;
图2示出按照一个实施例的超级块的解块边缘及其最靠近的近邻;
图3示出按照一个实施例的用于各边缘的依赖性模式;
图4示出按照一个实施例、分裂成128个较小线程的64×64像素超级块;
图5示出用于一个实施例的七个依赖性候选;
图6示出按照一个实施例、具有变换单元(TU)大小信息的依赖性插图;
图7是用于一个实施例的流程图;
图8是用于一个实施例的示意绘图;以及图9是按照一个实施例的系统的前视图。
具体实施方式
线程依赖性方案可显著减少依赖性负担(penalty),并且在一些实施例中改进具有相对高依赖性的视频压缩技术(诸如VP9)中的并行效率。这种方法可作为图形处理单元(GPU)软件解决方案或者固定功能硬件解决方案(作为两个实施例)来应用。
单独大内核程序(kernel)可分裂成多个不太相依赖的较小内核程序,由此显著提高了能够潜在并行运行的软件线程的数量。另一个特征是定义具有特定线程的空间位置和相关联的上下文的较大数量的线程依赖性(用于各线程的所有依赖性候选的超集),并且掩蔽一些不必要的线程依赖性。
采用更复杂的依赖性模式,在传统GPU软件实现中,各线程处理较大(例如,64×64)像素块数据区域,并且在一个内核程序中操纵垂直和水平边缘解块二者。在64×64像素块上不可能将垂直边缘和水平边缘解块分离,因为它们相互依赖。各内核程序具有左、左顶部、顶部和右顶部空间结果依赖性。
对于全高清晰度(1920×1080)分辨率图片,峰值并行线程数量沿对角线仅为15个。这个数量比普及的GPU系统上可用的硬件线程的最大数量要小许多。考虑到对于实际系统需要斜升(ramp up)和冷却阶段,平均并行线程数量比峰值数量要小许多。因此,执行单元(EU)的实际使用对于VP9解块模块是非常差的。
在以下论述中,提供使用VP9的示例,但是原理也应用于具有从使用相对较大的块大小而产生的相对复杂的依赖性模式的任何解块模块。
为了解决这些问题,64×64像素数据区域可分裂为许多较小线程(即,对于总共128个线程,为64个垂直边缘解块线程和64个水平边缘解块线程)。与传统VP9的4个依赖性方向(左、左顶部、顶部、右顶部)相比,这种方式将总依赖性候选的方向从4个提高到7个。虽然依赖性方向的总数量为7,但是采用特定线程的上下文,人员能够进一步掩蔽一些依赖性,使得在一些实施例中对于特定线程需要7个依赖性中的仅仅3个。
媒体管线可使用记分板技术来增强线程依赖性。各线程在线程空间内具有关联(X, Y)坐标。各线程可具有多达八个依赖性。依赖性关系通过记分板中的相对距离(ΔX, ΔY)来描述。波前26-度依赖性是一示例。这个模式具有按照(ΔX, ΔY)的四个依赖性(-1,0) (-1 ,-1) (0,-1)和(1 ,-1)。各线程与在其正左方、左上方、正上方和右上方的线程具有依赖性。这导致能够同时运行的线程波。
图1示出这个26-度依赖性,其中方框是线程,且数字表示线程执行顺序。波前26-度产生于跨图1中所示的能够并行运行的线程集合的网格的角度。图1示出线程执行顺序,其中数字表示线程执行顺序,各框表示线程。图1中仅示出128个线程的48个。因此,在左上角标记为1的方框表示首先执行的线程,然后在右边的方框2执行,然后标记为3的方框能够执行(并行地,一次两个地)。
在26-度波前依赖性模式中,线程可依赖于在其左上方、正上方、右上方和其正左方的线程。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于英特尔公司,未经英特尔公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201580061427.5/2.html,转载请声明来源钻瓜专利网。