Graphics Processing Cost Estimates for Frame Rendering Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current graphics processing units (GPUs) face challenges in efficiently estimating and utilizing cost estimates for graphics frame rendering, leading to inefficiencies in resource allocation and rendering time, particularly in scenarios where small sections of renders take disproportionately long to complete.

Innovation Solution

The implementation of tile-based deferred rendering techniques, where cost estimates are generated based on geometry, object types, coverage area, and other factors to schedule render tasks effectively, allowing for the reuse of render data and context switching based on cost similarity thresholds.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If traditional rendering scheduling is used without cost estimation, then the rendering process is simpler, but resource allocation efficiency deteriorates and rendering time increases

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

Solution Approach 1:

The system performs preliminary cost estimation for each tile group before actual rendering, calculating the processing cost based on primitive counts, coverage areas, and other factors. This advance estimation allows the scheduler to allocate resources efficiently and balance workload across rendering passes, improving overall rendering efficiency without adding significant complexity during the rendering execution phase.

Inventive Principle:
Principle #10Preliminary action

2Measurement precision

If cost estimation is performed for all frame portions, then scheduling accuracy improves, but processing overhead increases

Engineering Contradiction:
Improvecost estimation accuracyVSAvoidprocessing time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The frame is divided into multiple tile groups, and cost estimation is performed independently for each tile group rather than for the entire frame. This segmentation allows parallel computation of cost estimates and enables selective processing - only tile groups that require rendering are fully processed, while others can be skipped or processed with less detail, reducing overall processing overhead while maintaining scheduling accuracy for rendered portions.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs cost estimation at a reduced level for preliminary scheduling purposes, using simplified metrics such as primitive counts and basic coverage areas. Full detailed estimation is only performed for tile groups that are determined to require rendering. This partial action approach provides sufficient scheduling accuracy while minimizing the time and resources spent on cost estimation.

Inventive Principle:
Principle #16Partial or excessive action

3Loss of energy

If duplicate frame rendering is not skipped, then rendering completeness is ensured, but power consumption and processing time increase

Engineering Contradiction:
Improvepower consumptionVSAvoidrendering completeness
Core Design Contradiction:
Loss of energyVSReliability

Solution Approach 1:

The system compares cost estimates between consecutive frames and uses this feedback to identify duplicate or near-duplicate frames. When a frame's cost estimate matches or closely matches a previous frame's cost estimate, the system infers that the frame content is likely identical or similar and skips rendering, thereby reducing power consumption. The feedback mechanism ensures that only frames with meaningful changes are rendered, maintaining rendering completeness for visible changes while eliminating redundant processing.

Inventive Principle:
Principle #23Feedback

4Ease of operation

If tile-based deferred rendering is implemented with cost estimation, then resource allocation improves, but system complexity increases

Engineering Contradiction:
Improveresource allocation efficiencyVSAvoidsystem complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The cost estimation circuitry is integrated into the existing tile-based deferred rendering architecture, serving multiple functions: it provides scheduling information for workload balancing, enables duplicate frame detection, supports power management decisions, and facilitates performance optimization. This multi-functionality reduces the need for separate specialized systems, thereby improving resource allocation efficiency without proportionally increasing system complexity.

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

Data Source

PatentUS11257179B2Graphics processing techniques based on frame portion cost estimates
Publication Date: 2022.02.22 APPLE INC
  • US11257179B2 patent drawing
  • US11257179B2 patent drawing
  • US11257179B2 patent drawing

AI summary

Techniques are disclosed relating to using cost estimates for portions of a graphics frame to schedule graphics rendering tasks. In some embodiments, a processor generates a first set of cost estimates for respective different portions of a frame for a first render and a second set of cost estimates for respective different portions of a frame for a second render. In some embodiments, the processor compares the first set of cost estimates with the second set of cost estimates. In response to an output of the comparison meeting a first threshold level of similarity, the graphics processor may use one or more portions of the frame generated by the first render for the second render instead of performing the second render for the one or more portions.