GPU Task Scheduling with Priority Ring Buffers for Frame Freeze Reduction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The increasing refresh rates of display screens in electronic devices lead to heavy GPU load, causing GPU tasks to be queued in a first-created-first-executed order, which results in freezing and frame dropping of the currently displayed picture due to long execution times of earlier tasks blocking later tasks, affecting user experience.
Innovation Solution
A task scheduling method that sorts GPU tasks in descending order of priorities and allocates resources to ring buffers such that higher-priority tasks are executed first, preempting resources to ensure tasks related to the foreground display are not blocked by lower-priority tasks with longer execution times.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If GPU tasks are processed in first-created-first-executed order, then task execution order is simple, but high-priority display tasks are blocked by low-priority tasks with long execution times
Solution Approach 1:
The patent implements dynamic task scheduling by introducing multiple priority levels and allowing tasks to be rescheduled based on priority. The GPU driver dynamically adjusts task execution order by identifying high-priority display tasks and preempting lower-priority tasks, making the scheduling system adaptive rather than static.
Solution Approach 2:
The patent introduces a task scheduler as an intermediary layer between task submission and GPU execution. This scheduler intercepts tasks, assigns priorities, and manages task queues, acting as a mediator that resolves conflicts between competing tasks without requiring changes to the GPU hardware or fundamental execution architecture.
2Speed
If GPU frequency is increased to reduce task queuing time, then task execution speed improves, but power consumption increases
Solution Approach 1:
Instead of changing the GPU frequency parameter, the patent changes the scheduling parameters - specifically task priority levels and execution order. By reordering tasks based on priority rather than increasing processing speed, the system achieves faster display task completion without altering GPU operating parameters that would increase power consumption.
3Adaptability or versatility
If multiple ring buffers are used for resource allocation, then resource preemption capability improves, but system complexity increases
Solution Approach 1:
The patent segments the single ring buffer into multiple priority-based ring buffers or logical partitions within buffers. Each buffer or partition handles tasks of specific priority levels, allowing independent management and preemption control. This segmentation enables flexible resource allocation while maintaining manageable complexity through structured organization.
Data Source
AI summary
This application provides a task scheduling method, an electronic device, a storage medium, and a chip, and relates to the field of terminal technologies. The method includes: acquiring a plurality of graphics processing unit (GPU) tasks, and sorting the plurality of GPU tasks in descending order of priorities of GPU task types; allocating resources to the plurality of GPU tasks in a plurality of ring buffers, so that resource proportions of GPU tasks sorted higher are higher at positions closer to heads of the plurality of ring buffers; and sequentially executing the plurality of GPU tasks. By using the method, in a scenario with heavy GPU load, freezing of a currently displayed picture of an electronic device can be reduced, thereby improving the user experience. This solution requires no GPU frequency increase, so that no GPU power consumption increase is caused.


