Non-divergent parallel traversal of a bounding volume hierarchy
AssigneeMicrosoft Technology Licensing, LLC
InventorsJames D. Stanard, Ivan Nevraev
Life of this patent
Estimating the term…
Loading patent…
AssigneeMicrosoft Technology Licensing, LLC
InventorsJames D. Stanard, Ivan Nevraev
Estimating the term…
Various approaches to performing non-divergent parallel traversal operations for a bounding volume hierarchy (“BVH”) during ray tracing are presented. For example, a computer system has a processing unit with threads that, collectively, perform ray tracing for a group of rays in parallel in a computer-represented environment, which includes geometric objects (such as triangles) enclosed in the BVH. Each of the threads receives parameters for a given ray and traverses the BVH to determine an intersection, if any, between the given ray and one of the geometric objects. The order of traversal of the BVH is synchronized between threads for the rays of the group, for example, using a cross-group operation such as a ballot operation. In this way, the overall speed of the BVH traversal can be improved in many cases, while avoiding code divergence and data divergence in extra-wide single-instruction, multiple data (“SIMD”) graphics processing unit (“GPU”) architectures.
In a computer system having multiple processing units, a method of ray tracing multiple rays in parallel in a computer-represented environment that includes multiple geometric objects enclosed in a bounding volume hierarchy (“BVH”), the method comprising, with each of multiple threads of one the multiple processing units:
A computer system comprising multiple processing units and memory, wherein the computer system implements a ray tracing tool configured to perform operations for ray tracing multiple rays in parallel in a computer-represented environment that includes multiple geometric objects enclosed in a bounding volume hierarchy (“BVH”), the operations comprising:
One or more computer-readable media storing computer-executable instructions for causing a computer system having multiple processing units, when programmed thereby, to perform operations for ray tracing multiple rays in parallel in a computer-represented environment that includes multiple geometric objects enclosed in a bounding volume hierarchy (“BVH”), the operations comprising:
Dependencies are inferred from the claim text.