Ray-Box Intersection Circuitry
    32.
    发明申请

    公开(公告)号:US20240404172A1

    公开(公告)日:2024-12-05

    申请号:US18329055

    申请日:2023-06-05

    Applicant: Apple Inc.

    Abstract: Techniques are disclosed relating to ray intersection tests for ray tracing in graphics processors. In some embodiments, a ray cache stores, transformed ray direction corresponding to a transform of a ray based on its dominant direction axis. Ray intersect acceleration circuitry may determine whether a ray intersects a bounding volume of a bounding volume hierarchy (BVH) data structure. Ray-plane test circuitry may perform a set of six ray-plane tests for the bounding volume using at most four floating-point multiplication operations by four multiplier circuits. The floating-point operations may operate on the transformed ray direction components from the ray cache circuitry and coordinate information for the bounding volume. Disclosed techniques may reduce area and power consumption by avoiding multiplier circuitry for some ray-plane tests.

    Ray Intersection Testing with Quantization and Interval Representations

    公开(公告)号:US20230102071A1

    公开(公告)日:2023-03-30

    申请号:US17456483

    申请日:2021-11-24

    Applicant: Apple Inc.

    Abstract: Techniques are disclosed relating to primitive intersection testing for ray tracing in graphics processors. In some embodiments, a graphics processor includes ray intersection circuitry configured to perform an intersection test, which includes to: quantize a first representation of the primitive to generate a reduced-precision interval representation of the primitive, quantize a first representation of the ray to generate a reduced-precision interval representation of the ray, and determine, using interval arithmetic, an initial intersection result based on coordinates of the interval representation of the primitive and coordinates of the interval representation of the ray. The initial intersection result may be a conservative result such that a miss indicated by the initial intersection result is guaranteed not to be a hit for the first representation of the primitive and first representation of the ray. Disclosed techniques may improve performance, reduce power consumption, or both, relative to traditional techniques.

    Primitive Testing for Ray Intersection at Multiple Precisions

    公开(公告)号:US20220207690A1

    公开(公告)日:2022-06-30

    申请号:US17136542

    申请日:2020-12-29

    Applicant: Apple Inc.

    Abstract: Techniques are disclosed relating to testing whether a ray intersects a graphics primitive, e.g., for ray tracing. In some embodiments, intersection circuitry performs a reduced-precision conservative intersection test and shader circuitry performs an original-precision intersection test if the intersection circuitry indicates a hit. The intersection circuitry may quantize the ray (and may quantize the primitive or may receive a quantized representation of the primitive) and generates a potential error value based on propagation of quantization error for the primitive and ray. The intersection circuitry then determines an intersection result for the reduced-precision test based on the quantized primitive data and the potential error. In various embodiments, disclosed techniques may improve performance or reduce power consumption by reducing the number of original-precision intersection tests that do not result in hits.

    Ray Intersection Data Structure with Many-to-Many Mapping between Bounding Regions and Primitives

    公开(公告)号:US20220036652A1

    公开(公告)日:2022-02-03

    申请号:US17103352

    申请日:2020-11-24

    Applicant: Apple Inc.

    Abstract: Disclosed techniques relate to an acceleration data structure for ray intersection with a many-to-many mapping between bounding regions and primitives. In some embodiments, one or more graphics processors access data for multiple graphics primitives in a graphics scene and generate a spatially organized data structure. Some nodes of the data structure indicate graphics primitives and some nodes indicate coordinates of bounding regions in the graphics scene. In some embodiments, the spatially organized data structure includes a node with a bounding region for which multiple primitives are indicated as children and also includes a primitive for which multiple bounding regions are indicated as parents. Disclosed techniques may generate bounding regions that closely fit primitives, which may reduce primitive testing for ray tracing. This in turn may increase performance or reduce power consumption relative to traditional techniques.

    SIMD Group Formation Techniques for Primitive Testing associated with Ray Intersect Traversal

    公开(公告)号:US20220036638A1

    公开(公告)日:2022-02-03

    申请号:US17103406

    申请日:2020-11-24

    Applicant: Apple Inc.

    Abstract: Disclosed techniques relate to primitive testing associated with ray intersection processing for ray tracing. In some embodiments, shader circuitry executes a first SIMD group that includes a ray intersect instruction for a set of rays. Ray intersect circuitry traverses, in response to the ray intersect instruction, multiple nodes in a spatially organized acceleration data structure (ADS). In response to reaching a node of the ADS that indicates one or more primitives, the apparatus forms a second SIMD group that executes one or more instructions to determine whether a set of rays that have reached the node intersect the one or more primitives. The shader circuitry may execute the first SIMD group to shade one or more primitives that are indicated as intersected based on results of execution of the second SIMD group. Thus, disclosed techniques may use both dedicated ray intersect circuitry and dynamically formed SIMD groups executed by shader processors to detect ray intersection.

    SIMD Operand Permutation with Selection from among Multiple Registers

    公开(公告)号:US20210149679A1

    公开(公告)日:2021-05-20

    申请号:US16686060

    申请日:2019-11-15

    Applicant: Apple Inc.

    Abstract: Techniques are disclosed relating to operand routing among SIMD pipelines. In some embodiments, an apparatus includes a set of multiple hardware pipelines configured to execute a single-instruction multiple-data (SIMD) instruction for multiple threads in parallel, wherein the instruction specifies first and second architectural registers. In some embodiments, the pipelines include execution circuitry configured to perform operations using one or more pipeline stages of the pipeline. In some embodiments, the pipelines include routing circuitry configured to select, based on the instruction, a first input operand for the execution circuitry from among: a value from the first architectural register from thread-specific storage for another pipeline and a value from the second architectural register from thread-specific storage for a thread assigned to another pipeline. In some embodiments, the routing circuitry may support a shift and fill instruction that facilitates storage of an arbitrary portion of a graphics frame in one or more registers.

    Floating-point multiply-add with down-conversion

    公开(公告)号:US10282169B2

    公开(公告)日:2019-05-07

    申请号:US15092401

    申请日:2016-04-06

    Applicant: Apple Inc.

    Abstract: Techniques are disclosed relating to floating-point operations with down-conversion. In some embodiments, a floating-point unit is configured to perform fused multiply-addition operations based on first and second different instruction types. In some embodiments, the first instruction type specifies result in the first floating-point format and the second instruction type specifies fused multiply addition of input operands in the first floating-point format to generate a result in a second, lower-precision floating-point format. For example, the first format may be a 32-bit format and the second format may be a 16-bit format. In some embodiments, the floating-point unit includes rounding circuitry, exponent circuitry, and/or increment circuitry configured to generate signals for the second instruction type in the same pipeline stage as for the first instruction type. In some embodiments, disclosed techniques may reduce the number of pipeline stages included in the floating-point circuitry.

    Texture sampling techniques
    40.
    发明授权

    公开(公告)号:US10192349B2

    公开(公告)日:2019-01-29

    申请号:US15870081

    申请日:2018-01-12

    Applicant: Apple Inc.

    Abstract: Techniques are disclosed relating to texture sampling operations. In some embodiments, multi-fetch sampling instructions specify a region of a texture in which multiple samples are to be performed and texture processing circuitry is configured to sample the texture multiple times within the region. In some embodiments, the locations of the samples are determined according to a formula, which may be pseudo-random. In some embodiments, the locations of the samples are jittered to produce stochastic results. In some embodiments, the locations of the samples are determined based on one or more stored sets of samples that have particular properties (e.g., blue noise, in some embodiments). In various embodiments, disclosed techniques may facilitate Monte Carlo sampling.

Patent Agency Ranking