Hierarchical Multi-Level Scheduling for GPU Resource Allocation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current distributed computing environments lack an automatic intelligent multi-level scheduling mechanism for efficient resource allocation across containers or pods, particularly in GPU-based inference tasks, leading to suboptimal GPU utilization.

Innovation Solution

A hierarchical multi-level scheduling system comprising a coarse scheduler for cluster/pod-level resource allocation and fine-grained schedulers within each container for process-level scheduling, which communicates and implements different allocation rules based on historical performance data to dynamically adjust resource allocation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If a traditional single-level scheduler schedules 10,000 pods or containers, then all tasks can be allocated, but the overhead becomes significantly high

Engineering Contradiction:
Improvetask allocation efficiencyVSAvoidscheduling overhead
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The scheduling system is divided into multiple hierarchical levels: a top-level scheduler that manages coarse-grained resource allocation across clusters, and multiple fine-grained schedulers within each container that manage individual tasks. This segmentation reduces the complexity at each level, as the top-level scheduler only needs to manage container-level resources rather than individual tasks, thereby reducing overall scheduling overhead while maintaining productivity

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a hierarchical dimension to the scheduling system, organizing schedulers in multiple levels (cluster-level and container-level) rather than a single flat level. This dimensional change allows the system to handle large numbers of tasks by distributing scheduling decisions across different hierarchical layers, reducing the computational burden on any single scheduler

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

2Productivity

If GPU resources are shared across different containers or pods, then GPU utilization increases, but automatic intelligent multi-level scheduling mechanism is lacking

Engineering Contradiction:
ImproveGPU utilizationVSAvoidintelligent scheduling capability
Core Design Contradiction:
ProductivityVSExtent of automation

Solution Approach 1:

The fine-grained schedulers continuously monitor resource usage and task queue status, providing feedback to the top-level scheduler. This feedback mechanism enables automatic adjustment of resource allocation, allowing the system to intelligently respond to changing workload conditions and optimize GPU utilization without manual intervention

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The scheduling system dynamically adjusts resource allocation based on real-time conditions. The fine-grained schedulers can request additional resources from the top-level scheduler when needed, and the system adapts its allocation strategy based on historical performance data and current workload demands, enabling intelligent automation

Inventive Principle:
Principle #15Dynamics

3Productivity

If a coarse scheduler allocates resources at container level and fine-grained schedulers allocate at process level, then resource allocation efficiency improves, but system complexity increases

Engineering Contradiction:
Improveresource allocation efficiencyVSAvoidmulti-level scheduler structure
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The scheduling functionality is segmented into distinct modules with clear responsibilities: the top-level scheduler handles container-level resource allocation, while fine-grained schedulers handle individual task allocation within containers. This segmentation allows each module to be optimized independently and reduces the complexity burden on any single component

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The fine-grained schedulers are designed to be universal components that can operate within any container, managing multiple tasks and resource types. This multi-functionality reduces the need for specialized scheduling logic at each level, as the fine-grained schedulers handle diverse task types with a unified approach

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

Data Source

PatentUS20220229695A1System and method for scheduling in a computing system
Publication Date: 2022.07.21 ADVANCED MICRO DEVICES INC
  • US20220229695A1 patent drawing
  • US20220229695A1 patent drawing
  • US20220229695A1 patent drawing

AI summary

An improved multi-level scheduling system and method are disclosed. In one embodiment, the system comprises a coarse scheduler to allocate sets of computing resources at a first level and a set of fine grain schedulers configured to schedule at a second level, wherein the second level comprises individual computing resources within each set of computing resources. The fine grain scheduler may be configured to communicate with the coarse scheduler and monitor performance and utilization of the individual computing resources. The fine grain schedulers may also be configured to implement a different set of allocation rules than the coarse scheduler and request additional sets of resources from the coarse scheduler based on current and predicted utilization of the individual computing resources.