Dynamic Application Scheduling Across Processing Units

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing application scheduling mechanisms fail to dynamically adjust application placement across multiple processing units, leading to inefficiencies in load balancing, resource utilization, and quality of service, as applications are initially scheduled and fixed, making it difficult to adapt to changing workloads and resource demands.

Innovation Solution

A method and apparatus for scheduling applications by continuously monitoring influence factors such as resource utilization and topology, allowing for the flexible and dynamic rescheduling of applications across different processing units to balance workload and ensure quality of service, using a scheduler that collects influence factors, selects target applications and processing units, and executes the rescheduling.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If applications are initially scheduled and fixed on processing units, then the scheduling process is simple and stable, but the system cannot adapt to changing workloads and resource demands, leading to poor load balancing and resource utilization

Engineering Contradiction:
Improveadaptability to changing workloadsVSAvoidscheduling system complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements dynamic scheduling by continuously monitoring influence factors (CPU utilization, memory utilization, I/O utilization, network utilization, application priorities, and quality of service parameters) and automatically rescheduling applications based on real-time conditions. The scheduler dynamically adjusts application placement across processing units rather than using static initial scheduling, enabling the system to adapt to changing workloads and resource demands.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent employs feedback mechanisms by continuously monitoring system state through influence factors and using this information to make informed scheduling decisions. The scheduler collects real-time data on resource utilization and application performance, then uses this feedback to determine when and how to reschedule applications, creating a closed-loop control system that adapts to changing conditions.

Inventive Principle:
Principle #23Feedback

2Productivity

If applications are dynamically rescheduled based on multiple influence factors, then load balancing and resource utilization improve, but the scheduling system becomes more complex

Engineering Contradiction:
Improveresource utilization efficiencyVSAvoidscheduling mechanism complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system dynamically adjusts application scheduling based on real-time monitoring of multiple influence factors including CPU utilization, memory utilization, I/O utilization, network utilization, application priorities, and quality of service parameters. This dynamic approach enables the system to optimize resource utilization and load balancing by continuously adapting to changing workloads rather than relying on static scheduling decisions.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes scheduling parameters by monitoring multiple influence factors (CPU utilization, memory utilization, I/O utilization, network utilization, application priorities, and quality of service parameters) and using these parameter variations to trigger and guide rescheduling decisions. The system adjusts scheduling behavior based on changes in these parameters to optimize overall system performance.

Inventive Principle:
Principle #35Parameter changes

3Reliability

If multiple influence factors are monitored for scheduling decisions, then the quality of service and load balancing improve, but the complexity of detecting and measuring increases

Engineering Contradiction:
Improvequality of serviceVSAvoidmonitoring complexity
Core Design Contradiction:
ReliabilityVSDifficulty of detecting and measuring

Solution Approach 1:

The patent implements a universal monitoring framework that tracks multiple influence factors (CPU utilization, memory utilization, I/O utilization, network utilization, application priorities, and quality of service parameters) through a single scheduling system. This multi-functional approach consolidates the detection and measurement of various system parameters into one integrated mechanism, improving quality of service while managing monitoring complexity through unification.

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

4Productivity

If applications are rescheduled frequently to balance workload, then resource utilization improves, but the overhead of migration and scheduling operations increases

Engineering Contradiction:
Improveworkload distribution efficiencyVSAvoidscheduling overhead time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent applies partial rescheduling actions by selectively migrating only those applications that require balancing rather than rescheduling all applications. The system monitors influence factors and triggers rescheduling only when necessary to achieve load balancing, avoiding unnecessary migration overhead while still improving workload distribution efficiency through targeted interventions.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS10877800B2Method, apparatus and computer-readable medium for application scheduling
Publication Date: 2020.12.29 EMC IP HLDG CO LLC
  • US10877800B2 patent drawing
  • US10877800B2 patent drawing
  • US10877800B2 patent drawing

AI summary

Embodiments of the present disclosure provide a method, apparatus and computer-readable medium for application scheduling. In accordance with embodiments of the present disclosure, influence factors related to scheduling of a plurality of applications between a plurality of processing units of a computing system are obtained, the plurality of applications being run by at least one of the plurality of processing units. Based on the obtained influence factors, a target application to be scheduled is selected from the plurality of applications and a first processing unit is selected from the plurality of processing units, the first processing unit being different from a second processing unit of the at least one processing unit running the target application. The target application is scheduled from the second processing unit to the first processing unit to continue running of the target application by the first processing unit.