Rasterization of compute shaders
    1.
    发明授权
    Rasterization of compute shaders 有权
    计算着色器的光栅化

    公开(公告)号:US09529575B2

    公开(公告)日:2016-12-27

    申请号:US13398798

    申请日:2012-02-16

    CPC classification number: G06F8/456

    Abstract: Described are compiler algorithms that partition a compute shader program into maximal-size regions, called thread-loops. The algorithms may remove original barrier-based synchronization yet the thus-transformed shader program remains semantically equivalent to the original shader program (i.e., the transformed shader program is correct). Moreover, the transformed shader program is amenable to optimization via existing compiler technology, and can be executed efficiently by CPU thread(s). A Dispatch call can be load-balanced on a CPU by assigning single or multiple CPU threads to execute thread blocks. In addition, the number of concurrently executing thread blocks do not overload the CPU.

    Abstract translation: 描述的是将计算着色器程序划分为最大大小的区域(称为线程循环)的编译器算法。 这些算法可以去除原始的基于屏障的同步,而这样变换的着色器程序在语义上等同于原始着色器程序(即,经变换的着色器程序是正确的)。 此外,转换的着色器程序可以通过现有的编译器技术进行优化,并且可以通过CPU线程高效地执行。 通过分配单个或多个CPU线程来执行线程块,可以在CPU上对调度调用进行负载平衡。 另外,同时执行的线程块的数量不会使CPU过载。

    SOFTWARE RASTERIZATION OPTIMIZATION
    2.
    发明申请
    SOFTWARE RASTERIZATION OPTIMIZATION 有权
    软件RASTERIZATION优化

    公开(公告)号:US20090284535A1

    公开(公告)日:2009-11-19

    申请号:US12121402

    申请日:2008-05-15

    CPC classification number: G06T15/005 G06T2210/52

    Abstract: Systems, methods, and computer-readable media for optimizing emulated fixed-function and programmable graphics operations are provided. Data comprising fixed function and programmable states for an image or scenario to be rendered is received. The data for the image is translated into operations. One or more optimizations are applied to the operations. The optimized operations are implemented to render the scenario.

    Abstract translation: 提供了用于优化仿真固定功能和可编程图形操作的系统,方法和计算机可读介质。 接收包含要呈现的图像或场景的固定功能和可编程状态的数据。 图像的数据被转换为操作。 一个或多个优化被应用于操作。 实施优化的操作来呈现场景。

    ALPHA CORRECTION TO COMPENSATE FOR LACK OF GAMMA CORRECTION
    3.
    发明申请
    ALPHA CORRECTION TO COMPENSATE FOR LACK OF GAMMA CORRECTION 有权
    补偿缺少伽马校正的ALPHA校正

    公开(公告)号:US20050237339A1

    公开(公告)日:2005-10-27

    申请号:US11155249

    申请日:2005-06-17

    CPC classification number: G06T11/203 G06T15/503

    Abstract: The blending coefficients (alpha values) of font glyphs undergo alpha correction to compensate for a lack of gamma correction in text rendering processes. The alpha correction includes selecting a set of correction coefficients that correspond to the predetermined gamma value of the display device and computing corrected alpha values from the known alpha values, the foreground colors, and set of correction coefficients. The corrected alpha values can then be used to blend the foreground and background colors of the corresponding display pixels without requiring gamma correction. Accordingly, the alpha correction can be performed by a GPU, which is not configured to perform gamma correction, thereby increasing the speed at which text rendering can occur.

    Abstract translation: 字体字形的混合系数(α值)经历alpha校正,以弥补文本呈现过程中缺少伽马校正。 α校正包括选择与显示装置的预定伽马值对应的一组校正系数,并根据已知的α值,前景色和校正系数组计算校正的α值。 然后可以使用校正的α值来混合相应显示像素的前景色和背景色,而不需要伽马校正。 因此,可以通过未被配置为执行伽马校正的GPU执行α校正,从而增加可以发生文本呈现的速度。

    Scalar optimizations for shaders
    4.
    发明授权
    Scalar optimizations for shaders 有权
    着色器的标量优化

    公开(公告)号:US09430199B2

    公开(公告)日:2016-08-30

    申请号:US13398793

    申请日:2012-02-16

    CPC classification number: G06F8/433 G06F8/452 G06F9/45525 G06T15/005

    Abstract: Described herein are optimizations of thread loop intermediate representation (IR) code. One embodiment involves an algorithm that, based on data-flow analysis, computes sets of temporary variables that are loaded at the beginning of a thread loop and stored upon exit from a thread loop. Another embodiment involves reducing the size of a thread loop trip for a commonly-found case where a piece of compute shader is executed by a single thread (or a compiler-analyzable range of threads). In yet another embodiment, compute shader thread indices are cached to avoid excessive divisions, further improving execution speed.

    Abstract translation: 这里描述了线程循环中间表示(IR)代码的优化。 一个实施例涉及一种算法,其基于数据流分析,计算在线程循环开始时加载并在从线程循环退出时存储的临时变量集合。 另一个实施例涉及减少线程循环跳闸的大小,用于通常发现的情况,其中一条计算着色器由单个线程(或可编程序分析的线程范围)执行。 在另一个实施例中,计算着色器线索索引被缓存以避免过分的划分,进一步提高执行速度。

    SCALAR OPTIMIZATIONS FOR SHADERS
    6.
    发明申请
    SCALAR OPTIMIZATIONS FOR SHADERS 有权
    SCALAR优化算法

    公开(公告)号:US20130219377A1

    公开(公告)日:2013-08-22

    申请号:US13398793

    申请日:2012-02-16

    CPC classification number: G06F8/433 G06F8/452 G06F9/45525 G06T15/005

    Abstract: Described herein are optimizations of thread loop intermediate representation (IR) code. One embodiment involves an algorithm that, based on data-flow analysis, computes sets of temporary variables that are loaded at the beginning of a thread loop and stored upon exit from a thread loop. Another embodiment involves reducing the size of a thread loop trip for a commonly-found case where a piece of compute shader is executed by a single thread (or a compiler-analyzable range of threads). In yet another embodiment, compute shader thread indices are cached to avoid excessive divisions, further improving execution speed.

    Abstract translation: 这里描述了线程循环中间表示(IR)代码的优化。 一个实施例涉及一种算法,其基于数据流分析,计算在线程循环开始时加载并在从线程循环退出时存储的临时变量集合。 另一个实施例涉及减少线程循环跳闸的大小,用于通常发现的情况,其中一条计算着色器由单个线程(或可编程序分析的线程范围)执行。 在另一个实施例中,计算着色器线索索引被缓存以避免过分的划分,进一步提高执行速度。

    RASTERIZATION OF COMPUTE SHADERS
    7.
    发明申请
    RASTERIZATION OF COMPUTE SHADERS 有权
    计算机阴影的放大

    公开(公告)号:US20130215117A1

    公开(公告)日:2013-08-22

    申请号:US13398798

    申请日:2012-02-16

    CPC classification number: G06F8/456

    Abstract: Described are compiler algorithms that partition a compute shader program into maximal-size regions, called thread-loops. The algorithms may remove original barrier-based synchronization yet the thus-transformed shader program remains semantically equivalent to the original shader program (i.e., the transformed shader program is correct). Moreover, the transformed shader program is amenable to optimization via existing compiler technology, and can be executed efficiently by CPU thread(s). A Dispatch call can be load-balanced on a CPU by assigning single or multiple CPU threads to execute thread blocks. In addition, the number of concurrently executing thread blocks do not overload the CPU.

    Abstract translation: 描述的是将计算着色器程序划分为最大大小的区域(称为线程循环)的编译器算法。 这些算法可以去除原始的基于屏障的同步,而这样变换的着色器程序在语义上等同于原始着色器程序(即,经变换的着色器程序是正确的)。 此外,转换的着色器程序可以通过现有的编译器技术进行优化,并且可以通过CPU线程高效地执行。 通过分配单个或多个CPU线程来执行线程块,可以在CPU上对调度调用进行负载平衡。 另外,同时执行的线程块的数量不会使CPU过载。

    Alpha correction to compensate for lack of gamma correction

    公开(公告)号:US20050151753A1

    公开(公告)日:2005-07-14

    申请号:US11076396

    申请日:2005-03-09

    CPC classification number: G06T11/203 G06T15/503

    Abstract: The blending coefficients (alpha values) of font glyphs undergo alpha correction to compensate for a lack of gamma correction in text rendering processes. The alpha correction includes selecting a set of correction coefficients that correspond to the predetermined gamma value of the display device and computing corrected alpha values from the known alpha values, the foreground colors, and set of correction coefficients. The corrected alpha values can then be used to blend the foreground and background colors of the corresponding display pixels without requiring gamma correction. Accordingly, the alpha correction can be performed by a GPU, which is not configured to perform gamma correction, thereby increasing the speed at which text rendering can occur.

    Vectorization of shaders
    9.
    发明授权
    Vectorization of shaders 有权
    着色器的矢量化

    公开(公告)号:US08806458B2

    公开(公告)日:2014-08-12

    申请号:US13398797

    申请日:2012-02-16

    CPC classification number: G06F8/453 G06F9/45525

    Abstract: Intermediate representation (IR) code is received as compiled from a shader in the form of shader language source code. The input IR code is first analyzed during an analysis pass, during which operations, scopes, parts of scopes, and if-statement scopes are annotated for predication, mask usage, and branch protection and predication. This analysis outputs vectorization information that is then used by various sets of vectorization transformation rules to vectorize the input IR code, thus producing vectorized output IR code.

    Abstract translation: 从着色器以着色器语言源代码的形式接收中间表示(IR)代码。 在分析过程中首先分析输入的IR代码,在此期间,操作,范围,部分范围和if语句范围被注释为预测,掩码使用和分支保护和预测。 该分析输出矢量化信息,然后由各种向量化变换规则集合使用,以矢量化输入的IR码,从而产生矢量化的输出IR码。

    VECTORIZATION OF SHADERS
    10.
    发明申请
    VECTORIZATION OF SHADERS 有权
    阴影的验证

    公开(公告)号:US20130219378A1

    公开(公告)日:2013-08-22

    申请号:US13398797

    申请日:2012-02-16

    CPC classification number: G06F8/453 G06F9/45525

    Abstract: Intermediate representation (IR) code is received as compiled from a shader in the form of shader language source code. The input IR code is first analyzed during an analysis pass, during which operations, scopes, parts of scopes, and if-statement scopes are annotated for predication, mask usage, and branch protection and predication. This analysis outputs vectorization information that is then used by various sets of vectorization transformation rules to vectorize the input IR code, thus producing vectorized output IR code.

    Abstract translation: 接收到从着色器以着色器语言源代码的形式编译的中间表示(IR)代码。 在分析过程中首先分析输入的IR代码,在此期间,操作,范围,部分范围和if语句范围被注释为预测,掩码使用和分支保护和预测。 该分析输出矢量化信息,然后由各种向量化变换规则集合使用,以矢量化输入的IR码,从而产生矢量化的输出IR码。

Patent Agency Ranking