Hardware Traversal Coprocessor for Out-of-Order Ray Intersection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing computer graphics technologies struggle to perform real-time ray tracing due to the high computational complexity involved in tracing millions of light rays and analyzing their intersections with scene objects.

Innovation Solution

A hardware-based traversal coprocessor is introduced to accelerate ray tracing by performing ray-bounding volume intersection tests, ray-primitive intersection tests, and instance transforms, utilizing a bounding volume hierarchy (BVH) acceleration data structure to efficiently traverse the scene geometry.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If software-based ray tracing is used, then computational flexibility is maintained, but processing speed is too slow for real-time rendering

Engineering Contradiction:
Improveray tracing processing speedVSAvoidhardware complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The patent segments the ray tracing pipeline into distinct functional units: a traversal coprocessor for navigating the BVH acceleration structure, intersection processors for computing ray-primitive intersections, and a shader system for final pixel rendering. This segmentation allows each component to be optimized independently for its specific function while working in parallel, achieving real-time performance without requiring a completely complex monolithic hardware design.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a traversal coprocessor as an intermediary component that specializes in navigating the BVH acceleration structure. This coprocessor acts as a mediator between the ray generation stage and the intersection testing stage, efficiently organizing and delivering primitive ranges to the intersection processors. This intermediary layer simplifies the overall system architecture by handling the complex BVH traversal logic in a dedicated unit rather than distributing it across all processing elements.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If all primitive ranges are processed in memory order, then deterministic results are achieved, but processing time increases due to waiting for memory retrieval

Engineering Contradiction:
Improvedeterministic intersection resultsVSAvoidprocessing wait time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by having the traversal coprocessor sort and organize primitive ranges into memory order before they are processed by the intersection processors. This pre-sorting ensures that when primitives are retrieved from memory, they are already in the correct sequential order, eliminating the need to wait for memory retrieval while maintaining deterministic results. The traversal coprocessor performs this organizational task in advance, allowing the rendering pipeline to proceed without stalls.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If out-of-order memory retrieval is handled by sorting all primitives, then correctness is maintained, but processing efficiency decreases

Engineering Contradiction:
Improveintersection result correctnessVSAvoidrendering throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies partial action by having the traversal coprocessor sort only the necessary primitive ranges that are currently needed for processing, rather than sorting all primitives in the scene. The system processes primitives in batches, sorting only the subset that is ready for intersection testing at each stage. This partial sorting approach maintains result correctness while avoiding the excessive computational overhead of sorting the entire primitive set, thereby preserving rendering throughput.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS20250104334A1Method for handling of out-of-order opaque and alpha ray/primitive intersections
Publication Date: 2025.03.27 NVIDIA CORP
  • US20250104334A1 patent drawing
  • US20250104334A1 patent drawing
  • US20250104334A1 patent drawing

AI summary

A hardware-based traversal coprocessor provides acceleration of tree traversal operations searching for intersections between primitives represented in a tree data structure and a ray. The primitives may include opaque and alpha triangles used in generating a virtual scene. The hardware-based traversal coprocessor is configured to determine primitives intersected by the ray, and return intersection information to a streaming multiprocessor for further processing. The hardware-based traversal coprocessor is configured to provide a deterministic result of intersected triangles regardless of the order that the memory subsystem returns triangle range blocks for processing, while opportunistically eliminating alpha intersections that lie further along the length of the ray than closer opaque intersections.