Ray Path Tracking Buffers for Multi-Level BVH Transforms

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In hardware-accelerated ray tracing, inefficient copying of ray paths occurs due to multiple intersections with primitives, leading to potential overwriting of previous paths and inefficient memory usage.

Innovation Solution

Implementing at least two buffers in memory to store pointers for traversal paths, along with candidate and committed trail information, allowing path reconstruction without memory copy operations, even for multi-level instancing scenarios.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If multiple memory copy operations are performed to track ray paths after each primitive intersection, then the ray path tracking is maintained, but power consumption increases and performance decreases

Engineering Contradiction:
Improveray path tracking accuracyVSAvoidpower consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent divides the ray path tracking into two distinct buffers: a candidate trail buffer for storing potential paths and a committed trail buffer for storing finalized paths. This segmentation allows the system to maintain multiple possible ray paths simultaneously without continuously copying data between memory locations, thereby reducing power consumption while ensuring accurate path tracking.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary mechanism (the dual-buffer system with trail information) that mediates between ray intersection detection and path commitment. Instead of immediately copying paths to final storage after each intersection, the system uses the candidate buffer as an intermediary, allowing deferred commitment and reducing the frequency of memory copy operations.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If memory copy operations are performed after each primitive intersection, then the ray path is updated, but memory access time increases

Engineering Contradiction:
Improvepath update accuracyVSAvoidmemory access time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent performs preliminary actions by pre-allocating and initializing the dual-buffer structure before ray tracing begins. The candidate and committed buffers are prepared in advance, allowing the system to switch between them efficiently during ray traversal without performing setup operations or memory allocations during the actual tracing process.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent maintains continuous tracking of ray paths by keeping both candidate and committed trails active simultaneously in separate buffers. This continuity allows the system to accumulate multiple potential paths without interruption and commit them in batches, eliminating the stop-start nature of repeated memory copy operations and reducing overall memory access time.

Inventive Principle:
Principle #20Continuity of useful action

3Quantity of substance

If a single buffer is used to store ray paths, then memory usage is minimized, but previous paths may be overwritten

Engineering Contradiction:
Improvememory usageVSAvoidpath preservation
Core Design Contradiction:
Quantity of substanceVSReliability

Solution Approach 1:

The patent segments the single buffer into two separate buffers: a candidate trail buffer and a committed trail buffer. This segmentation allows the system to store multiple ray paths simultaneously without overwriting, as each buffer serves a distinct purpose in the path tracking workflow. The segmentation maintains path preservation while keeping memory usage efficient.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces dynamic switching between candidate and committed buffers based on the state of ray traversal. When a ray intersects a primitive, the system dynamically transitions paths from the candidate buffer to the committed buffer, allowing flexible management of multiple paths without requiring a large static buffer allocation. This dynamic approach preserves all paths while adapting memory usage to actual needs.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS20250363715A1Path Tracking for Hardware-Accelerated Ray Transforms
Publication Date: 2025.11.27 APPLE INC
  • US20250363715A1 patent drawing
  • US20250363715A1 patent drawing
  • US20250363715A1 patent drawing

AI summary

Techniques are disclosed relating to ray tracing, particularly for path tracking through a bounding volume hierarchy, according to some embodiments. In some embodiments, ray intersection accelerator circuitry traverses a bounding volume hierarchy that includes transform nodes at multiple levels. Ray transform accelerator circuitry may transform ray information based on reaching a given transform node during the traversal. Path tracking hardware may determine a list of pointers to transform nodes in a traversal path taken to reach a first primitive. This may include utilizing at least two buffer circuits to store pointers for a candidate list and a committed list, storing candidate trail information that indicates, for a given position in the candidate list, which buffer stores a corresponding pointer, and storing committed trail information that indicates, for a given position in the committed list, which buffer stores a corresponding pointer.