GPU Shader Compositing for Display Tile Memory Bandwidth

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current systems for compositing image layers on electronic displays, typically performed by software blending modules on CPUs, are computationally intensive and inefficient, particularly in devices with constrained memory bandwidth, such as smartphones and game consoles, leading to performance issues.

Innovation Solution

Utilizing a GPU shader module to composite image layers by mapping them onto tiles with the same number and kind of layers, allowing for simultaneous processing and reducing the number of memory operations through the use of pixel and vertex shaders, thereby conserving memory bandwidth.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If software blending modules on CPU are used to composite image layers, then the compositing function can be achieved, but the computational load and memory operations are excessive

Engineering Contradiction:
Improvecompositing efficiencyVSAvoidcomputational load
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The patent replaces the CPU-based software blending module with a GPU-based hardware compositing system. The GPU's parallel processing architecture and dedicated shader modules efficiently handle image layer compositing operations, significantly reducing computational load and memory operations compared to traditional CPU-based software approaches.

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

Solution Approach 2:

The patent divides the display surface into multiple tiles, where each tile is processed independently by the GPU. This segmentation allows parallel processing of different regions of the display, improving compositing efficiency while reducing the computational burden on any single processing unit.

Inventive Principle:
Principle #1Segmentation

2Productivity

If traditional CPU-based compositing is used, then image layers can be merged, but memory bandwidth is excessively consumed

Engineering Contradiction:
Improvelayer merging speedVSAvoidmemory operations
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent replaces CPU-based memory operations with GPU-based hardware compositing. The GPU's memory architecture and shader modules are optimized for parallel memory access patterns, reducing the total number of memory operations required to composite multiple image layers compared to sequential CPU-based software blending.

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

Solution Approach 2:

By dividing the display into tiles and processing each tile independently on the GPU, the system reduces memory bandwidth requirements. Each tile can be processed with localized memory access, avoiding the need to load and process entire image layers across the full display resolution at once.

Inventive Principle:
Principle #1Segmentation

3Productivity

If GPU shader modules are used to composite image layers by mapping them to tiles, then processing efficiency is improved, but system complexity increases

Engineering Contradiction:
Improvecompositing performanceVSAvoidsystem architecture
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent utilizes the GPU's existing shader module infrastructure for compositing operations. The same GPU hardware and shader language ecosystem used for 3D graphics rendering is leveraged for 2D image layer compositing, avoiding the need for separate dedicated compositing hardware and reducing overall system complexity.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS9235911B2Rendering an image on a display screen
Publication Date: 2016.01.12 GOOGLE LLC
  • US9235911B2 patent drawing
  • US9235911B2 patent drawing
  • US9235911B2 patent drawing

AI summary

Systems and methods for compositing image layers using a GPU shader module. Image layers may be mapped to a destination surface and tiled such that each tile has the same number and kind of mapped image layers. The mapped image layers of a tile may be provided to a shader module, such as a pixel shader, to composite the image layers into display data.