Parallel Ray Tracing Data Structure Generation via Processor Partitioning

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for generating ray tracing data structures using a central processing unit (CPU) are inefficient when adapted for parallel processor architectures, such as graphics processing units (GPUs), leading to difficulties in practical implementation.

Innovation Solution

A system and method for generating a ray tracing data structure utilizing a parallel processor architecture by allocating a global set of data among multiple processors, allowing results from one processor to be processed by another, and employing a bounding volume hierarchy (BVH) data structure to facilitate parallelization and reduce synchronization issues.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If a central processing unit (CPU) is used to generate ray tracing data structures, then the generation process can be completed, but the processing efficiency and scalability are insufficient when adapted for parallel processor architectures

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidarchitecture adaptability
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent divides the global set of data into multiple partitions, with each processor in the parallel architecture responsible for generating a portion of the ray tracing data structure. This segmentation allows simultaneous processing across multiple processors, dramatically improving productivity while maintaining architectural adaptability through standardized partitioning protocols.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transitions from sequential CPU-based generation to parallel processor-based generation by adding the dimension of concurrent processing. Multiple processors operate simultaneously on different data partitions, transforming the single-threaded generation process into a multi-threaded parallel process, thereby achieving both improved efficiency and architectural adaptability.

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

2Productivity

If parallel processor architecture is used for generating ray tracing data structures, then processing efficiency improves, but synchronization issues and implementation difficulties arise

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidsynchronization stability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent performs preliminary actions by pre-defining data partitions and processor assignments before the actual generation process begins. Each processor is pre-configured with its specific data partition and generation parameters, eliminating the need for complex runtime synchronization and reducing implementation difficulties while maintaining high processing efficiency.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces an intermediary data structure format that serves as a standardized interface between parallel processors and the final ray tracing structure. This intermediary format acts as a mediator that simplifies inter-processor communication and data aggregation, thereby improving synchronization stability without compromising processing efficiency.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Ease of manufacture

If traditional data structures are used for ray tracing, then the methodology is well-established, but they do not optimize for parallel processor architectures

Engineering Contradiction:
Improvemethodology maturityVSAvoidparallel processing performance
Core Design Contradiction:
Ease of manufactureVSProductivity

Solution Approach 1:

The patent transforms the static, sequential data structure generation methodology into a dynamic, parallel process. The system adaptively distributes data partitions to processors based on available resources and dynamically aggregates results, maintaining the maturity of traditional methodologies while achieving optimal parallel processing performance through flexible, adaptive generation protocols.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS8072460B2System, method, and computer program product for generating a ray tracing data structure utilizing a parallel processor architecture
Publication Date: 2011.12.06 NVIDIA CORP
  • US8072460B2 patent drawing
  • US8072460B2 patent drawing
  • US8072460B2 patent drawing

AI summary

A system, method, and computer program product are provided for generating a ray tracing data structure utilizing a parallel processor architecture. In operation, a global set of data is received. Additionally, a data structure is generated utilizing a parallel processor architecture including a plurality of processors. Such data structure is adapted for use in performing ray tracing utilizing the parallel processor architecture, and is generated by allocating the global set of data among the processors such that results of processing of at least one of the processors is processed by another one of the processors.