Processing Unit Idle-Window Scheduling for Higher Utilization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The utilization of processing units, particularly in compute-intensive services like cloud gaming and streaming media, is often low due to unpredictable and random task processing requirements, leading to resource waste and increased operational costs.
Innovation Solution
Determine an idle period of time for a processing unit based on instant execution information of a first service and schedule tasks of a second service with predictable execution duration within this period to maximize resource utilization without interfering with the first service.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Power
If dedicated processing units are used for compute-intensive services, then computational efficiency is improved, but resource utilization deteriorates due to low utilization states
Solution Approach 1:
The processing unit is designed to handle multiple types of tasks from different services. The system dynamically allocates the processing unit between the first service (compute-intensive) and second service (predictable execution) tasks, allowing the same hardware resource to serve multiple functions and improve overall utilization while maintaining efficiency for both service types
Solution Approach 2:
The system implements dynamic task scheduling that adjusts the allocation of the processing unit based on real-time conditions. The scheduler monitors the execution state of first service tasks and dynamically inserts second service tasks during idle periods, creating a flexible system that adapts to varying workload demands and optimizes resource utilization without sacrificing computational efficiency
2Productivity
If tasks are scheduled during idle periods, then resource utilization is improved, but task execution time increases due to scheduling overhead
Solution Approach 1:
The system performs preliminary identification of idle periods by monitoring the execution patterns of first service tasks. Second service tasks are pre-scheduled to execute during these predicted idle windows, allowing the scheduler to prepare and queue tasks in advance without adding significant overhead during critical execution paths, thus improving utilization while minimizing time loss
Data Source
AI summary
According to implementations of the present disclosure, there is provided a solution for resource utilization of a processing unit. According to the solution, a first period of time for a processing unit is determined at least based on instant execution information of a task of a first service, during the first period of time execution of the task of the first service is suspended on the processing unit. At least based on a predicted execution duration of a task of a second service, at least one task of the second service that is to be completed within the first period of time is selected. The at least one task of the second service is scheduled to be executed by the processing unit within the first period of time. In this way, resources of the processing unit can be fully utilized, and the resource utilization is improved.


