Data Flow Task Scheduling via Precomputed Overhead Lookup
Find Innovative SolutionsGenerate 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
Engineering 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
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
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
2Productivity
If data flow task is processed continuously with real-time requirements, then system throughput is improved, but scheduling complexity increases
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
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
Data Source
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.


