Tile-Based GPU Rendering with Per-Tile Redundancy Detection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Graphics processing systems face inefficiencies due to redundant rendering operations, particularly in tile-based systems, where the same rendered values are produced multiple times for unchanged image portions, leading to unnecessary processing.

Innovation Solution

A method and system for a graphics processing unit that implements a tile-based graphics pipeline, where it identifies and avoids redundant renders by comparing per-tile vertex shader and render data with previous renders, using pre- and post-geometry phase data to determine if a render can be skipped.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If the graphics processing system performs rendering operations for each tile in the rendering space, then the rendering output is generated, but redundant processing occurs when the same rendered values are produced multiple times for unchanged image portions

Engineering Contradiction:
Improverendering efficiencyVSAvoidpower consumption
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The system performs preliminary comparison of vertex shader data and render data with previous render results before executing the full rendering pipeline. This preliminary action identifies tiles that have not changed, allowing the system to skip redundant rendering operations and directly use previous results, thereby reducing power consumption while maintaining rendering efficiency

Inventive Principle:
Principle #10Preliminary action

2Loss of energy

If the graphics processing system compares render data with previous renders to detect redundant renders, then redundant processing is reduced, but additional processing steps and data comparison operations are introduced

Engineering Contradiction:
Improvepower consumptionVSAvoidprocessing pipeline complexity
Core Design Contradiction:
Loss of energyVSDevice complexity

Solution Approach 1:

The system extracts and compares only specific critical data elements (vertex shader data and render data) from the full rendering pipeline rather than analyzing all rendering operations. This selective extraction approach enables redundancy detection with minimal additional processing complexity, as it focuses only on the key parameters that determine whether a tile's visual output will change

Inventive Principle:
Principle #2Taking out (Extraction)

3Volume of stationary object

If the graphics processing system uses tile-based rendering with on-chip memory storage, then the amount of on-chip memory is reduced, but redundant rendering operations increase processing delays

Engineering Contradiction:
Improveon-chip memory sizeVSAvoidprocessing delay
Core Design Contradiction:
Volume of stationary objectVSLoss of time

Solution Approach 1:

The system implements a feedback mechanism where render results from previous frames are stored and compared with current render data. This feedback loop enables the system to quickly identify unchanged tiles and skip their rendering, reducing processing delays despite the tile-based architecture's inherent sequential processing characteristics

Inventive Principle:
Principle #23Feedback

Data Source

PatentEP4254339B1Reducing redundant rendering in a graphics system
Publication Date: 2026.03.25 IMAGINATION TECH LTD
  • EP4254339B1 patent drawingFigure 1
  • EP4254339B1 patent drawingFigure 2
  • EP4254339B1 patent drawingFigure 3

AI summary

A method and system are disclosed for performing a render using a graphics processing unit that implements a tile-based graphics pipeline where a rendering space is sub-divided into tiles. Geometry data for the render is received, the geometry data including primitives associated with one or more vertex shader programs. The geometry data is processed using the vertex shader programs to generate processed primitives, and it is determined which tile each of the processed primitives are located in. For at least one selected tile there is stored i) a representation of per-tile vertex shader data identifying the one or more vertex shader programs used to generate the processed primitives in that tile, and ii) a representation of per-tile render data that can be used when rendering the processed primitives in that tile in subsequent stages of the graphics pipeline. it is determined whether the output of a previous render for the selected tile(s) can be used as an output for the render by comparing the per-tile vertex shader data of that tile with that of the previous render before comparing the per-tile render data of that tile with that of the previous render.