US20120249553A1

Architectures for concurrent graphics processing operations

Claim Score by NHIP

Read claim 1, the broadest

Abstract

Ray tracing, and more generally, graphics operations taking place in a 3-D scene, involve a plurality of constituent graphics operations. Scheduling of graphics operations for concurrent execution on a computer may increase throughput. In aspects herein, constituent graphics operations are scheduled in groups, having members selected according to disclosed aspects. Processing for specific graphics operations in a group can be deferred if all the operations in the group cannot be further tested concurrently. Graphics operations that have been deferred are recombined into two or more different groups and ultimately complete processing, through a required number of iterations of such process. In one application, the performance of the graphics operations perform a search in which respective 1:1 matches between different types of geometric shapes involved in the 3-D scene are identified. For example, closest intersections between rays and scene geometry can be identified by processing scheduled according to disclosed aspects.

US20120249553A1, drawing sheet 1
Sheet 1 of 17

Term

1 yearto projected expiry

Projected expiry 17 September 2027, counted from filing; an application has no term until it is granted.

  1. Priority
  2. Filed
  3. Published
  4. Today
  5. Projected expiry

20 claims: 4 independent, 16 dependent

  1. 1
    Broadest claimClaim Score 51, average(NHIP)A non-transitory machine readable memory storing computer executable instructions, comprising:instructions for configuring a computer, wherein the computer is capable of performing computation operations in parallel on up to a pre-determined number of data elements, to perform a method comprising selecting rays from a plurality rays stored on a tangible medium to be processed in a parallel computing operation, the selecting based on a set of stored data correlating the rays of the plurality with respective elements of a hierarchical acceleration structure, for which definition data is stored on a tangible medium coupled for reading by the computer, and updating the set of stored data correlating rays from the plurality with respect elements of the hierarchical acceleration structure, based on results of the parallel computing operation.
  2. 6
    A computerized method of ray tracing a 3-D scene, comprising:receiving a set of rays to be traced in the 3-D scene;allocating a plurality of cells in an intersection testing unit to concurrent intersection testing of rays with one or more selected elements in a scene acceleration structure;determining a subset of the set of rays;concurrently testing the subset of the set of rays with an element of the scene acceleration structure in the plurality of cells in the intersection testing unit;and identifying, using a result of the test, a next subset of the rays to be concurrently tested against one or more child elements of the tested element of the scene acceleration structure, the next subset of the rays comprising a portion of rays from the tested subset and one or more rays from the set of rays that await testing against the one or more child elements.
  3. 14
    A computerized method of graphics processing, comprising:forming a first set of graphics operations to be performed by a computer in parallel according to a single instruction multiple data execution model;performing the first set of graphics operations in parallel until detecting a divergence in processing among the graphics operations of the first set, the divergence comprising that different members of the first set of graphics operations require at least two different kinds of further processing;forming a plurality of further sets of graphics operations, with graphics operations of the first set, each set of the plurality of further sets respectively comprising graphics operations to be performed in parallel by the computer according to the single instruction multiple data execution model;supplementing the plurality of further sets of graphics operations, with additional graphics operations that can be performed in parallel by the computer according to the single instruction multiple data execution model;and selecting one or more of the further sets of graphics operations and repeating the performing with the selected one or more of the further sets.
  4. 17
    A computerized method of graphics processing, comprising:providing a plurality of geometric shapes of a first type, each located in a virtual 3-D space;providing a plurality of geometric shapes of a second type, each located in a virtual 3-D space, the plurality of geometric shapes of the second type being organized in a hierarchy;searching for a 1:1 match for each geometric shape of the first type to a geometric shape of the second type within the hierarchy, the searching performed as a series of constituent operations over an elapsed time, each constituent operation comprising one or more single instruction multiple data execution steps and wherein each of the series of constituent operations produces an intermediate result;and scheduling the searching by forming groups of the geometric shapes of the first type according to the intermediate results and selecting a group to begin searching, from among the formed groups, and wherein the geometric shapes of the selected group provide operand data in respective one or more single instruction multiple data execution steps during the searching.