GPU Task Scheduling via Pass Group and Age Prioritization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Complex scheduling circuitry in GPUs consumes significant area and power, which is problematic in mobile graphics applications where battery power is limited, and existing scheduling approaches may not efficiently manage different processing workloads.

Innovation Solution

A graphics processing unit with scheduling circuitry that maintains pass group and relative age information to select tasks for execution, prioritizing tasks from the oldest frame portion and current pass group, and using a round-robin approach if necessary, to optimize task scheduling without requiring complex hardware.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If complex scheduling circuitry is used to manage different processing workloads efficiently, then task scheduling performance is improved, but area and power consumption increase

Engineering Contradiction:
Improvetask scheduling performanceVSAvoidscheduling circuitry complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the frame into multiple frame portions and organizes tasks into pass groups, where each pass group contains tasks for a specific frame portion. This segmentation allows the scheduling circuitry to manage tasks in smaller, organized units rather than handling all tasks simultaneously, improving scheduling efficiency while keeping the circuitry manageable in complexity

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent maintains pass group information and relative age information for frame portions in advance of task execution. By pre-organizing tasks into pass groups and tracking frame portion ages beforehand, the scheduling circuitry can make efficient task selections without requiring complex real-time analysis, thus improving productivity while limiting circuitry complexity

Inventive Principle:
Principle #10Preliminary action

2Productivity

If complex scheduling circuitry is used to manage different processing workloads efficiently, then task scheduling performance is improved, but power consumption increases

Engineering Contradiction:
Improvetask scheduling performanceVSAvoidpower consumption
Core Design Contradiction:
ProductivityVSUse of energy by stationary object

Solution Approach 1:

By segmenting tasks into pass groups associated with specific frame portions, the scheduling circuitry processes tasks in organized batches rather than continuously analyzing all tasks. This segmentation reduces the computational burden and power consumption of the scheduling circuitry while maintaining effective task management across different workloads

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The circuitry pre-maintains pass group information and relative age information for frame portions before task execution begins. This preliminary organization eliminates the need for complex real-time scheduling decisions during execution, reducing power consumption while ensuring efficient task scheduling performance

Inventive Principle:
Principle #10Preliminary action

3Device complexity

If simple scheduling approaches are used to reduce area and power consumption, then device complexity is reduced, but task scheduling performance deteriorates

Engineering Contradiction:
Improvescheduling circuitry complexityVSAvoidtask scheduling performance
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent implements a dynamic scheduling approach where the circuitry selectively applies different scheduling strategies based on task characteristics. The scheduler can choose between strict pass group ordering, age-based prioritization, or round-robin selection depending on the specific workload and frame portion state, achieving high task scheduling performance with relatively simple circuitry that adapts to different scenarios

Inventive Principle:
Principle #15Dynamics

4Use of energy by stationary object

If simple scheduling approaches are used to reduce power consumption, then energy usage is reduced, but task scheduling performance deteriorates

Engineering Contradiction:
Improvepower consumptionVSAvoidtask scheduling performance
Core Design Contradiction:
Use of energy by stationary objectVSProductivity

Solution Approach 1:

The dynamic scheduling approach allows the circuitry to use simpler scheduling logic when workloads permit, reducing power consumption. When performance demands increase or specific task patterns are detected, the circuitry can switch to more sophisticated scheduling strategies, thus achieving good task scheduling performance with lower average power consumption compared to always using complex scheduling

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS10902545B2GPU task scheduling
Publication Date: 2021.01.26 APPLE INC
  • US10902545B2 patent drawing
  • US10902545B2 patent drawing
  • US10902545B2 patent drawing

AI summary

Techniques are disclosed relating to scheduling tasks for graphics processing. In one embodiment, a graphics unit is configured to render a frame of graphics data using a plurality of pass groups and the frame of graphics data includes a plurality of frame portions. In this embodiment, the graphics unit includes scheduling circuitry configured to receive a plurality of tasks, maintain pass group information for each of the plurality of tasks, and maintain relative age information for the plurality of frame portions. In this embodiment, the scheduling circuitry is configured to select a task for execution based on the pass group information and the age information. In some embodiments, the scheduling circuitry is configured to select tasks from an oldest frame portion and current pass group before selecting other tasks. This scheduling approach may result in efficient execution of various different types of graphics workloads.