Parallel Processing Load Balancing via Cumulative Deviation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In parallel processing systems, load imbalances occur where some processing elements are idle while others have multiple tasks, leading to inefficient resource utilization and increased idle time, as conventional methods fail to effectively distribute tasks across identical or non-identical processing elements.
Innovation Solution
A method for load balancing in parallel processing systems involves determining the total number of tasks, calculating local mean and deviation for each processing element, and redistributing tasks based on cumulative deviations to ensure each element has a consistent number of tasks, maximizing resource utilization.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If tasks are distributed among parallel processing elements using conventional methods, then processing can be performed in parallel, but load imbalances occur where some processing elements are idle while others have multiple tasks
Solution Approach 1:
The patent implements feedback mechanisms where processing elements communicate their task completion status and workload information to neighbors. This feedback enables dynamic load balancing decisions, allowing the system to adapt to changing workload conditions and redistribute tasks to minimize idle time while maintaining parallel processing throughput.
Solution Approach 2:
The load balancing approach transitions from static task distribution to dynamic redistribution. Processing elements can request additional tasks or transfer excess tasks based on real-time workload conditions, enabling the system to adapt dynamically and keep all processing elements actively engaged throughout the parallel processing operation.
2Productivity
If more tasks are assigned to certain processing elements to maintain continuous work, then productivity increases, but resource utilization becomes unbalanced and some elements remain idle
Solution Approach 1:
Processing elements autonomously monitor their own workload and initiate task redistribution when imbalances are detected. Each processing element can request tasks from overloaded neighbors or offer excess tasks to underutilized neighbors without centralized control, enabling self-regulating resource utilization balance while maintaining high productivity.
3Device complexity
If conventional load balancing methods are used, then task distribution is simplified, but the methods fail to effectively distribute tasks across identical or non-identical processing elements
Solution Approach 1:
The patent implements local load balancing where each processing element independently manages its own workload and communicates only with immediate neighbors. This local approach effectively distributes tasks across heterogeneous processing elements without requiring complex global optimization algorithms, maintaining simplicity while improving task distribution effectiveness for both identical and non-identical elements.
Data Source
AI summary
A method for balancing the load of a parallel processing system having parallel processing elements (PEs) linked serially in a line with first and second ends, wherein each of the PEs has a local number of tasks associated therewith, the method comprising determining a total number of tasks present on the line; notifying each of the PEs of the total number of tasks, calculating a local mean number of tasks for each of the PEs, and calculating a local deviation for each of the PEs. The method also comprises determining a first local cumulative deviation for each of the PEs, determining a second local cumulative deviation for each of the PEs, and redistributing tasks among the PEs in response to the first local cumulative deviation and the second local cumulative deviation.


