Multi-mode parallel graphics rendering system employing real-time automatic scene profiling and mode control
First Claim
1. A multi-mode parallel graphics rendering system (MMPGRS) embodied within a host computing system having a CPU for executing one or more graphics-based applications, CPU memory for storing said one or more graphics-based applications and a graphics library for generating graphics commands and data during the execution of each said graphics-based application, and a display device for displaying images of a 3D scene containing graphics during the execution of said one or more graphics-based applications, said MMPGRS supporting object, image and time division modes of parallel operation and comprising:
- (1) a multi-mode parallel graphics rendering subsystem including(i) three parallelization stages including a decompose module, a distribute module and a recompose module, and(ii) a plurality of graphic processing pipelines (GPPLs) for supporting a graphics rendering process that employs two or more of modes of parallel graphics rendering operation during a single session of said one or more graphics-based applications in order to execute graphic commands and process graphics data and generate images of said 3D scene for display, wherein each said GPPL includes a primary GPPL having a frame buffer for recompositing images; and
(2) a profiling and control mechanism (PCM) having a profiling and control cycle for automatically and dynamically profiling, on a frame by frame basis, said one or more graphics-based applications being executed on said host computing system, and controlling the modes of parallel graphics rendering operation of said MMPGRS during run-time of said one or more graphics based applications;
wherein for each said mode of parallel graphics rendering operation supported by said MMPGRS, said MMPGRS has one state of corresponding operation;
wherein said PCM performs profiling and control functions using multiple data stores, including (i) a historical repository for continuously storing up acquired data having historical depth, to construct a behavioral profile of currently running graphics-based applications, and (ii) a behavioral profile database (DB) for storing an application profile library of prior-known graphics-based applications, and enriched by newly constructed profiles for said prior-known graphics-based applications using data accessed from said historical repository;
wherein said decompose module divides up the stream of graphic commands and data according to the mode of parallel graphics rendering operation determined by said PCM;
wherein said distribute module physically distributes the streams of graphics commands and data to said plurality of GPPLs;
wherein said GPPLs execute said graphics commands using said graphics data and generate partial pixel data sets associated with frames of pixel images to be composited by the primary GPPL in said MMPGRS; and
wherein said recompose module merges together the partial pixel data sets produced from said GPPLs, according to said mode of parallel operation at any instant in time, and producing a final pixel data set within the frame buffer of said primary GPPL, which is sent into said display device for display;
wherein said decompose module, said distribute module and said recompose module each have multiple sub-states of operation, and cooperate to carry out all functions required by the different modes of parallel graphics rendering operation supported on said MMPGRS;
wherein said PCM controls the sub-states of said decompose, distribute and recompose modules, and transitions of the sub-states of said decompose, said distribute and said recompose modules; and
wherein each of said decompose, distribute and recompose modules is induced into a sub-state by setting parameters, and the mode and also the state of parallel graphics rendering operation of said MMPGRS is established by the combination of said sub-states.
4 Assignments
0 Petitions
Accused Products
Abstract
A multi-mode parallel 3-D graphics system having multiple graphics processing pipelines with multiple GPUs supporting a parallel graphics rendering process having time, frame and object division modes of operation, wherein each GPU comprises video memory, a geometry processing subsystem and a pixel processing subsystem, and wherein 3D scene profiling is performed in real-time, and the parallelization state/modes of the system are dynamically controlled to meet graphics application requirements. The multiple modes of parallel graphics rendering use real-time graphics application profiling, and dynamic control over time-division, frame-division, and object-division modes of parallel operation, within the same parallel graphics platform, which can be realized on PC-based computing system architectures.
-
Citations
21 Claims
-
1. A multi-mode parallel graphics rendering system (MMPGRS) embodied within a host computing system having a CPU for executing one or more graphics-based applications, CPU memory for storing said one or more graphics-based applications and a graphics library for generating graphics commands and data during the execution of each said graphics-based application, and a display device for displaying images of a 3D scene containing graphics during the execution of said one or more graphics-based applications, said MMPGRS supporting object, image and time division modes of parallel operation and comprising:
-
(1) a multi-mode parallel graphics rendering subsystem including (i) three parallelization stages including a decompose module, a distribute module and a recompose module, and (ii) a plurality of graphic processing pipelines (GPPLs) for supporting a graphics rendering process that employs two or more of modes of parallel graphics rendering operation during a single session of said one or more graphics-based applications in order to execute graphic commands and process graphics data and generate images of said 3D scene for display, wherein each said GPPL includes a primary GPPL having a frame buffer for recompositing images; and (2) a profiling and control mechanism (PCM) having a profiling and control cycle for automatically and dynamically profiling, on a frame by frame basis, said one or more graphics-based applications being executed on said host computing system, and controlling the modes of parallel graphics rendering operation of said MMPGRS during run-time of said one or more graphics based applications; wherein for each said mode of parallel graphics rendering operation supported by said MMPGRS, said MMPGRS has one state of corresponding operation; wherein said PCM performs profiling and control functions using multiple data stores, including (i) a historical repository for continuously storing up acquired data having historical depth, to construct a behavioral profile of currently running graphics-based applications, and (ii) a behavioral profile database (DB) for storing an application profile library of prior-known graphics-based applications, and enriched by newly constructed profiles for said prior-known graphics-based applications using data accessed from said historical repository; wherein said decompose module divides up the stream of graphic commands and data according to the mode of parallel graphics rendering operation determined by said PCM; wherein said distribute module physically distributes the streams of graphics commands and data to said plurality of GPPLs; wherein said GPPLs execute said graphics commands using said graphics data and generate partial pixel data sets associated with frames of pixel images to be composited by the primary GPPL in said MMPGRS; and wherein said recompose module merges together the partial pixel data sets produced from said GPPLs, according to said mode of parallel operation at any instant in time, and producing a final pixel data set within the frame buffer of said primary GPPL, which is sent into said display device for display; wherein said decompose module, said distribute module and said recompose module each have multiple sub-states of operation, and cooperate to carry out all functions required by the different modes of parallel graphics rendering operation supported on said MMPGRS; wherein said PCM controls the sub-states of said decompose, distribute and recompose modules, and transitions of the sub-states of said decompose, said distribute and said recompose modules; and wherein each of said decompose, distribute and recompose modules is induced into a sub-state by setting parameters, and the mode and also the state of parallel graphics rendering operation of said MMPGRS is established by the combination of said sub-states. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21)
-
Specification