×

Graphics subsytem for integation in a PC-based computing system and providing multiple GPU-driven pipeline cores supporting multiple modes of parallelization dynamically controlled while running a graphics application

  • US 20080129745A1
  • Filed: 10/26/2007
  • Published: 06/05/2008
  • Est. Priority Date: 01/28/2004
  • Status: Active Grant
First Claim
Patent Images

1. A graphics subsystem for integration in a PC-based computing system including (i) system memory for storing software graphics applications, software drivers and graphics libraries, (ii) an operating system (OS), stored in said system memory, (iii) one or more graphics applications, stored in said system memory, for generating a stream of geometrical data and graphics commands supporting the representation of one or more 3D objects in a scene having 3D geometrical characteristics and the viewing of images of said one or more 3D objects in said scene during an interactive process carried out between said PC-based computing system and a user thereof, (iv) one or more graphic libraries, stored in said system memory, for storing data used to implement said stream of geometrical data and graphics commands, (v) a central processing unit (CPU) on a motherboard for executing said OS, said graphics applications, said drivers and said graphics libraries, (vi) a CPU bus, and (vii) a display surface for displaying said images by graphically displaying frames of pixel data,wherein said graphics subsystem comprises:

  • a bridge chip located on said CPU bus, and having a routing unit, a control unit, and profiling unit;

    a plurality of GPU-driven pipeline cores arranged in a parallel architecture and operating according to one or more parallelization modes of operation, determined during the generation of each said frame of pixel data, so that said GPU-driven pipeline cores process data in a parallel manner; and

    software multi-pipe drivers, stored in said system memory, and including (i) a first software module allowing said GPU-driven pipeline cores to interact with said OS and said graphic libraries, (ii) a second software module for configuring said parallelization mode of operation, (iii) a third software module for continuous profiling and analyzing said graphics application, and (iv) a fourth software module for dynamically determining and controlling said parallelization mode during the generation of each said frame of pixel data during the running of said graphics application;

    wherein said routing unit located on said CPU bus and interfacing said CPU and said GPU-driven pipeline cores;

    wherein said control unit accepts commands from said software multi-pipe drivers, over said CPU bus, and controls components within said bridge chip, including said routing unit;

    wherein said profiling unit profiles the performance of said GPU-driven pipeline cores and feeds back performance data to said software multi-pipe drivers, for balancing the data load among said GPU-driven pipeline cores during said parallelization mode of operation;

    wherein, for each image of said 3D object to be generated and displayed on said display surface, the following operations are performed;

    (i) said routing unit routes said stream of geometrical data and graphic commands, or a portion thereof, from said CPU to one or more of said GPU-driven pipeline cores,(ii) one or more of said GPU-driven pipeline cores process said stream of geometrical data and graphic commands, or a portion thereof, during the generation of each said frame, while operating in said parallelization mode, so as to generate pixel data corresponding to at least a portion of said image, and(iii) said routing unit routes pixel data output from one or more of said GPU-driven pipeline cores during the composition of each frames of pixel data corresponding to a final image, for display on said display surface.

View all claims
  • 4 Assignments
Timeline View
Assignment View
    ×
    ×