Ray Tracing BVH Traversal Order for Grouped Rays

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing graphics processing systems face challenges in efficiently performing ray tracing due to its high processing intensity, particularly in handling complex scenes with millions of graphics primitives and rays, leading to inefficient memory access and computational overhead.

Innovation Solution

The use of a ray tracing acceleration data structure, such as a bounding volume hierarchy (BVH), is employed to accelerate the ray tracing process by traversing a group of rays together through the data structure, optimizing memory access and reducing computational load by testing rays against higher-level volumes before individual primitives, and determining an optimal order for visiting child nodes based on ray properties and intersections.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If traditional ray tracing is performed by testing each ray against individual graphics primitives, then accurate intersection detection is achieved, but processing time and computational load increase significantly

Engineering Contradiction:
Improveintersection detection accuracyVSAvoidprocessing time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The scene is segmented into a hierarchical structure of bounding volumes (BVH) where the entire scene is divided into multiple volume nodes at different levels. Each node represents a spatial region containing one or more graphics primitives. This segmentation allows rays to be tested against volume nodes instead of individual primitives, significantly reducing the number of intersection tests required while maintaining accurate intersection detection through the hierarchical traversal approach.

Inventive Principle:
Principle #1Segmentation

2Manufacturing precision

If ray tracing is performed with full computational accuracy for each ray-primitive intersection, then rendering quality is improved, but memory bandwidth requirements and computational overhead increase

Engineering Contradiction:
Improverendering qualityVSAvoidcomputational overhead
Core Design Contradiction:
Manufacturing precisionVSLoss of energy

Solution Approach 1:

Bounding volume hierarchy structures are pre-computed and stored before ray tracing execution. The hierarchical spatial partitioning of the scene into volume nodes is established in advance, allowing the ray tracing algorithm to efficiently traverse the pre-organized structure during rendering. This preliminary organization reduces computational overhead during actual ray tracing by eliminating the need for dynamic scene analysis.

Inventive Principle:
Principle #10Preliminary action

3Measurement precision

If individual rays are processed separately through the ray tracing algorithm, then ray-specific accuracy is maintained, but memory access efficiency decreases

Engineering Contradiction:
Improveray intersection accuracyVSAvoidmemory access efficiency
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

Multiple rays are merged into batches and processed together through the BVH traversal algorithm. The hierarchical volume structure enables efficient batch processing where groups of rays traverse the same volume nodes simultaneously, allowing for optimized memory access patterns. This merging approach maintains individual ray intersection accuracy while significantly improving memory access efficiency through shared traversal paths and reduced redundant memory operations.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS12548235B2Graphics processing
Publication Date: 2026.02.10 ARM LTD
  • US12548235B2 patent drawing
  • US12548235B2 patent drawing
  • US12548235B2 patent drawing

AI summary

Disclose herein is a method of operating a graphics processor when performing ray tracing. During a traversal of the nodes of an acceleration data structure, when a parent node that encompasses multiple child node volumes is encountered, a group of rays is tested against the child node volumes to determine which child nodes may need to be visited next. Rather than simply visiting the nodes based on the order in which they are found to be interested, the node traversal order is instead determined based on the group of rays.