Tile-Based Rendering with Per-Tile Shader Comparison
Find Innovative SolutionsGenerate 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
Engineering 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
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.
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
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.
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
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.
Data Source
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.


