Method and system for defining and controlling algorithmic elements in a graphics display system
First Claim
1. A method for processing data in a graphics system by a graphics processing unit (GPU) on behalf of a host, comprising:
- receiving by the GPU at least one host application programming interface (API) call and unpacking a plurality of algorithmic elements from the host API call, wherein each algorithmic element is downloadable to the GPU as an instruction set packed into an array of numbers by a host API, represents a computational algorithm, and contains one or more tokens selected by a developer from a list of tokens interpretable by the GPU, said array of numbers for the selected one or more tokens providing an instruction to be performed by at least one computational subunit of the GPU; and
mapping the unpacked plurality of algorithmic elements to said at least one computational subunit of the GPU for implementing the instructions for the tokens selected by the developer, thereby readying the at least one computational subunit to perform the functionality defined by the plurality of algorithmic elements based on the developer'"'"'s selection of tokens interpretable by the GPU.
1 Assignment
0 Petitions
Accused Products
Abstract
An API is provided that enables programmability of a 3D chip, wherein programming or algorithmic elements written by the developer can be downloaded to the chip, thereby programming the chip to perform those algorithms. A developer writes a routine that is downloadable to a 3D graphics chip. There are also a set of algorithmic elements that are provided in connection with the API that have already been programmed for the developer, that are downloadable to the programmable chip for improved performance. Thus, a developer may download preexisting API objects to a 3D graphics chip. A developer adheres to a specific format for packing up an algorithmic element, or set of instructions, for implementation by a 3D graphics chip. The developer packs the instruction set into an array of numbers, by referring to a list of ‘tokens’ understood by the 3D graphics chip. This array of numbers in turn is mapped correctly to the 3D graphics chip for implementation of the algorithmic element by the 3D graphics chip.
-
Citations
43 Claims
-
1. A method for processing data in a graphics system by a graphics processing unit (GPU) on behalf of a host, comprising:
-
receiving by the GPU at least one host application programming interface (API) call and unpacking a plurality of algorithmic elements from the host API call, wherein each algorithmic element is downloadable to the GPU as an instruction set packed into an array of numbers by a host API, represents a computational algorithm, and contains one or more tokens selected by a developer from a list of tokens interpretable by the GPU, said array of numbers for the selected one or more tokens providing an instruction to be performed by at least one computational subunit of the GPU; and mapping the unpacked plurality of algorithmic elements to said at least one computational subunit of the GPU for implementing the instructions for the tokens selected by the developer, thereby readying the at least one computational subunit to perform the functionality defined by the plurality of algorithmic elements based on the developer'"'"'s selection of tokens interpretable by the GPU. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23)
-
-
24. A method for processing data in a graphics system by a procedural shader computational subunit included on a graphics processing unit (GPU), comprising:
-
receiving a plurality of algorithmic elements for performing procedural shading algorithms on graphics data, wherein the plurality of algorithmic elements are received by the GPU from at least one host application programming interface (API) call, wherein each algorithmic element is downloadable to the GPU as an instruction set packed into an array of numbers by a host API, represents a computational algorithm, and contains one or more tokens selected by a developer from a list of tokens interpretable by the GPU, said array of numbers for the selected one or more tokens providing an instruction to be performed by at least one computational subunit of the GPU; and distributing the plurality of algorithmic elements to corresponding storage locations of the procedural shader of the GPU based on a pre-defined protocol, enabling the procedural shader of the GPU to implement the instructions for the tokens selected by the developer so as to perform the procedural shading algorithms represented by the plurality of algorithmic elements based on the developer'"'"'s selection of tokens interpretable by the GPU. - View Dependent Claims (25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41)
-
-
42. A computer-readable storage medium comprising computer executable instructions that when executed by a processor cause the processor to perform a method, the method comprising:
-
receiving by a graphics processing unit (GPU) at least one host application programming interface (API) call and unpacking a plurality of algorithmic elements from the host API call, wherein each algorithmic element is downloadable to the GPU as an instruction set packed into an array of numbers by a host API, represents a computational algorithm, and contains one or more tokens selected by a developer from a list of tokens interpretable by the GPU, said array of numbers for the selected one or more tokens providing an instruction to be performed by at least one computational subunit of the GPU; and mapping the unpacked plurality of algorithmic elements to said at least one computational subunit of the GPU for implementing the instructions for the tokens selected by the developer, thereby readying the at least one computational subunit to perform the functionality defined by the plurality of algorithmic elements based on the developer'"'"'s selection of tokens interpretable by the GPU.
-
-
43. A computer readable storage medium comprising computer executable instructions that when executed by a processor cause the processor to perform a method, the method comprising:
-
receiving a plurality of algorithmic elements for performing procedural shading algorithms on graphics data, wherein the plurality of algorithmic elements are received by the GPU from at least one host application programming interface (API) call, wherein each algorithmic element is downloadable to the GPU as an instruction set packed into an array of numbers by a host API, represents a computational algorithm, and contains one or more tokens selected by a developer from a list of tokens interpretable by the GPU, said array of numbers for the selected one or more tokens providing an instruction to be performed by at least one computational subunit of the GPU; and distributing the plurality of algorithmic elements to corresponding storage locations of the procedural shader of the GPU based on a pre-defined protocol, enabling the procedural shader of the GPU to implement the instructions for the tokens selected by the developer so as to perform the procedural shading algorithms represented by the plurality of algorithmic elements based on the developer'"'"'s selection of tokens interpretable by the GPU.
-
Specification