K-d Tree with Variable Offset Encoding for Memory Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Tree-based acceleration structures in graphics processing have a large and unpredictable memory footprint, high computational cost, and are inefficient in handling 64-bit address spaces, which hinders performance in interactive graphics applications.

Innovation Solution

The use of a k-dimensional tree with 32-bit offsets and special 64-bit extensions allows for a compact memory layout, enabling high-speed parallel computing and efficient traversal operations, while maintaining compatibility across 32-bit and 64-bit architectures by encoding 64-bit offsets as special extensions, allowing the structure to be stored and transferred without pre-processing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If tree-based acceleration structures are used for graphics processing, then search problems can be solved more efficiently, but memory footprint becomes large and unpredictable

Engineering Contradiction:
Improvesearch efficiencyVSAvoidmemory footprint
Core Design Contradiction:
ProductivityVSVolume of stationary object

Solution Approach 1:

The patent changes the parameter representation by using variable-length encodings (16-bit, 24-bit, or 32-bit offsets) instead of fixed 64-bit pointers, and dynamically allocating memory regions to match the actual size requirements of acceleration structure nodes, thereby reducing memory footprint while maintaining search efficiency

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent segments the acceleration structure into multiple memory regions, each containing nodes with similar offset characteristics. This allows efficient packing of nodes within each region using appropriate offset sizes, reducing overall memory consumption while preserving the hierarchical tree structure needed for efficient searching

Inventive Principle:
Principle #1Segmentation

2Stability of the object's composition

If traditional tree structures are used, then hierarchical organization is achieved, but computational cost increases

Engineering Contradiction:
Improvehierarchical organizationVSAvoidcomputational cost
Core Design Contradiction:
Stability of the object's compositionVSUse of energy by moving object

Solution Approach 1:

The patent performs preliminary organization of nodes into memory regions with similar offset characteristics before traversal. This pre-arrangement reduces the computational overhead during actual traversal operations, as the hierarchical structure is already optimized for efficient memory access patterns

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent uses variable-length offset encodings that adapt to the actual memory layout, reducing the number of bits that need to be processed during traversal. This parameter optimization lowers computational cost while maintaining the hierarchical organization necessary for efficient graphics processing

Inventive Principle:
Principle #35Parameter changes

3Adaptability or versatility

If 64-bit address spaces are handled naively, then full addressability is achieved, but memory efficiency decreases

Engineering Contradiction:
Improveaddress space capabilityVSAvoidmemory efficiency
Core Design Contradiction:
Adaptability or versatilityVSVolume of stationary object

Solution Approach 1:

The patent applies different offset sizes (16-bit, 24-bit, or 32-bit) to different memory regions based on their specific requirements. This local optimization ensures that each region uses the minimum necessary address space, improving overall memory efficiency while maintaining adaptability to 64-bit address spaces when needed

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent introduces an additional dimension of organization by creating multiple memory regions, each optimized for specific offset ranges. This regional organization allows the system to handle 64-bit address spaces efficiently by only using larger offsets where necessary, rather than uniformly allocating 64 bits for all addresses

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

Data Source

PatentUS10460419B2Graphics rendering using a hierarchical acceleration structure
Publication Date: 2019.10.29 INTEL CORP
  • US10460419B2 patent drawing
  • US10460419B2 patent drawing
  • US10460419B2 patent drawing

AI summary

A hierarchical acceleration structure may be built for graphics processing using a 32 bit format. In one embodiment, the acceleration structure may be a k-d tree, but other acceleration structures may be used as well. 64 bit offsets are only used when 64 bit offsets are needed.