Ray Traversal Grouping for Graphics Processing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current graphics processing systems face inefficiencies in performing ray tracing due to high processing time spent on intersection testing with ray tracing acceleration data structures and high memory bandwidth requirements, particularly when loading data for multiple rays.

Innovation Solution

Implementing a method where a group of rays performs a traversal of the ray tracing acceleration data structure together, allowing multiple rays to be tested against a node in a single processing instance, reducing memory access operations and utilizing shared processing resources and local registers to manage the traversal operation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If traditional ray tracing processes test each ray individually against the acceleration data structure, then intersection testing accuracy is maintained, but processing time and memory bandwidth consumption increase significantly

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

Solution Approach 1:

The patent merges multiple individual ray traversal operations into a single collective traversal operation. Multiple rays are processed simultaneously through the acceleration data structure by sharing common processing resources and local registers, reducing redundant operations and memory access overhead while maintaining intersection testing accuracy for each ray

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The invention creates universal processing resources and local registers that can serve multiple rays simultaneously. These shared resources perform intersection testing functions for all rays in the group, eliminating the need for dedicated resources per ray and significantly reducing memory bandwidth requirements

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Reliability

If multiple rays are processed individually through the acceleration data structure, then each ray receives dedicated processing resources, but memory bandwidth requirements and processing overhead increase

Engineering Contradiction:
Improveprocessing reliabilityVSAvoidmemory bandwidth
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

Multiple ray processing operations are merged into a single collective operation that shares memory access pathways and processing resources. The acceleration data structure is traversed once for multiple rays simultaneously, reducing memory bandwidth consumption by eliminating redundant loading of acceleration structure data for each individual ray

Inventive Principle:
Principle #5Merging (Combining)

3Reliability

If separate processing resources are allocated to each ray, then processing reliability is maintained, but device complexity and resource overhead increase

Engineering Contradiction:
Improveprocessing reliabilityVSAvoidresource overhead
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements universal processing resources that can dynamically serve multiple rays through time-multiplexed or space-multiplexed operations. Local registers are shared among multiple rays during collective traversal, and processing units handle multiple rays sequentially or in parallel batches, reducing overall resource overhead while maintaining processing reliability through proper resource management

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The invention introduces dynamic resource allocation where processing resources and local registers are assigned to groups of rays based on traversal needs. Resources are dynamically shared and reallocated during the collective traversal operation, allowing the system to handle variable ray workloads efficiently without requiring static dedicated resources for each ray

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS20240362852A1Graphics processing
Publication Date: 2024.10.31 ARM LTD
  • US20240362852A1 patent drawing
  • US20240362852A1 patent drawing
  • US20240362852A1 patent drawing

AI summary

An instruction (or set of instructions) that can be included in a program to perform a ray tracing acceleration data structure traversal, with individual execution threads in a group of execution threads executing the program performing a traversal operation for a respective ray in a corresponding group of rays such that the group of rays performing the traversal operation together. The instruction(s), when executed by the execution threads in respect of a node of the ray tracing acceleration data structure, cause one or more rays from the group of plural rays that are performing the traversal operation together to be tested for intersection with the one or more volumes associated with the node being tested. A result of the ray-volume intersection testing can then be returned for the traversal operation.