Bounding Region Accumulation in GPU Raster Unit

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing 3-D rendering architectures face challenges in scaling to handle complex scenes and applications, such as OpenVG screen effects and lens flare effects, while traditional methods to enhance performance lead to increased power consumption and reduced fabrication yield.

Innovation Solution

A method and system for bounding region accumulation within a GPU's raster unit, where graphics primitives are rasterized to generate pixels and bounding regions, allowing for efficient accumulation and access to facilitate subsequent rendering operations, enabling real-time complex rendering effects without increasing power consumption or reducing yield.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If traditional unidirectional pixel generation methods are used, then pixel coverage is achieved, but sequence shifting causes inefficiency

Engineering Contradiction:
Improverendering efficiencyVSAvoidsequence shifting time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent pre-calculates and stores bounding box information for graphics primitives before the rasterization process begins. This preliminary action allows the system to quickly determine which pixels need to be rendered without performing time-consuming sequence shifts during the actual rendering operation, thereby resolving the contradiction between achieving pixel coverage and maintaining rendering efficiency.

Inventive Principle:
Principle #10Preliminary action

2Speed

If increasing clock speed is used to improve performance, then rendering speed increases, but power consumption and heat production increase

Engineering Contradiction:
Improverendering speedVSAvoidpower consumption
Core Design Contradiction:
SpeedVSUse of energy by moving object

Solution Approach 1:

The system performs preliminary calculations to determine bounding boxes and pixel coverage before actual rendering. By pre-determining which pixels need to be processed, the system can skip unnecessary rendering operations, thereby achieving high rendering speed without proportionally increasing power consumption through clock speed multiplication.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

Instead of rendering all pixels at full speed, the patent applies partial rendering by only processing pixels that fall within the calculated bounding boxes. This selective approach achieves the necessary rendering speed for complex scenes while avoiding the excessive power consumption that would result from attempting to render every pixel on the screen.

Inventive Principle:
Principle #16Partial or excessive action

3Productivity

If incorporating large numbers of parallel execution units is used, then rendering performance increases, but integrated circuit die size and power requirements increase

Engineering Contradiction:
Improverendering performanceVSAvoidintegrated circuit die size
Core Design Contradiction:
ProductivityVSArea of stationary object

Solution Approach 1:

The patent employs preliminary bounding box calculation to identify only the necessary pixels for rendering. This approach allows the system to achieve high rendering performance through software optimization rather than hardware expansion, thereby avoiding the need for large integrated circuit die sizes and the associated power requirements.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent replaces the mechanical approach of adding more parallel execution units (hardware expansion) with an algorithmic approach using bounding box calculations and selective pixel rendering (software optimization). This substitution achieves improved rendering performance without the physical constraints and power consumption issues of increasing circuit die size.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

4Adaptability or versatility

If traditional rendering methods are used, then basic rendering is achieved, but complex screen effects and real-time rendering of complex objects cannot be implemented

Engineering Contradiction:
Improvecomplex rendering effects capabilityVSAvoidreal-time rendering capability
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent performs preliminary bounding box calculations and pixel coverage determinations before applying complex rendering effects. This preliminary action enables the system to efficiently handle complex screen effects like OpenVG and lens flare by first identifying which pixels and regions require these effects, thereby maintaining real-time rendering capability while achieving high adaptability.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent segments the rendering process into distinct phases: preliminary bounding box calculation, pixel coverage determination, and then application of complex rendering effects. This segmentation allows complex effects to be applied only where necessary, maintaining real-time performance while enabling versatile handling of complex scenes and special effects.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS7808512B1Bounding region accumulation for graphics rendering
Publication Date: 2010.10.05 NVIDIA CORP
  • US7808512B1 patent drawing
  • US7808512B1 patent drawing
  • US7808512B1 patent drawing

AI summary

In a raster unit of a graphics processor, a method for bounding region accumulation for graphics rendering. The method includes receiving a plurality of graphics primitives for rasterization in a raster stage of a graphics processor and rasterizing the graphics primitives to generate a plurality pixels related to the graphics primitives and a plurality of respective bounding regions related to the graphics primitives. Upon receiving an accumulation start command, the bounding regions are accumulated in an accumulation register. The accumulation continues until an accumulation stop command is received. The operation results in an accumulated bounding region. Access to the accumulated bounding region is enabled to facilitate a subsequent graphics rendering operation.