Data Flow Task Scheduling via Precomputed Overhead Lookup

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data flow task scheduling methods in distributed heterogeneous systems face delays due to the need to calculate overheads for CPU and GPU execution, which prolongs the scheduling process.

Innovation Solution

A method that preprocesses data flow tasks into subtasks, classifies them into CPU, GPU, or to-be-determined task groups, and allocates them based on resource status and execution costs, allowing for dynamic scheduling without calculating overheads.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If overheads of executing each subtask by CPU and GPU are calculated dynamically, then scheduling accuracy is improved, but scheduling delay increases

Engineering Contradiction:
Improvescheduling accuracyVSAvoidscheduling delay
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent pre-calculates and stores overhead values for different subtask types in a lookup table before actual scheduling occurs. When scheduling, the system directly retrieves pre-computed overhead values instead of calculating them dynamically, thus maintaining scheduling accuracy while eliminating computation delays

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent creates a simplified model (lookup table) that copies essential overhead information from actual execution scenarios. This model allows the scheduler to estimate execution costs quickly without performing full dynamic calculations, balancing accuracy with speed

Inventive Principle:
Principle #26Copying

2Productivity

If data flow task is processed continuously with real-time requirements, then system throughput is improved, but scheduling complexity increases

Engineering Contradiction:
Improvesystem throughputVSAvoidscheduling complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the data flow task into multiple independent subtasks with identical resource requirements. This segmentation allows the scheduler to handle standardized units rather than complex variable tasks, reducing scheduling complexity while maintaining continuous processing capability and high throughput

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transforms the scheduling problem by changing parameters from dynamic task-specific calculations to static task-type-based classifications. By categorizing subtasks into types with predefined overhead characteristics, the system simplifies scheduling decisions while supporting continuous real-time processing

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10558498B2Method for scheduling data flow task and apparatus
Publication Date: 2020.02.11 HUAWEI TECH CO LTD
  • US10558498B2 patent drawing
  • US10558498B2 patent drawing
  • US10558498B2 patent drawing

AI summary

A method for scheduling a data flow task and an apparatus. The method includes: preprocessing a data flow task to obtain at least one subtask; classifying the subtask into a central processing unit (CPU) task group, a graphics processing unit (GPU) task group, or a to-be-determined task group; allocating the subtask to a working node; when the subtask belongs to the CPU task group, determining that a CPU executes the subtask; when the subtask belongs to the GPU task group, determining that a GPU executes the subtask; or when the subtask belongs to the to-be-determined task group, determining, according to costs of executing the subtask by a CPU and a GPU, a running platform (e.g., the CPU or the GPU) executes the subtask, where the cost includes duration of executing the subtask.