Distributed Scheduling for Heterogeneous Compute Clusters

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current computing systems face limitations in scalability and resource utilization, particularly in high-performance computing (HPC) and container orchestration, due to architectural differences and the inability to effectively leverage heterogeneous compute resources, leading to underutilization and inefficiencies in resource allocation.

Innovation Solution

The implementation of a peer-to-peer scheduling capability within a modified Kubernetes system, utilizing a job speed-up metric and decentralized scheduling algorithms, allows for dynamic task distribution across interconnected nodes with varying capabilities, optimizing resource usage and handling heterogeneous environments.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If container orchestration products (Kubernetes, Docker Swarm, Apache Mesos) are used to manage container clusters, then coordination and organization of containers is improved, but device complexity increases due to additional scheduling infrastructure

Engineering Contradiction:
Improvecontainer coordinationVSAvoidscheduling infrastructure
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The patent extracts the scheduling functionality from the control plane and embeds it directly into worker nodes. Each worker node runs a local scheduler that autonomously manages task placement and resource allocation, eliminating the need for complex centralized scheduling infrastructure while maintaining coordination capabilities through peer-to-peer communication.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

Worker nodes perform self-scheduling by autonomously selecting tasks from the task queue and placing them on appropriate nodes based on local resource availability and task requirements. This self-service approach eliminates the need for complex external scheduling infrastructure, as each node manages its own workload independently.

Inventive Principle:
Principle #25Self-service

2Ease of operation

If centralized scheduling is used in container orchestration systems, then coordination control is improved, but scalability deteriorates due to single point of failure and bottleneck

Engineering Contradiction:
Improvecoordination controlVSAvoidsystem scalability
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The scheduling system is segmented into distributed scheduler instances running on each worker node rather than a single centralized scheduler. Each node's scheduler independently manages task placement for that node, dividing the overall scheduling problem into smaller, manageable units that can scale linearly with the number of nodes.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transitions from vertical centralized scheduling to horizontal distributed scheduling across multiple nodes. This dimensional change from a single control point to multiple peer nodes enables linear scalability while maintaining coordination through peer-to-peer communication protocols.

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

3Adaptability or versatility

If heterogeneous compute resources are deployed in the cluster, then resource diversity and versatility are improved, but resource allocation efficiency deteriorates due to inability to leverage varying capabilities

Engineering Contradiction:
Improvecompute resource diversityVSAvoidresource allocation efficiency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

Each worker node's scheduler makes local decisions about task placement based on that node's specific hardware capabilities and current resource state. The scheduler considers factors like CPU architecture, memory capacity, and available resources to allocate tasks optimally for each local node, rather than using uniform centralized scheduling policies.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The scheduling system dynamically adjusts allocation parameters based on the specific capabilities of each worker node and task requirements. Scheduler instances modify task placement decisions by considering varying hardware parameters such as CPU type, GPU availability, and memory characteristics to optimize resource utilization across heterogeneous environments.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS20230315522A1Systems and methods for implementing distributed scheduling capabilities for computing clusters
Publication Date: 2023.10.05 RAYTHEON CO
  • US20230315522A1 patent drawing
  • US20230315522A1 patent drawing
  • US20230315522A1 patent drawing

AI summary

In a method for distributing scheduling of a task within a plurality of nodes, a plurality of interconnected nodes is provided, each interconnected node accessing its own node database of performance data about the other nodes in the plurality. A first node in the plurality determines a task to be run by a node other than the first node, by a time deadline. A request to execute the task is sent from the first node to each node in a set of worker nodes. If task execution is completed before the time deadline, the set of worker nodes is notified. A penalty is associated at the first node, if the first node does not receive an indication that task execution was completed before time deadline. Performance data is updated for each worker node, indicating whether there was task execution success by the time deadline.