Integer-based functionality in a graphics shading language
    1.
    发明授权
    Integer-based functionality in a graphics shading language 有权
    图形阴影语言中基于整数的功能

    公开(公告)号:US08044951B1

    公开(公告)日:2011-10-25

    申请号:US11565543

    申请日:2006-11-30

    CPC分类号: G06F8/54 G06T15/005

    摘要: One embodiment of the present invention sets forth a technique for improving the flexibility and programmability of a graphics pipeline by adding application programming interface (API) extensions to the OpenGL Shading Language (GLSL) that provide native support for integer data types and operations. The integer API extensions span from the API to the hardware execution units within a graphics processing unit (GPU), thereby providing native integer support throughout the graphics pipeline.

    摘要翻译: 本发明的一个实施例提出了一种通过向对整数数据类型和操作提供本地支持的OpenGL着色语言(GLSL)添加应用编程接口(API)扩展来提高图形流水线的灵活性和可编程性的技术。 整数API扩展从API到图形处理单元(GPU)中的硬件执行单元,从而在整个图形管线中提供本机整数支持。

    Methods and systems for processing a geometry shader program developed in a high-level shading language
    2.
    发明授权
    Methods and systems for processing a geometry shader program developed in a high-level shading language 有权
    用于处理以高级着色语言开发的几何着色器程序的方法和系统

    公开(公告)号:US07746347B1

    公开(公告)日:2010-06-29

    申请号:US11565566

    申请日:2006-11-30

    CPC分类号: G06F8/41 G06T15/005

    摘要: Methods and systems for processing a geometry shader program developed in a high-level shading language are disclosed. Specifically, in one embodiment, after having received the geometry shader program configured to be executed by a first processing unit in a programmable execution environment, the high-level shading language instructions of the geometry shader program is converted into low-level programming language instructions. The low-level programming language instructions are then linked with the low-level programming language instructions of a domain-specific shader program, which is configured to be executed by a second processing unit also residing in the programmable execution environment. The linked instructions of the geometry shader program are directed to the first processing unit, and the linked instructions of the domain-specific shader program are directed to the second processing unit.

    摘要翻译: 公开了用于处理以高级着色语言开发的几何着色器程序的方法和系统。 具体地说,在一个实施例中,在可编程执行环境中接收到配置为由第一处理单元执行的几何着色器程序之后,将几何着色器程序的高级着色语言指令转换成低级编程语言指令。 然后,低级编程语言指令与特定于领域的着色器程序的低级编程语言指令相关联,该指令被配置为由驻留在可编程执行环境中的第二处理单元执行。 几何着色器程序的链接指令被引导到第一处理单元,并且域专用着色器程序的链接指令被引导到第二处理单元。

    Optimized chaining of vertex and fragment programs
    3.
    发明授权
    Optimized chaining of vertex and fragment programs 有权
    优化链接的顶点和片段程序

    公开(公告)号:US07426724B2

    公开(公告)日:2008-09-16

    申请号:US10883893

    申请日:2004-07-02

    IPC分类号: G06F9/45

    摘要: A system optimizes two or more stream processing programs based upon the data exchanged between the stream processing programs. The system alternately processes each stream processing program to identify and remove dead program code, thereby improving execution performance. Dead program code is identified by propagating constants received as inputs from other stream processing programs and by analyzing a first stream processing program and determining the outputs of a second stream processing program that are unused by the first stream processing program. The system may perform multiple iterations of this optimization is previous iterations introduce additional constants used as inputs to a stream processing program. Following optimization of the stream processing programs, the optimized stream processing programs are compiled to a format adapted to be executed by a stream processing system.

    摘要翻译: 系统基于在流处理程序之间交换的数据优化两个或多个流处理程序。 系统交替地处理每个流处理程序以识别和去除死程序代码,从而提高执行性能。 通过传播从其他流处理程序作为输入接收的常数并通过分析第一流处理程序并确定第一流处理程序未使用的第二流处理程序的输出来识别死程序代码。 该系统可执行该优化的多次迭代,此前迭代引入了用作流处理程序输入的额外常量。 在对流处理程序进行优化之后,优化流处理程序被编译为适于由流处理系统执行的格式。

    Methods and systems for processing a geometry shader program developed in a high-level shading language
    4.
    发明授权
    Methods and systems for processing a geometry shader program developed in a high-level shading language 有权
    用于处理以高级着色语言开发的几何着色器程序的方法和系统

    公开(公告)号:US07958498B1

    公开(公告)日:2011-06-07

    申请号:US11565585

    申请日:2006-11-30

    IPC分类号: G06F9/45

    摘要: Methods and systems for processing a geometry shader program developed in a high-level shading language are disclosed. Specifically, in one embodiment, after having received the geometry shader program configured to be executed by a first processing unit in a programmable execution environment, the high-level shading language instructions of the geometry shader program is converted into low-level programming language instructions. The low-level programming language instructions are then linked with the low-level programming language instructions of a domain-specific shader program, which is configured to be executed by a second processing unit also residing in the programmable execution environment. The linked instructions of the geometry shader program are directed to the first processing unit, and the linked instructions of the domain-specific shader program are directed to the second processing unit.

    摘要翻译: 公开了用于处理以高级着色语言开发的几何着色器程序的方法和系统。 具体地说,在一个实施例中,在可编程执行环境中接收到被配置为由第一处理单元执行的几何着色器程序之后,将几何着色器程序的高级着色语言指令转换成低级编程语言指令。 然后,低级编程语言指令与特定于领域的着色器程序的低级编程语言指令相关联,该指令被配置为由驻留在可编程执行环境中的第二处理单元执行。 几何着色器程序的链接指令被引导到第一处理单元,并且域专用着色器程序的链接指令被引导到第二处理单元。

    TESSELLATION SHADER INTER-THREAD COORDINATION
    5.
    发明申请
    TESSELLATION SHADER INTER-THREAD COORDINATION 有权
    TESSELLATION SHADER INTER-THREAD协调

    公开(公告)号:US20110063294A1

    公开(公告)日:2011-03-17

    申请号:US12879976

    申请日:2010-09-10

    IPC分类号: G06T15/50

    摘要: One embodiment of the present invention sets forth a technique for performing a computer-implemented method for tessellating patches. An input block is received that defines a plurality of input patch attributes for each patch as well as instructions for processing each input patch. A plurality of threads is launched to execute the instructions to generate each vertex of a corresponding output patch based on the input patch. Reads of values written during instruction execution are synchronized so threads can read and further process the values of other threads. An output patch is then assembled from the outputs of each of the threads; and emitting the output patch for further processing.

    摘要翻译: 本发明的一个实施例提出了一种用于执行用于镶嵌补丁的计算机实现的方法的技术。 接收一个输入块,其定义每个补丁的多个输入补丁属性以及用于处理每个输入补丁的指令。 启动多个线程以执行指令以基于输入补丁生成相应输出补丁的每个顶点。 在指令执行期间写入的值的读取是同步的,因此线程可以读取并进一步处理其他线程的值。 然后从每个线程的输出组装输出补丁; 并发射输出补丁进行进一步处理。

    Managing primitive program vertex attributes as per-attribute arrays
    6.
    发明授权
    Managing primitive program vertex attributes as per-attribute arrays 有权
    根据属性数组管理原始程序顶点属性

    公开(公告)号:US07825933B1

    公开(公告)日:2010-11-02

    申请号:US11361789

    申请日:2006-02-24

    IPC分类号: G06T15/00

    CPC分类号: G06T15/005 G06F8/447

    摘要: Systems and methods for compiling high-level primitive programs are used to generate primitive program micro-code for execution by a primitive processor. A compiler is configured to produce micro-code for a specific target primitive processor based on the target primitive processor's capabilities. The compiler supports features of the high-level primitive program by providing conversions for different applications programming interface conventions, determining output primitive types, initializing attribute arrays based on primitive input profile modifiers, and determining vertex set lengths from specified primitive input types.

    摘要翻译: 用于编译高级原始程序的系统和方法用于生成原始程序微代码,以由原始处理器执行。 编译器被配置为基于目标原语处理器的能力为特定目标原语处理器产生微代码。 编译器通过为不同的应用程序编程接口约定提供转换,确定输出原语类型,基于原始输入配置文件修饰符初始化属性数组,以及从指定的基元输入类型确定顶点集长度来支持高级原始程序的功能。

    Primitive program compilation for flat attributes with provoking vertex independence
    7.
    发明授权
    Primitive program compilation for flat attributes with provoking vertex independence 有权
    平面属性的原始程序编译,引起顶点独立性

    公开(公告)号:US08171461B1

    公开(公告)日:2012-05-01

    申请号:US11361769

    申请日:2006-02-24

    IPC分类号: G06F9/45 G06F15/16

    CPC分类号: G06F8/4441

    摘要: Systems and methods for compiling high-level primitive programs are used to generate primitive program micro-code for execution by a primitive processor. A compiler is configured to produce micro-code for a specific target primitive processor based on the target primitive processor's capabilities. The compiler supports features of the high-level primitive program by providing conversions for different applications programming interface conventions, determining output primitive types, initializing attribute arrays based on primitive input profile modifiers, and determining vertex set lengths from specified primitive input types.

    摘要翻译: 用于编译高级原始程序的系统和方法用于生成原始程序微代码,以由原始处理器执行。 编译器被配置为基于目标原语处理器的能力为特定目标原语处理器产生微代码。 编译器通过为不同的应用程序编程接口约定提供转换,确定输出原语类型,基于原始输入配置文件修饰符初始化属性数组以及从指定的基元输入类型确定顶点集长度来支持高级原始程序的功能。

    System and method for compiling high-level primitive programs into primitive program micro-code
    8.
    发明授权
    System and method for compiling high-level primitive programs into primitive program micro-code 有权
    将高级原始程序编译成原始程序微代码的系统和方法

    公开(公告)号:US08006236B1

    公开(公告)日:2011-08-23

    申请号:US11361597

    申请日:2006-02-24

    IPC分类号: G06F9/45

    CPC分类号: G06F8/443

    摘要: Systems and methods for compiling high-level primitive programs are used to generate primitive program micro-code for execution by a primitive processor. A compiler is configured to produce micro-code for a specific target primitive processor based on the target primitive processor's capabilities. The compiler supports features of the high-level primitive program by providing conversions for different applications programming interface conventions, determining output primitive types, initializing attribute arrays based on primitive input profile modifiers, and determining vertex set lengths from specified primitive input types.

    摘要翻译: 用于编译高级原始程序的系统和方法用于生成原始程序微代码,以由原始处理器执行。 编译器被配置为基于目标原语处理器的能力为特定目标原语处理器产生微代码。 编译器通过为不同的应用程序编程接口约定提供转换,确定输出原语类型,基于原始输入配置文件修饰符初始化属性数组,以及从指定的基元输入类型确定顶点集长度来支持高级原始程序的功能。

    Tessellation shader inter-thread coordination
    9.
    发明授权
    Tessellation shader inter-thread coordination 有权
    镶嵌着色器线程间协调

    公开(公告)号:US09024946B2

    公开(公告)日:2015-05-05

    申请号:US12879976

    申请日:2010-09-10

    IPC分类号: G06T15/30 G06T15/00

    摘要: One embodiment of the present invention sets forth a technique for performing a computer-implemented method for tessellating patches. An input block is received that defines a plurality of input patch attributes for each patch as well as instructions for processing each input patch. A plurality of threads is launched to execute the instructions to generate each vertex of a corresponding output patch based on the input patch. Reads of values written during instruction execution are synchronized so threads can read and further process the values of other threads. An output patch is then assembled from the outputs of each of the threads; and emitting the output patch for further processing.

    摘要翻译: 本发明的一个实施例提出了一种用于执行用于镶嵌补丁的计算机实现的方法的技术。 接收一个输入块,其定义每个补丁的多个输入补丁属性以及用于处理每个输入补丁的指令。 启动多个线程以执行指令以基于输入补丁生成相应输出补丁的每个顶点。 在指令执行期间写入的值的读取是同步的,因此线程可以读取并进一步处理其他线程的值。 然后从每个线程的输出组装输出补丁; 并发射输出补丁进行进一步处理。