Graph Data Partition Scheduling for Idle Processor Utilization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing methods for processing graph data lead to inefficient use of computing resources due to random task execution without criticality evaluation and lack of communication between processors, resulting in prolonged execution times and waiting times.
Innovation Solution
A method and system for scheduling computational operations on graph data by dividing data into partitions, allocating them to multiple processors, evaluating and assigning based on criticality, communicating between processors to identify idle resources, and migrating partitions to optimize processing.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If graph data is processed using existing random task execution methods, then implementation simplicity is maintained, but computing resource utilization deteriorates due to idle processors and prolonged execution times
Solution Approach 1:
The patent segments graph data into multiple partitions and divides processing tasks into discrete units that can be independently scheduled. Each partition is assigned to specific processors based on criticality evaluation, enabling fine-grained control over resource allocation and improving overall computing resource utilization without requiring complete system redesign
Solution Approach 2:
The patent implements dynamic scheduling where the scheduling system continuously evaluates task criticality and processor status, adjusting task assignment in real-time. This dynamic approach allows the system to adapt to changing conditions, optimizing resource utilization while maintaining manageable complexity through event-driven adjustments rather than static complex configurations
2Loss of time
If task execution follows random assignment without criticality evaluation, then scheduling complexity is reduced, but execution time increases due to inefficient processor utilization
Solution Approach 1:
The patent performs preliminary criticality evaluation of graph data partitions before assignment to processors. By pre-assessing which partitions are most critical and requiring them to be processed first, the system reduces execution time for important tasks without requiring complex real-time decision-making during execution, thus balancing time efficiency with scheduling complexity
Solution Approach 2:
The patent implements a feedback mechanism where processors report their status and task completion back to the scheduling system, which then adjusts subsequent task assignments based on current system state and criticality requirements. This feedback loop enables the system to optimize execution time dynamically while keeping the scheduling mechanism relatively simple through rule-based responses to feedback signals
3Loss of energy
If processors operate independently without communication, then system complexity is minimized, but resource wastage increases due to idle processors while other processors have pending tasks
Solution Approach 1:
The patent introduces a central scheduling system as an intermediary between processors and graph data partitions. This mediator collects information about processor status and task requirements, then makes optimal assignments to minimize resource wastage. The intermediary approach reduces direct inter-processor communication complexity while improving resource utilization through centralized coordination
Solution Approach 2:
The patent creates a universal scheduling mechanism that handles multiple functions: task assignment, criticality evaluation, processor status monitoring, and load balancing. This multi-functional approach reduces the need for separate specialized communication channels between processors, minimizing communication complexity while maximizing resource utilization through a single coordinated system
Data Source
AI summary
A method for scheduling a computational operation based on graph data, which includes: dividing graph data into multiple partitions; scheduling the partitions to be allocated to multiple processors; successively assigning the partitions to corresponding threads of the processors for computation according to a respective degree of criticality of each partition; determining whether an idle processor exists, a processor being the idle processor when the processor includes one or more idle threads; communicating the idle processor with other processor(s) to find partition(s) to be computed and corresponding to the other processor(s); selecting and determining a partition to be computed; and migrating and binding the determined partition to be computed to thread(s) of the idle processor for processing. The present disclosure further relates to a system, a computer readable medium, and a device for scheduling a computational operation based on graph data.


