level 8
米线山️之父
楼主
首先叠个甲,本人对计算机图形学方面可以说是才疏学浅,如果有任何问题,希望大佬们可以海涵。
那么今晚聊什么?聊硬件光追(Hardware Ray Tracing),硬件光追我就不用多说了吧,相信大家都懂,我们具体说说RT的实现。我记得应该是21年那阵,IMG CXT在发布的时候提出了一个很新颖的观点,那就是RTLS(RT LEVELS)从0到5一共6级,如图所示,当时只有桌面端的NVIDIA和AMD才支持比较初级的达到2和3级的光追(NVIDIA好歹有硬件BVH,算3级,AMD没有,只算2级),而移动端没人支持硬件光追,基本都是1级的软件光追,而这时候,IMG推出的CXT直接支持了4级的光追,其不仅拥有硬件BVH,还能够用其处理相干性分类。可惜理想是美好的,现实是残酷的,没有人用。(虽然Tensor G5用了DXT,但是也没装RT Core啊,只有可怜的RT 0.5……,Tensor G6更幽默,退回了CXTP,虽然我并不清楚哪来的CXTP,我只知道有DXTP),很快到了下一年,NVIDIA的Ada Lovelace升级了RT-Core,加入了Shader Execution Reordering(SER),可以动态组织、重排 shading workload。很显然,在22年,NVIDIA首先支持了4级的RT,隔壁AMD的RDNA3却依旧只支持2级的RT(RDNA2/3的描述是shader-based traversal and intersection accelerator。这说明遍历主体仍偏 shader-side,硬件更像 intersection accelerator,所以是2级)到了RDNA4才有了硬件BVH(BVH8、hardware instance transform、ray hardware stack management acceleration这类更强的 RT 专项硬件特征),达到了3级。intel Arc/Xe-HPG相当激进,RTU带有硬件BVH,且拥有TSU (thread sorting unit),能sort and re-emit shader threads to maximize SIMD coherence,还会把 individual rayscoalesce into coherent SIMD groups,是标准的4级光追实现,后来的Xe2/Battlemage也延续了这个设计。
看完了桌面端我们再看看移动端,同样在22年,Adreno 740带来了1536ALU的大规模和以及首批在移动端实现了硬件光追的GPU,其拥有硬件BVH,但并未做到处理相干性分类所以只有3级,并且这个RTU的特性一直延续至今,所以Adreno一直是3级,作为安卓GPU的另一家,ARM Mali同样在22年推出了Immortalis G715从而也在本年度支持了RT,并且Arm 开发者材料直接说“Ray traversal is handled on a per-warp basis”,并且专门讨论acceleration structure拓扑如何影响要遍历的节点数量。这明显超过“只有 ray-box / ray-triangle tester”的 2 级,而属于公开可证实的硬件 BVH / traversal 处理能力,所以我给RTLS 3。ARM同样以RTLS 3延续至今。
22年各家都拿出了自己的RT技术,无论是2级也好,4级也罢,至少也拿出来了。

2026年04月06日 23点04分
1
那么今晚聊什么?聊硬件光追(Hardware Ray Tracing),硬件光追我就不用多说了吧,相信大家都懂,我们具体说说RT的实现。我记得应该是21年那阵,IMG CXT在发布的时候提出了一个很新颖的观点,那就是RTLS(RT LEVELS)从0到5一共6级,如图所示,当时只有桌面端的NVIDIA和AMD才支持比较初级的达到2和3级的光追(NVIDIA好歹有硬件BVH,算3级,AMD没有,只算2级),而移动端没人支持硬件光追,基本都是1级的软件光追,而这时候,IMG推出的CXT直接支持了4级的光追,其不仅拥有硬件BVH,还能够用其处理相干性分类。可惜理想是美好的,现实是残酷的,没有人用。(虽然Tensor G5用了DXT,但是也没装RT Core啊,只有可怜的RT 0.5……,Tensor G6更幽默,退回了CXTP,虽然我并不清楚哪来的CXTP,我只知道有DXTP),很快到了下一年,NVIDIA的Ada Lovelace升级了RT-Core,加入了Shader Execution Reordering(SER),可以动态组织、重排 shading workload。很显然,在22年,NVIDIA首先支持了4级的RT,隔壁AMD的RDNA3却依旧只支持2级的RT(RDNA2/3的描述是shader-based traversal and intersection accelerator。这说明遍历主体仍偏 shader-side,硬件更像 intersection accelerator,所以是2级)到了RDNA4才有了硬件BVH(BVH8、hardware instance transform、ray hardware stack management acceleration这类更强的 RT 专项硬件特征),达到了3级。intel Arc/Xe-HPG相当激进,RTU带有硬件BVH,且拥有TSU (thread sorting unit),能sort and re-emit shader threads to maximize SIMD coherence,还会把 individual rayscoalesce into coherent SIMD groups,是标准的4级光追实现,后来的Xe2/Battlemage也延续了这个设计。
看完了桌面端我们再看看移动端,同样在22年,Adreno 740带来了1536ALU的大规模和以及首批在移动端实现了硬件光追的GPU,其拥有硬件BVH,但并未做到处理相干性分类所以只有3级,并且这个RTU的特性一直延续至今,所以Adreno一直是3级,作为安卓GPU的另一家,ARM Mali同样在22年推出了Immortalis G715从而也在本年度支持了RT,并且Arm 开发者材料直接说“Ray traversal is handled on a per-warp basis”,并且专门讨论acceleration structure拓扑如何影响要遍历的节点数量。这明显超过“只有 ray-box / ray-triangle tester”的 2 级,而属于公开可证实的硬件 BVH / traversal 处理能力,所以我给RTLS 3。ARM同样以RTLS 3延续至今。
22年各家都拿出了自己的RT技术,无论是2级也好,4级也罢,至少也拿出来了。

