用于硬件加速GPU光线追踪的压缩Thit堆栈的制作方法
- 国知局
- 2024-09-11 14:37:49
本公开一般涉及处理系统,并且更具体地,涉及用于图形处理的一种或多种技术。
背景技术:
1、计算设备通常执行图形和/或显示处理(例如,利用图形处理单元(gpu)、中央处理单元(cpu)、显示处理器等)来渲染和显示视觉内容。这样的计算设备可以包括例如计算机工作站、诸如智能电话之类的移动电话、嵌入式系统、个人计算机、平板计算机和视频游戏终端。gpu被配置为执行包括一个或多个处理阶段的图形处理管线,这些处理阶段一起操作以执行图形处理命令并输出帧。中央处理单元(cpu)可以通过向gpu发出一个或多个图形处理命令来控制gpu的操作。现代cpu通常能够并发地执行多个应用,每个应用都可能需要在执行期间利用gpu。显示处理器被配置为将从cpu接收的数字信息转换成模拟值并且可以向显示面板发出命令以显示视觉内容。提供内容以在显示器上进行视觉呈现的设备可以利用gpu和/或显示处理器。
2、设备的gpu可以被配置为执行图形处理管线中的过程。此外,显示处理器或显示处理单元(dpu)可以被配置为执行显示处理的过程。然而,随着无线通信和更小的手持设备的出现,对改进图形或显示处理的需求越来越大。
技术实现思路
1、下面给出了一个或多个方面的简化概述,以便提供对这些方面的基本理解。该概述不是对所有预期方面的广泛概述,并且既不旨在识别所有方面的关键或重要要素,也不旨在描述任何或所有方面的范围。其唯一目的是以简化的形式呈现一个或多个方面的一些概念,作为稍后呈现的更详细描述的前奏。
2、在本公开的一个方面,提供了一种方法、一种计算机可读介质和一种装置。该装置可以是图形处理单元(gpu)、中央处理单元(cpu)或任何可以执行图形处理的装置。该装置可以配置包括多个节点的包围体积层级(bounding volume hierarchy,bvh)结构,bvh结构与场景中多个图元的几何数据相关联,多个节点中的每个节点与多个图元中的一个或多个图元相关联,多个节点中的每个节点与节点标识符(id)相关联。该装置还可以检测多个节点中的当前节点的命中子节点集合,命中子节点集合中的每个命中子节点与来自用于当前节点的光线追踪过程的当前光线相交,命中子节点集合中的每个命中子节点包括节点id和参数距离值。另外,该装置可以基于命中子节点集合中的每个命中子节点的参数距离值对命中子节点集合进行排序。该装置还可以识别命中子节点集合中具有最短参数距离值的命中子节点。该装置还可以基于对具有最短参数距离值的命中子节点的标识,将来自命中子节点集合的具有最短参数距离值的命中子节点排除。此外,该装置可以基于排序后的命中子节点集合为更新的命中子节点集合中的每个命中子节点压缩节点id和参数距离值,更新的命中子节点集合将命中子节点集合中具有最短参数距离值的命中子节点排除。该装置还可以为更新的命中子节点集合中的每个命中子节点存储压缩节点id(compressed nodeid)和压缩的参数距离值。进一步地,在存储了更新的命中子节点集合中的每个命中子节点的压缩节点id和压缩的参数距离值之后,该装置可以取回更新的命中子节点集合中的每个命中子节点的压缩节点id和压缩的参数距离值。
3、本公开的一个或多个示例的细节在附图和下面的描述中阐述。本公开的其他特征、目的和优点将从描述和附图以及权利要求中显而易见。
技术特征:1.一种用于图形处理的装置,包括:
2.如权利要求1所述的装置,其中,对所述更新的命中子节点集合中的每个命中子节点的参数距离值的压缩减少了表示所述更新的命中子节点集合中的每个命中子节点的参数距离值的浮点位的量。
3.如权利要求2所述的装置,其中,对所述更新的命中子节点集合中的每个命中子节点的参数距离值的压缩丢弃与表示所述更新的命中子节点集合中的每个命中子节点的参数距离值的浮点位的量相关联的符号位。
4.如权利要求1所述的装置,其中,所述至少一个处理器还被配置为:
5.如权利要求4所述的装置,其中,所述至少一个处理器还被配置为:
6.如权利要求1所述的装置,其中,所述命中子节点集合中的每个命中子节点的参数距离值是thit值。
7.如权利要求1所述的装置,其中,所述命中子节点集合按照所述命中子节点集合中的每个命中子节点的参数距离值的升序或者所述命中子节点集合中的每个命中子节点的参数距离值的降序排序。
8.如权利要求1所述的装置,其中,所述更新的命中子节点集合中的每个命中子节点的节点id和参数距离值被压缩为非整数数量的字节的大小。
9.如权利要求1所述的装置,其中,所述至少一个处理器还被配置为:
10.如权利要求9所述的装置,其中,为了取回所述更新的命中子节点集合中的每个命中子节点的压缩节点id和压缩的参数距离值,所述至少一个处理器被配置为:解压缩所述更新的命中子节点集合中的每个命中子节点的节点id和参数距离值。
11.如权利要求1所述的装置,其中,所述更新的命中子节点集合中的每个命中子节点的压缩节点id和压缩的参数距离值被存储为堆栈中的堆栈条目。
12.如权利要求11所述的装置,其中,所述堆栈位于以下各项中的至少一项中:片上存储器、系统存储器、图形存储器(gmem)、或图形处理单元(gpu)上的寄存器文件。
13.如权利要求1所述的装置,其中,所述当前节点的所述命中子节点集合由图形处理单元(gpu)中的光线追踪单元(rtu)检测。
14.如权利要求1所述的装置,其中,所述更新的命中子节点集合中的每个命中子节点的压缩的参数距离值被存储为非八(8)的倍数的多个字节。
15.如权利要求1所述的装置,其中,所述命中子节点集合中的每个命中子节点的节点id基于所述当前节点的节点id。
16.如权利要求1所述的装置,其中,所述当前节点的光线追踪过程包括多条光线,其中,所述当前光线被包括在所述多条光线中。
17.如权利要求1所述的装置,其中,所述bvh结构包括多个级别,使得所述多个级别中的每个级别包括所述多个节点中的至少一个节点。
18.如权利要求1所述的装置,其中,所述装置是无线通信设备,其还包括耦合到所述至少一个处理器的天线或收发器中的至少一者。
19.一种图形处理的方法,包括:
20.如权利要求19所述的方法,其中,对所述更新的命中子节点集合中的每个命中子节点的参数距离值的压缩减少了表示所述更新的命中子节点集合中的每个命中子节点的参数距离值的浮点位的量,
21.如权利要求19所述的方法,还包括:
22.如权利要求19所述的方法,其中,所述命中子节点集合中的每个命中子节点的参数距离值是thit值。
23.如权利要求19所述的方法,其中,所述命中子节点集合按照所述命中子节点集合中的每个命中子节点的参数距离值的升序或者所述命中子节点集合中每个命中子节点的参数距离值的降序排序。
24.如权利要求19所述的方法,其中,所述更新的命中子节点集合中的每个命中子节点的节点id和参数距离值被压缩为非整数数量的字节的大小。
25.如权利要求19所述的方法,还包括:
26.如权利要求25所述的方法,其中,取回所述更新的命中子节点集合中的每个命中子节点的压缩节点id和压缩的参数距离值还包括:解压缩所述更新的命中子节点集合中的每个命中子节点的节点id和参数距离值。
27.如权利要求19所述的方法,其中,所述更新的命中子节点集合中的每个命中子节点的压缩节点id和压缩的参数距离值被存储为堆栈中的堆栈条目,其中,所述堆栈位于以下各项中的至少一项中:片上存储器、系统存储器、图形存储器(gmem)、或图形处理单元(gpu)上的寄存器文件。
28.如权利要求19所述的方法,其中,以下各项中的至少一项成立:所述当前节点的所述命中子节点集合由图形处理单元(gpu)中的光线追踪单元(rtu)检测;所述更新的命中子节点集合中的每个命中子节点的压缩的参数距离值被存储为非八(8)的倍数的多个字节;所述命中子节点集合中的每个命中子节点的节点id基于所述当前节点的节点id;所述当前节点的光线追踪过程包括多条光线,并且所述当前光线被包括在所述多条光线中;或者所述bvh结构包括多个级别,使得所述多个级别中的每个级别包括所述多个节点中的至少一个节点。
29.一种用于图形处理的装置,包括:
30.一种存储用于图形处理的计算机可执行代码的非暂时性计算机可读介质,所述代码在由处理器执行时使所述处理器:
技术总结本文呈现的方面涉及用于图形处理的方法和设备,包括装置,例如GPU或CPU。该装置可以配置包括多个节点的BVH结构,该BVH结构与场景中多个图元的几何数据相关联。该装置还可以检测多个节点中的当前节点的命中子节点集合。此外,该装置可以基于命中子节点集合中的每个命中子节点的参数距离值对命中子节点集合进行排序。该装置还可以基于已排序的命中子节点集合,压缩更新的命中子节点集合中的每个命中子节点的节点ID和参数距离值。该装置还可以存储更新的命中子节点集合中的每个命中子节点的压缩节点ID和压缩的参数距离值。技术研发人员:D·K·麦卡利斯特,F·M·R·德穆兰受保护的技术使用者:高通股份有限公司技术研发日:技术公布日:2024/9/9本文地址:https://www.jishuxx.com/zhuanli/20240911/291646.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。