Tile Rendering Scheduling Using Per-Tile Texture Hashes

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Tile-based graphics processing systems face inefficiencies in execution time, bandwidth utilization, and power consumption due to redundant computations and memory accesses, particularly in the rendering phase, as existing methods lack effective strategies to optimize texture access and cache utilization.

Innovation Solution

Incorporating per-tile hash values into tile control lists to enhance scheduling and cache management, using probabilistic data structures like Bloom filters to identify texture overlap and optimize tile processing order, and evicting least likely textures from the cache based on hash comparisons.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If traditional tile-based rendering is used without hash-based scheduling, then the rendering pipeline is simple, but execution time and power consumption increase due to redundant computations and memory accesses

Engineering Contradiction:
Improveexecution timeVSAvoidscheduling complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent computes per-tile hash values during the geometry processing phase (before rendering) to predict texture access patterns. This preliminary computation enables the scheduler to make informed decisions about tile processing order, grouping tiles that access similar textures together, thereby reducing redundant memory accesses and improving execution time without adding complexity during the actual rendering phase

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent uses hash values as feedback signals to guide the scheduling decisions. By comparing hash values of different tiles, the system can identify which tiles should be processed together based on their texture access patterns. This feedback mechanism enables dynamic scheduling adjustments that reduce redundant computations and memory accesses, directly addressing the execution time problem

Inventive Principle:
Principle #23Feedback

2Use of energy by moving object

If all textures are kept in cache, then texture access is fast, but bandwidth utilization increases and power consumption rises

Engineering Contradiction:
Improvepower consumptionVSAvoidtexture access performance
Core Design Contradiction:
Use of energy by moving objectVSReliability

Solution Approach 1:

The patent changes the parameter of cache management by using hash-based predictions to determine which textures are most likely to be needed. Instead of keeping all textures in cache, the system dynamically selects and evicts textures based on their hash values, optimizing the cache contents to match actual usage patterns. This reduces unnecessary bandwidth consumption and power usage while maintaining fast access to needed textures

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The system uses the hash values themselves as the basis for cache eviction decisions, allowing the texture access patterns to dictate their own management. Tiles with similar hash values (and thus similar texture access patterns) are grouped together, enabling the cache to be automatically optimized based on the workloads themselves without external intervention

Inventive Principle:
Principle #25Self-service

3Productivity

If tiles are processed in fixed spatial order, then scheduling is simple, but bandwidth utilization is inefficient due to lack of optimization

Engineering Contradiction:
Improvebandwidth utilizationVSAvoidscheduling simplicity
Core Design Contradiction:
ProductivityVSEase of operation

Solution Approach 1:

The patent introduces dynamic scheduling based on hash values instead of fixed spatial ordering. The scheduler dynamically reorders tiles based on their hash comparisons, grouping tiles with similar texture access patterns together. This dynamic approach optimizes bandwidth utilization by ensuring that tiles requiring similar textures are processed consecutively, reducing the need to fetch different textures from memory

Inventive Principle:
Principle #15Dynamics

Data Source

PatentEP3671654B1Tile-based scheduling
Publication Date: 2025.11.12 IMAGINATION TECH LTD
  • EP3671654B1 patent drawingFigure 1
  • EP3671654B1 patent drawingFigure 2A
  • EP3671654B1 patent drawingFigure 2B~2C

AI summary

The graphics processing unit described herein is configured to process graphics data using a rendering space which is sub-divided into a plurality of tiles. The graphics processing unit comprises a tiling unit and rendering logic. The tiling unit is arranged to generate a tile control list for each tile, the tile control list identifying each graphics data item present in the tile. The rendering logic is arranged to render the tiles using the tile control lists generated by the tiling unit. The tiling unit comprises per-tile hash generation logic arranged to generate, for each tile, a per-tile hash value based on a set of textures that will be accessed when processing the tile in the rendering logic, and the tiling unit is further arranged to store the per-tile hash value for a tile within the tile control list for the tile.