Parallel BVH Construction Using Alternating Node and Object Kernels

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The adaptive top-down approach for constructing bounding volume hierarchies (BVHs) is difficult to parallelize due to varying computational overhead and memory allocation challenges, making it inefficient for large-scale processing.

Innovation Solution

A technique involving alternating node and object update kernels is used to construct BVHs, where objects are assigned identifiers for child nodes based on partitions, allowing parallel processing without adapting thread or processor numbers, and objects are moved by changing node identifiers, eliminating the need for list partitioning and memory reallocation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If adaptive top-down approach is used for BVH construction, then partitioning adapts to spatial distribution of objects, but parallelization becomes difficult due to varying computational overhead

Engineering Contradiction:
Improveadaptive partitioningVSAvoidparallelization difficulty
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The BVH construction process is segmented into two independent alternating phases: node update kernel (creating partitions and child nodes) and object update kernel (assigning objects to child nodes). This segmentation allows each phase to be executed in parallel across multiple threads without the variability that plagued the traditional adaptive approach, as each phase operates on fixed data structures rather than dynamically adapting during execution.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

All node partitions and child nodes are created in advance during the node update phase before object assignment begins. This preliminary action eliminates the need for dynamic memory allocation and list partitioning during object assignment, enabling straightforward parallel execution of the object update kernel across multiple threads with consistent computational overhead.

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If adaptive top-down approach is used, then partitioning accounts for spatial distribution, but memory allocation and list partitioning overhead increases

Engineering Contradiction:
Improveadaptive partitioningVSAvoidmemory allocation overhead
Core Design Contradiction:
Adaptability or versatilityVSLoss of energy

Solution Approach 1:

Child nodes and their memory structures are pre-allocated during the node update phase before object assignment. This eliminates the need for dynamic memory allocation during the object update phase, as objects are simply assigned to pre-existing child nodes by updating identifier fields rather than creating new memory structures or partitioning lists at runtime.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

Instead of maintaining and partitioning actual object lists during the update phase, the patent uses identifier fields in objects to indicate their assigned child node. This copying approach (storing references/identifiers rather than actual data structures) eliminates the computational overhead of list partitioning while preserving the adaptive spatial distribution achieved through the node update kernel.

Inventive Principle:
Principle #26Copying

3Productivity

If varying numbers of threads are used for different BVH levels, then processing adapts to node complexity, but implementation complexity and overhead increases

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidthread management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent employs the same number of threads for both the node update kernel and object update kernel, rather than varying thread counts for different BVH levels. This universal approach simplifies thread management and implementation while maintaining high productivity, as both kernels can be executed in parallel with consistent resource allocation. The adaptive partitioning is achieved through the algorithm logic rather than thread count variation.

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

Data Source

PatentUS12602403B2Scalable parallel construction of bounding volume hierarchies
Publication Date: 2026.04.14 NVIDIA CORP
  • US12602403B2 patent drawing
  • US12602403B2 patent drawing
  • US12602403B2 patent drawing

AI summary

One embodiment of the present invention sets forth a technique for generating a bounding volume hierarchy. The technique includes determining a first set of objects associated with a first node. The technique also includes generating a first plurality of child nodes that are associated with the first node. The technique further includes for each object included in the first set of objects, storing within the object an identifier for a corresponding child node included in the first plurality of child nodes based on a first set of partitions associated with the first set of objects.