Compressed Bounding Volume Hierarchy for Ray Tracing Memory Bandwidth
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The substantial memory requirements of bounding volume hierarchies (BVH) in ray tracing lead to memory bandwidth pressure, making it challenging to efficiently perform hardware-accelerated ray tracing due to the need for storing and transferring large BVH data.
Innovation Solution
The proposed solution involves compressing BVH nodes individually without requiring a reference to the parent node or extra stack storage, allowing for reduced memory and bandwidth usage by storing a single higher accuracy parent bounding box and lower accuracy child bounding boxes relative to the parent, enabling efficient ray-node intersection testing.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If bounding volume hierarchies are stored in uncompressed format, then intersection testing accuracy is maintained, but memory storage and bandwidth requirements increase substantially
Solution Approach 1:
The BVH node data is segmented into multiple components: quantized child bounding box data (stored in compressed form) and differential parent bounding box data (stored separately). This segmentation allows different precision levels for different parts of the data structure, reducing overall memory requirements while maintaining necessary accuracy for intersection testing.
Solution Approach 2:
The patent applies quantization to transform floating-point bounding box parameters into lower-precision integer representations. By changing the parameter precision from full floating-point to quantized integers, the memory storage requirements are substantially reduced while the differential parent data compensates for precision loss in intersection tests.
2Quantity of substance
If compressed BVH nodes are used, then memory bandwidth pressure is reduced, but arithmetic precision in ray-node intersection testing decreases
Solution Approach 1:
Different precision levels are applied locally to different data elements. Child bounding boxes use lower-precision quantized integers for memory efficiency, while parent bounding box data is stored with higher precision differentials. During intersection testing, the system selectively uses the appropriate precision level for each computational step, optimizing both bandwidth and accuracy.
Solution Approach 2:
The differential parent bounding box data acts as an intermediary that bridges the precision gap between quantized child boxes and full-precision intersection testing requirements. By storing parent data in a higher-precision differential format, the system can perform accurate intersection tests without requiring all BVH nodes to be stored in full precision.
3Reliability
If full precision bounding box data is stored for all nodes, then ray tracing accuracy is maintained, but hardware complexity and implementation cost increase
Solution Approach 1:
The hardware implementation is segmented into separate processing paths: one for handling quantized child bounding box data and another for processing differential parent bounding box data. This segmentation allows the hardware to efficiently manage different data types and precision levels without requiring a single complex processing unit capable of handling all cases uniformly.
Solution Approach 2:
The patent employs parameter changes by using quantization to convert floating-point data to integer representations, which simplifies hardware arithmetic operations. The differential parent data format further reduces hardware complexity by enabling compact storage and efficient retrieval of higher-precision information only when needed for intersection testing.
Data Source
AI summary
Embodiments provide for a graphics processing apparatus including a graphics processing unit having bounding volume logic to operate on a compressed bounding volume hierarchy, wherein each bounding volume node stores a parent bounding volume and multiple child bounding volumes that are encoded relative to the parent bounding volume.


