Decentralized Resource Scheduling via Workload Billboard

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Centralized resource scheduling in cloud computing faces challenges such as high computational requirements, limited scalability, and inefficient resource utilization, particularly in large clusters, where pre-defined resource definitions may not be effective across different system architectures and can lead to increased recovery times during disasters.

Innovation Solution

A decentralized resource scheduling approach where each computer host in a cluster manages its own resources through an inquiry-handshake model, using a proxy to collect resource usage information and publish workload details to a shared workload billboard, allowing for dynamic resource allocation and scheduling without a centralized scheduler.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If centralized resource scheduling is used, then resource allocation can be coordinated across the cluster, but computational requirements increase and scalability is limited

Engineering Contradiction:
Improveresource allocation efficiencyVSAvoidcomputational requirements
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent divides the centralized scheduling function into distributed scheduling units at each host. Each scheduling unit independently manages resource allocation for its local host, eliminating the need for a single centralized scheduler. This segmentation reduces computational burden on any single node while maintaining coordinated resource allocation across the cluster through peer-to-peer communication.

Inventive Principle:
Principle #1Segmentation

2Productivity

If centralized resource scheduling is used, then resource coordination is achieved, but scalability to large clusters is limited

Engineering Contradiction:
Improveresource coordinationVSAvoidscalability
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

By segmenting the scheduling function across multiple independent scheduling units, the system can scale to large clusters without a single point of failure or bottleneck. Each host operates autonomously with its own scheduling unit, allowing the cluster to grow dynamically without requiring proportional increases in centralized computational resources.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transitions from a vertical hierarchical architecture (centralized scheduler at top) to a horizontal peer-to-peer architecture where scheduling units operate at the same level. This dimensional change enables better scalability as each node operates independently while still contributing to overall cluster resource coordination.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Ease of operation

If pre-defined resource definitions are used, then resource allocation is simplified, but effectiveness across different system architectures is reduced

Engineering Contradiction:
Improveresource allocation simplicityVSAvoidcross-architecture effectiveness
Core Design Contradiction:
Ease of operationVSAdaptability or versatility

Solution Approach 1:

The patent implements dynamic resource definitions that adapt to different system architectures and workload characteristics. Instead of using fixed pre-defined resource definitions, the scheduling units can adjust resource parameters and allocation strategies based on real-time conditions and architectural differences, maintaining both simplicity and cross-architecture effectiveness.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system allows resource definition parameters to be changed and customized for different architectures. Each scheduling unit can modify resource allocation parameters to match the specific characteristics of its host system, enabling effective resource management across diverse architectures while maintaining operational simplicity through standardized interfaces.

Inventive Principle:
Principle #35Parameter changes

4Productivity

If centralized scheduling is used, then resource management is unified, but recovery time during disasters increases

Engineering Contradiction:
Improveresource management unityVSAvoiddisaster recovery time
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

By distributing the scheduling function across multiple independent units rather than relying on a single centralized scheduler, the system eliminates single points of failure. During disasters, individual scheduling units can continue operating independently or be replaced without affecting the entire cluster, significantly reducing recovery time while maintaining unified resource management through coordinated operation of remaining units.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The distributed architecture provides built-in redundancy and fault tolerance. Each host has its own scheduling unit that can independently handle failures, providing a cushion against disasters before they impact the entire system. This prior cushioning through distribution ensures faster recovery compared to centralized systems that must wait for the central scheduler to recover.

Inventive Principle:
Principle #11Beforehand cushioning (Prior cushioning)

Data Source

PatentUS11762708B2Decentralized resource scheduling
Publication Date: 2023.09.19 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11762708B2 patent drawing
  • US11762708B2 patent drawing
  • US11762708B2 patent drawing

AI summary

Methods, apparatus, computer program products for resource scheduling are provided. The method comprises: receiving a workload request; publishing the information of the workload to a workload billboard accessible to a plurality of computer hosts, each of the plurality of computer hosts being associated with a corresponding proxy configured to manage the resource scheduling of the computer host; receiving a request to schedule at least a portion of the workload from a proxy; and sending the portion of the workload to the computer host associated with the proxy.