Optimization of a graphics processor system when rendering images
First Claim
1. A method for optimizing the performance of a graphics processor system, the graphics processor system including a plurality of processors and a master thread, each of the processors including a slave thread;
- the method comprising the steps of;
(a) providing an entire graphics pipeline within each of the slave threads; and
(b) causing the master thread to move between the processors to cause each processor to execute its graphics pipeline, wherein the transfer of data between processors is minimized.
8 Assignments
0 Petitions
Accused Products
Abstract
A method and system for optimizing the performance of a graphics processor system is disclosed. The graphics processor system includes multiple CPUs. The system has at least one application thread or master thread, and in addition each CPU is assigned a slave thread. In a first aspect, the method and system comprises assigning each slave to a particular CPU and causing the master thread to move between the processors to cause each slave thread to execute its graphics pipeline. This minimizes data motion due to application inputs being transferred from CPU to CPU. The method and system further includes providing a summary of relevant changes to graphics state to each slave, thus guaranteeing correct state without requiring synchronization around state updates. Accordingly a system and method in accordance with the present invention minimizes data motion during input and also minimizes synchronization associated therewith in a graphics processor system. In a second aspect, the method and system comprises incorporating within each slave thread the entire graphics computation pipeline. Consequently no intermediate outputs are transferred from CPU to CPU, thus minimizing output data motion. The method and system further provides separately addressable output buffers for each slave for communication with the hardware. These output buffers are processed by the hardware in an order corresponding to the original order of inputs. Thus correct serial output is guaranteed with minimal synchronization between threads. Accordingly, a system and method in accordance with the present invention minimizes output data motion and also minimizes synchronization associated therewith in a graphics processor system.
73 Citations
19 Claims
-
1. A method for optimizing the performance of a graphics processor system, the graphics processor system including a plurality of processors and a master thread, each of the processors including a slave thread;
- the method comprising the steps of;
(a) providing an entire graphics pipeline within each of the slave threads; and
(b) causing the master thread to move between the processors to cause each processor to execute its graphics pipeline, wherein the transfer of data between processors is minimized. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
- the method comprising the steps of;
-
9. A method for optimizing the performance of a graphics processor system, the graphics processor system including a plurality of processors and a master thread, each of the processors including a slave thread;
- the method comprising the steps of;
(a) providing an entire graphics pipeline within each of the slave threads;
(b) causing the master thread to move sequentially between the processors to cause each processor to execute its graphics pipeline;
(c) providing a summary of a previous processor state to a subsequent processor, wherein synchronization is minimized. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
- the method comprising the steps of;
-
17. A computer readable medium containing program instructions for optimizing the performance of a graphics processor system, the graphics processor system including a plurality of processors and a master thread, each of the processors including a slave thread;
- the program instructions for;
(a) providing an entire graphics pipeline within each of the slave threads; and
(b) causing the master thread to move between the processors to cause each processor to execute its graphics pipeline, wherein the transfer of data between processors is minimized.
- the program instructions for;
-
18. A computer readable medium containing program instructions for optimizing the performance of a graphics system, the graphics processor system including a plurality of processors and a master thread, each of the processors including a slave thread;
- the program instructions for;
(a) providing an entire graphics pipeline within each of the slave threads;
(b) causing the master thread to move sequentially between the processors to cause each processor to execute its graphics pipeline;
(c) providing a summary of a previous processor state to a subsequent processor, wherein synchronization is minimized.
- the program instructions for;
-
19. A method for optimizing the computation of a multiprocessor system including a master thread, each of the processors within the multiprocessor system including a slave thread;
- the method comprising the steps of;
(a) providing an entire pipeline within each of the slave threads; and
(b) causing the master thread to move between the processors to cause each processor to execute its pipeline, wherein the transfer of data between processors is minimized.
- the method comprising the steps of;
Specification