GPU Command Stream Hinting for Power Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional power management techniques for graphics processing units (GPUs) rely on coarse-grained attributes like GPU utilization history, which are not accurate for predicting incoming workloads, lacking context awareness and failing to identify specific performance and power requirements.

Innovation Solution

Incorporating command stream hints into the GPU command stream to characterize incoming workloads, allowing the power management unit to perform power management processes before execution, such as power collapsing or adjusting voltage and frequency, based on workload characteristics like application type, context, render mode, workload size, and quality of service levels.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If conventional power management techniques use coarse-grained attributes like GPU utilization history, then the system can maintain simple power management logic, but the accuracy of predicting incoming workloads and identifying specific performance requirements deteriorates

Engineering Contradiction:
Improvepower management logic complexityVSAvoidworkload prediction accuracy
Core Design Contradiction:
Device complexityVSMeasurement precision

Solution Approach 1:

The system performs preliminary workload characterization by inserting command stream hints into the GPU command stream before execution. These hints provide advance information about the upcoming workload's application type, context, render mode, size, and quality of service requirements, enabling the power management unit to make informed decisions before the workload actually executes, rather than relying on coarse historical utilization data

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

Command stream hints act as an intermediary mechanism between the workload generator and the power management unit. These hints carry detailed workload characterization information through the command stream, allowing the power management unit to accurately predict incoming workload requirements without requiring complex analysis of historical utilization patterns

Inventive Principle:
Principle #24Intermediary (Mediator)

2Use of energy by moving object

If the system proactively adjusts power consumption based on anticipated workload demands, then power efficiency and battery life improve, but the device complexity increases due to the need for command stream hinting and proactive power management

Engineering Contradiction:
Improvepower efficiencyVSAvoidpower management system complexity
Core Design Contradiction:
Use of energy by moving objectVSDevice complexity

Solution Approach 1:

The power management unit proactively adjusts power consumption by analyzing command stream hints before the workload executes. This allows the system to pre-adjust voltage, frequency, and power state based on anticipated workload demands rather than reacting to actual execution, improving power efficiency while using the existing command stream infrastructure

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system uses the existing command stream mechanism to carry workload characterization information, allowing the power management unit to self-configure based on the hints provided in the command stream. This approach leverages existing infrastructure rather than requiring entirely new complexity for workload characterization

Inventive Principle:
Principle #25Self-service

Data Source

PatentEP3345092B1Characterizing GPU workloads and power management using command stream hinting
Publication Date: 2021.10.27 QUALCOMM INC
  • EP3345092B1 patent drawingFigure 1
  • EP3345092B1 patent drawingFigure 2
  • EP3345092B1 patent drawingFigure 3

AI summary

A method of graphics processing comprising receiving, at a graphics processing unit (GPU), a command stream, the command stream including one or more commands to be performed by the GPU and at least one command stream hint, the at least one command stream hint providing a characterization of a workload of the command stream, performing, by the GPU, a power management process based on the at least one command stream hint prior to executing the command stream, and executing, by the GPU, the command stream.