【技术实现步骤摘要】
经由掩膜累积提高分层深度缓冲器剔除效率
技术介绍
本领域中已知的图形处理器通常包含深度流水线(depthpipeline),该深度流水线能够实现在渲染期间对图元进行深度测试,以使被其他图元遮蔽(occlude)的图元能够被丢弃。除了常规的每像素深度缓冲器测试(per-pixeldepthbuffertesting)外,图形处理单元(GPU)还可在执行像素或片段着色器操作之前进行粗略深度测试。可使用与每像素深度缓冲器分开的压缩的深度缓冲器(例如,Hi-Z缓冲器)来执行该深度测试。该Hi-Z缓冲器可存储覆盖每像素深度缓冲器的矩形部分(例如,贴片(tile))的最小/最大范围。对于每个传入源,针对深度测试,计算最小值和最大值以与目的地值进行比较,并且如果源通过深度测试,则如果源完全覆盖目的地,可将新目的地设置成源值。然而,即使目的地的单个像素未被覆盖,也会保留旧的目的地最大和最小深度值。因此,如果工作负载具有不跨越(span)整个贴片的大量的小图元,则可能会出现最小/最大范围的稳定加宽,这可能导致剔除效率(cullingefficiency)的降低。附图说明为了可详细地理解本实施例的上述特征的方式,可通过参考实施例来得到对上文简要概述的实施例的更特定描述,所述实施例中的一些在附图中示出。然而,要注意,附图仅示出了典型的实施例,并且因此不应被认为是对其范围的限制。图1是根据实施例的处理系统的框图;图2A-2D示出了由本文中描述的实施例提供的计算系统和图形处理器;图3A-3C示出了由本文中描述的实施例提供的附 ...
【技术保护点】
1.一种图形处理器,包括:/n图形处理器流水线,所述图形处理器流水线包含深度流水线,其中所述深度流水线包含:/n高速缓存,所述高速缓存用于存储粗略深度数据;/n历史缓冲器,所述历史缓冲器用于存储为与所述粗略深度数据相关联的目的地像素贴片处理的多个片段的深度参数;以及/n一个或多个硬件逻辑单元,所述一个或多个硬件逻辑单元用于:/n对所述历史缓冲器中的条目的元素和相对于所述目的地像素贴片从输入片段的粗略深度测试输出的深度参数集合中的元素进行求和,求和的元素包含求和的源覆盖掩膜;/n确定所述求和的源覆盖掩膜是否指示所述目的地像素贴片的完全覆盖;以及/n响应于确定所述求和的源覆盖掩膜指示所述目的地像素贴片的完全覆盖,将所述目的地像素贴片的目的地远深度值设置成所述求和的元素内的源远深度值。/n
【技术特征摘要】
20191209 US 16/7071621.一种图形处理器,包括:
图形处理器流水线,所述图形处理器流水线包含深度流水线,其中所述深度流水线包含:
高速缓存,所述高速缓存用于存储粗略深度数据;
历史缓冲器,所述历史缓冲器用于存储为与所述粗略深度数据相关联的目的地像素贴片处理的多个片段的深度参数;以及
一个或多个硬件逻辑单元,所述一个或多个硬件逻辑单元用于:
对所述历史缓冲器中的条目的元素和相对于所述目的地像素贴片从输入片段的粗略深度测试输出的深度参数集合中的元素进行求和,求和的元素包含求和的源覆盖掩膜;
确定所述求和的源覆盖掩膜是否指示所述目的地像素贴片的完全覆盖;以及
响应于确定所述求和的源覆盖掩膜指示所述目的地像素贴片的完全覆盖,将所述目的地像素贴片的目的地远深度值设置成所述求和的元素内的源远深度值。
2.如权利要求1所述的图形处理器,其中所述求和的元素包含与所述输入片段相关联的源远深度值和与所述历史缓冲器中的所述条目相关联的源远深度值。
3.如权利要求2所述的图形处理器,所述一个或多个硬件逻辑单元用于将所述目的地远深度值设置成所述求和的元素中最保守的源远深度值。
4.如权利要求3所述的图形处理器,所述一个或多个硬件逻辑单元用于将所述目的地远深度值写入到所述高速缓存,所述目的地远深度值与所述目的地像素贴片相关联。
5.如权利要求4所述的图形处理器,所述一个或多个硬件逻辑单元用于:响应于确定所述求和的源覆盖掩膜指示所述目的地像素贴片的部分覆盖,将所述求和的元素中的所述最保守的源远深度值写入到所述历史缓冲器中的所述条目。
6.如权利要求1所述的图形处理器,所述一个或多个硬件逻辑单元用于:相对于所述目的地像素贴片执行所述输入片段的所述粗略深度测试并且基于所述粗略深度测试生成所述深度参数集合,其中所述深度参数集合包含深度测试结果、源远深度值、目的地远深度值和源覆盖掩膜。
7.如权利要求6所述的图形处理器,在生成所述深度参数集合之前,所述一个或多个硬件逻辑单元用于请求所述历史缓冲器中的所述条目的读取,其中所述历史缓冲器中的所述条目是与所述目的地像素贴片相关联的最年轻存储的条目。
8.如权利要求7所述的图形处理器,其中所述求和的源覆盖掩膜是所述输入片段的源覆盖掩膜和存储在所述历史缓冲器中的所述条目中的源覆盖掩膜的组合。
9.如权利要求1-8中的任一项所述的图形处理器,附加地包括多个处理引擎贴片,其中所述多个处理引擎贴片中的一个或多个包含所述图形处理器流水线。
10.一种提高分层深度缓冲器剔除效率的方法,所述方法包括:
在包含深度流水线的图形处理器上:
针对目的地像素贴片对源片段执行粗略深度测试,以生成深度参数集合;
读取历史缓冲器条目,所述历史缓冲器条目包含为所述目的地像素贴片处理的先前源片段存储的深度参数;
对所述历史缓冲器条目的元素和所述深度参数集合中的对应元素进行求和,求和的元素包含求和的源覆盖掩膜;
确定所述求和的源覆盖掩膜是否指示所述目的地像素贴片的完全覆盖;以及
响应于确定所述求和的源覆盖掩...
【专利技术属性】
技术研发人员:S·曼达尔,V·兰加纳坦,
申请(专利权)人:英特尔公司,
类型:发明
国别省市:美国;US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。