EP1581908A2

System, method, and computer program product for near-real time load balancing across multiple rendering pipelines

Abstract

This record has no abstract on file.

Term

Term ended

Projected expiry passed 18 December 2023, 2.8 years ago.

  1. Priority
  2. Filed
  3. Published
  4. Projected expiry
  5. Today

20 claims: 5 independent, 15 dependent

  1. 1
    Claims of equivalent WO 2004061598 A2 WHAT IS CLAMED IS:1. A system for generating a sequence of computer graphics frames, the system comprising: a plurality of rendering pipelines that each receive a distinct subset of graphics data for a respective current frame in the sequence of frames, render said distinct subset of graphics data, and produce a performance report regarding the workload incurred by each respective rendering pipeline during said rendering;aperformance monitor that receives said performance report from each rendering pipeline and identifies a load imbalance;and an allocation module that reallocates graphics data for a next frame to said rendering pipelines, wherein reallocation depends on said load imbalance and seeks to reduce any subsequent load imbalance associated with rendering said next frame.
  2. 7
    A method of rendering successive frames using a plurality of rendering pipelines, the method comprising the steps of:(a) rendering a current frame, wherein eachrenderingpipeline renders a tile ofthe current frame;(b) generating a performance report for each rendering pipeline, each performance report indicating the workload incurred by the respective rendering pipeline during said rendering;(c) sending the performance reports to aperformance monitor;and (d) at each rendering pipeline, receiving graphics data associated with a tile of a next frame, wherein a plurality ofthe tiles ofthe next frame have been resized relative to the corresponding tiles ofthe current frame.
  3. 8
    A method of controlling the rendering of successive frames, wherein the rendering is performed using a plurality of rendering pipelines, the method comprising the steps of:(a) receiving aperformance report for each rendering pipeline, each performance report indicating the workload incurred by the respective rendering pipeline during rendering of a current frame;(b) deternήning whether the performance reports indicate a significant load imbalance among the rendering pipelines;(c) if a significant load balance is indicated, resizing at least one tile ofthe next frame relative to a corresponding tile ofthe current frame;and (d) sending graphics data associated with the next frame to the rendering pipelines, wherein the graphics data sent to a given rendering pipeline is associated with a tile ofthe next frame.
  4. 16
    A computer program product comprising a computer useable medium having control logic stored therein for causing a computer to render successive frames using a plurality of rendering pipelines, the computer control logic comprising:a first computer readable program code means for causing the computer to render a current frame, wherein each rendering pipeline renders a tile ofthe current frame;a second computer readable program code means for causing the computer to generate a performance report for each rendering pipeline, each performance report indicating the workload incurred by the respective rendering pipeline during said rendering;a third computer readable program code means for causing the computer to send the performance reports to a performance monitor;and a fourth computer readable program code means for causing the computer to allow receipt of graphics data at each rendering pipeline, wherein graphics data received at each rendering pipeline is associated with a tile of a next frame, and wherein a plurality ofthe tiles ofthe next frame have been resized relative to the corresponding tiles ofthe current frame.
  5. 17
    A computer program product comprising a computer useable medium having control logic stored therein for causing a computer to control the rendering of successive frames, wherein the rendering is performed using a plurality of rendering pipelines, the computer control logic comprising:a first computer readable program code means for causing the computer to receive a performance report for each rendering pipeline, each performance report indicating the workload incurred by the respective rendering pipeline during rendering of a current frame;a second computer readable program code means for causing the computer to determine whether the performance reports indicate a significant load imbalance among the rendering pipelines;a third computer readable program code means for causing the computer to rebalance the workload to be incurred by the rendering pipelines during rendering of a next frame, if a significant load balance is indicated, by resizing at least one tile ofthe next frame relative to a corresponding tile ofthe current frame;and a fourth computer readable program code means for causing the computer to send graphics data associated with the next frame to the rendering pipelines, wherein the graphics data sent to a given rendering pipeline is associated with a tile ofthe next frame.