Dynamic Resource Allocation for Schedulers via Feedback

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing computer systems face inefficiencies in resource allocation for tasks with varying processing demands and priorities, as schedulers may not optimize resource allocation due to varying processing conditions, leading to suboptimal performance.

Innovation Solution

A resource manager dynamically allocates and adjusts resources to schedulers based on feedback, ensuring optimal resource utilization by considering the policies of each scheduler and available resources, and commits or rolls back changes based on performance improvements.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If static resource allocation is used for schedulers, then system simplicity is maintained, but scheduler performance optimization under varying processing conditions deteriorates

Engineering Contradiction:
Improveresource allocation mechanismVSAvoidscheduler performance
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent implements dynamic resource allocation where the resource manager continuously monitors scheduler performance metrics and adjusts resource allocation in real-time based on current processing conditions. This transforms the static allocation mechanism into a dynamic one that adapts to varying workloads, resolving the contradiction between system simplicity and scheduler performance optimization.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system incorporates feedback loops where schedulers report performance metrics to the resource manager, which then uses this feedback to make informed decisions about resource allocation. This feedback mechanism enables the system to automatically optimize scheduler performance without requiring complex manual configuration, addressing both simplicity and performance requirements.

Inventive Principle:
Principle #23Feedback

2Productivity

If dynamic resource allocation is implemented, then scheduler performance is optimized, but system complexity increases

Engineering Contradiction:
Improvescheduler performanceVSAvoidresource allocation mechanism
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent introduces a resource manager as an intermediary component that handles the complexity of dynamic resource allocation. This intermediary abstracts the complex monitoring and adjustment logic from the schedulers themselves, allowing performance optimization while managing system complexity through a dedicated management layer that centralizes control logic.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Speed

If resources are allocated based on initial policies only, then allocation speed is maintained, but adaptability to changing processing conditions deteriorates

Engineering Contradiction:
Improveresource allocation speedVSAvoidadaptability to processing conditions
Core Design Contradiction:
SpeedVSAdaptability or versatility

Solution Approach 1:

The resource manager implements periodic monitoring and adjustment cycles where it collects performance metrics from schedulers at regular intervals and makes resource allocation adjustments based on these periodic updates. This periodic action maintains reasonable allocation speed while improving adaptability, as the system responds to changing conditions at structured intervals rather than requiring continuous complex processing.

Inventive Principle:
Principle #19Periodic action

Data Source

PatentUS8719831B2Dynamically change allocation of resources to schedulers based on feedback and policies from the schedulers and availability of the resources
Publication Date: 2014.05.06 MICROSOFT TECHNOLOGY LICENSING LLC
  • US8719831B2 patent drawing
  • US8719831B2 patent drawing
  • US8719831B2 patent drawing

AI summary

A resource manager manages processing and other resources of schedulers of one or more processes executing on one or more computer systems. For each scheduler, the resource manager determines an initial allocation of resources based on the policy of the scheduler, the availability of resources, and the policies of other schedulers. The resource manager receives feedback from the schedulers and dynamically changes the allocation of resources of schedulers based on the feedback. The resource manager determines if changes improved the performance of schedulers and commits or rolls back the changes based on the determination.