Task-centric Job Scheduling for Heterogeneous Accelerator Clusters

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current distributed schedulers for compute clusters are not well-suited for fine-grained execution patterns, leading to inefficient resource utilization, idle resources, and increased costs due to over-reservation and lack of automation in adapting to varying workload demands.

Innovation Solution

A computer-implemented scheduling method that uses a computational graph to split jobs into atomic compute tasks, allowing individual scheduling and migration of tasks across different machines and accelerators at runtime, with a scheduler and daemon for memory allocation and kernel execution.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If current distributed schedulers reserve nodes as a whole with their accelerators, then resource allocation is simplified, but resource utilization deteriorates due to idle accelerators when applications use only one accelerator per node

Engineering Contradiction:
Improvescheduling complexityVSAvoidresource utilization
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent segments the scheduling unit from the node level to the accelerator level. Instead of reserving entire nodes with their accelerators as a single unit, the system allows individual accelerators to be scheduled and allocated independently. This segmentation enables finer-grained resource allocation where each accelerator can be assigned to different applications based on actual demand, preventing idle accelerators when only one is needed per node.

Inventive Principle:
Principle #1Segmentation

2Ease of operation

If users specify resource requirements upfront, then resource reservation is straightforward, but execution time is wasted when users over-reserve resources due to lack of understanding

Engineering Contradiction:
Improveresource specificationVSAvoidexecution time
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The patent implements dynamic resource allocation that adjusts resource assignment during job execution rather than relying solely on static upfront specifications. The scheduler can dynamically allocate accelerators to tasks based on runtime conditions, allowing users to specify initial requirements while the system adapts to actual needs, preventing over-reservation and reducing wasted execution time.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system enables self-service scheduling where the scheduler automatically manages resource allocation without requiring users to precisely specify all requirements. The scheduler monitors job execution and dynamically adjusts accelerator assignment, allowing users to submit jobs with minimal specification while the system optimizes resource usage automatically.

Inventive Principle:
Principle #25Self-service

3Device complexity

If nodes are reserved for the entire job duration, then resource allocation is simplified, but cost increases due to idle but reserved time when workload changes at runtime

Engineering Contradiction:
Improveallocation mechanismVSAvoidcost
Core Design Contradiction:
Device complexityVSLoss of energy

Solution Approach 1:

The patent segments the job execution into independent tasks that can be scheduled on different accelerators at different times. Instead of reserving a node for the entire job duration, the system allows tasks to be migrated between accelerators and nodes, enabling other jobs to use idle accelerators when original jobs are not utilizing them fully, thereby reducing energy waste and cost.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system implements dynamic task migration capabilities that allow tasks to be moved between different accelerators and nodes during execution. This dynamic approach enables the scheduler to reassign idle accelerators to other jobs based on runtime workload changes, preventing paid-but-unused resource time and reducing overall energy consumption and cost.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS20240256333A1Task-centric job scheduling method and system for heterogeneous clusters
Publication Date: 2024.08.01 NEC CORP
  • US20240256333A1 patent drawing
  • US20240256333A1 patent drawing
  • US20240256333A1 patent drawing

AI summary

A computer-implemented scheduling method for accelerator hardware includes using a computational graph that splits jobs to be executed by the accelerator hardware into atomic compute tasks, using a scheduler to individually schedule and/or migrate each task for execution to different machines and/or accelerators at job runtime, and using a computer daemon to allocate memory and execute kernels for each task on the respective machines and/or accelerators.