Tile-Based Rendering with Per-Tile Shader Comparison

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Graphics processing systems perform unnecessary redundant rendering when rendering the same content multiple times, leading to inefficient processing and resource utilization.

Innovation Solution

A method and system for a tile-based graphics pipeline that identifies and avoids redundant rendering by comparing per-tile vertex shader and render data with previous renders, using a data characterisation unit to store and compare information across stages of the graphics pipeline.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the graphics processing system performs rendering operations on all tiles without checking for redundancy, then the rendering output is complete and accurate, but the processing time and energy consumption increase due to redundant rendering operations

Engineering Contradiction:
Improverendering output accuracyVSAvoidprocessing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary comparison of render data with previous rendering results before executing the full rendering operation. The data characterisation unit stores and compares per-tile vertex shader data and render data to identify tiles that have not changed, allowing the system to skip redundant rendering operations while ensuring accuracy for tiles that have changed.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If the graphics processing system stores and compares detailed per-tile render data to identify redundant renders, then redundant processing is reduced, but the memory usage and system complexity increase

Engineering Contradiction:
Improverendering efficiencyVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system segments the rendering space into discrete tiles and stores characterisation data for each tile individually in the data characterisation unit. This allows comparison to be performed on a per-tile basis rather than requiring storage and comparison of entire frame buffers, reducing memory requirements while maintaining the ability to identify redundant renders efficiently.

Inventive Principle:
Principle #1Segmentation

3Loss of energy

If the graphics processing system compares per-tile vertex shader data and render data with previous renders, then redundant rendering is avoided, but the bandwidth consumption and power usage increase due to data transfer and processing

Engineering Contradiction:
Improvepower consumptionVSAvoidbandwidth consumption
Core Design Contradiction:
Loss of energyVSLoss of information

Solution Approach 1:

The system creates compact characterisation data copies of the essential rendering parameters (per-tile vertex shader data and render data) and stores them in the data characterisation unit. These copies are used for comparison purposes without requiring transfer or processing of the full original render data, thereby reducing bandwidth consumption and power usage while still enabling effective identification of redundant renders.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS20250349063A1Reducing Redundant Rendering in a Graphics System
Publication Date: 2025.11.13 IMAGINATION TECH LTD
  • US20250349063A1 patent drawing
  • US20250349063A1 patent drawing
  • US20250349063A1 patent drawing

AI summary

A method and system 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. For a selected tile of a plurality of tiles, a representation of per-tile vertex shader data identifying vertex shader programs used to generate processed primitives located within the selected tile is stored, and it is determined whether the output of a previous render for the selected tile can be used as an output for the render, by comparing the per-tile vertex shader data of the selected tile of the render with that of the previous render.