Processing Unit Idle-Window Scheduling for Higher Utilization

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering 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

Engineering Contradiction:
Improvecomputational efficiencyVSAvoidresource utilization
Core Design Contradiction:
PowerVSProductivity

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

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

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

Inventive Principle:
Principle #15Dynamics

2Productivity

If tasks are scheduled during idle periods, then resource utilization is improved, but task execution time increases due to scheduling overhead

Engineering Contradiction:
Improveresource utilizationVSAvoidtask execution time
Core Design Contradiction:
ProductivityVSLoss of time

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

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS20260003675A1Resource utilization of a processing unit
Publication Date: 2026.01.01 MICROSOFT TECHNOLOGY LICENSING LLC
  • US20260003675A1 patent drawing
  • US20260003675A1 patent drawing
  • US20260003675A1 patent drawing

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.