GPU Ray Bundle Differentials for Faster Ray Tracing Shaders

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing graphics processing units (GPUs) face inefficiencies in ray tracing operations due to redundant computation of differential data for adjacent pixels, leading to increased processing time and resource utilization without achieving desired frame rates or quality.

Innovation Solution

Grouping rays into bundles for shared differential data computation, allowing simultaneous shading and intersection testing, thereby reducing redundant computations and optimizing texture throughput.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If differential data is computed separately for each ray in traditional ray tracing, then computation accuracy is maintained, but processing time and resource utilization increase significantly

Engineering Contradiction:
Improvecomputation accuracyVSAvoidprocessing time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent groups multiple rays into bundles and computes differential data once per bundle rather than separately for each ray. The shader program processes a bundle of rays simultaneously, sharing common differential calculations (dx, dy) across all rays in the bundle, thereby reducing redundant computations while maintaining accuracy through proper differential propagation to individual rays.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The invention creates a universal shader program that handles multiple rays within a single execution context. This multi-functional approach allows one shader program to serve multiple rays by computing shared differential data that applies to the entire bundle, eliminating the need for separate shader executions for each ray and significantly improving processing efficiency.

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

2Productivity

If rays are processed individually in traditional rendering pipelines, then processing simplicity is maintained, but throughput and frame rates decrease

Engineering Contradiction:
ImprovethroughputVSAvoidprocessing complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

Multiple rays are merged into bundles and processed together through a single shader program execution. This combining approach increases throughput by utilizing hardware parallelism more effectively, as the GPU can process entire bundles of rays simultaneously rather than sequentially handling individual rays, thereby improving frame rates without proportionally increasing device complexity.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent introduces a new dimension of processing by organizing rays into bundles that can be handled as collective entities. This dimensional shift from individual ray processing to bundle-level processing enables more efficient utilization of GPU parallelism and memory bandwidth, achieving higher throughput while managing complexity through structured bundle organization.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Measurement precision

If redundant differential data computations are performed for adjacent pixels, then individual ray accuracy is preserved, but resource utilization increases without achieving desired frame rates

Engineering Contradiction:
Improveray differential accuracyVSAvoidresource utilization
Core Design Contradiction:
Measurement precisionVSUse of energy by moving object

Solution Approach 1:

The patent merges differential data computations across adjacent rays by processing them in bundles. Common differential calculations (such as dx and dy for texture sampling) are computed once per bundle and shared among all rays in that bundle, eliminating redundant computations while preserving the accuracy needed for individual ray rendering. This significantly reduces resource utilization including GPU cycles, memory bandwidth, and power consumption.

Inventive Principle:
Principle #5Merging (Combining)

4Manufacturing precision

If traditional ray tracing is used for high quality rendering, then image quality is improved, but frame rates and real-time performance deteriorate

Engineering Contradiction:
Improveimage qualityVSAvoidframe rate
Core Design Contradiction:
Manufacturing precisionVSProductivity

Solution Approach 1:

By bundling rays and computing differential data once per bundle, the patent maintains the high image quality characteristics of ray tracing while improving frame rates through reduced computational redundancy. The technique preserves accurate lighting and shadow calculations while achieving better real-time performance by eliminating repeated differential computations for adjacent rays.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent changes the processing parameter from individual ray handling to bundle-level processing. This parameter change enables more efficient utilization of GPU resources and memory bandwidth, allowing high-quality ray tracing to achieve higher frame rates by processing multiple rays through a single shader execution rather than requiring separate executions for each ray.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS20260038188A1Methods and Graphics Processing Units for Determining Differential Data for Rays of a Ray Bundle
Publication Date: 2026.02.05 IMAGINATION TECH LTD
  • US20260038188A1 patent drawing
  • US20260038188A1 patent drawing
  • US20260038188A1 patent drawing

AI summary

A graphics processing system is configured to perform ray tracing. Rays are bundled together and processed together into a ray bundle using a programmable chip. Intersection testing is performed on the rays of the ray bundle in the scene using fixed function hardware. Results of the intersection testing are used to determine whether the rays are to be maintained in the ray bundle. Shader programs are executed on the rays in the ray bundle by determining differential data for a particular ray of the ray bundle using data for another ray of the ray bundle.