Distributed Computing Task Allocation for Wireless Device Networks
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Electronic devices with wireless communication capabilities face limitations in processing workload-intensive tasks due to insufficient processing or power resources, which affects user experience and the types of software applications that can be used.
Innovation Solution
A primary device distributes compute tasks to a set of heterogeneous secondary devices based on statistics of their compute capabilities and communication characteristics, optimizing task distribution to minimize runtime and mitigate straggler devices, while ensuring security and performance gain.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Power
If compute tasks are distributed to heterogeneous secondary devices, then processing power and task completion capability are improved, but system complexity and coordination overhead increase
Solution Approach 1:
The compute task is segmented into multiple sub-tasks that are distributed to different secondary devices. Each device processes its assigned sub-task independently, and results are aggregated by the primary device. This segmentation enables parallel processing across heterogeneous devices while managing system complexity through modular task distribution.
Solution Approach 2:
The system employs a universal task distribution framework that can accommodate heterogeneous secondary devices with different compute capabilities. The primary device adapts task allocation based on each device's capabilities, allowing the same system to efficiently utilize diverse devices ranging from mobile phones to laptops without requiring device-specific customization.
2Use of energy by moving object
If compute tasks are distributed to secondary devices over wireless links, then local processing burden is reduced, but communication delays and transmission overhead increase
Solution Approach 1:
The system applies local quality by assigning sub-tasks to secondary devices based on their individual characteristics and proximity to the primary device. Devices with better wireless connectivity and closer proximity receive tasks that require frequent communication, while devices with superior compute capabilities handle more computation-intensive sub-tasks. This optimization balances communication delay against processing efficiency.
Solution Approach 2:
The primary device performs preliminary assessment of secondary device capabilities and wireless link qualities before distributing tasks. Statistics about device performance and communication characteristics are collected and stored in advance, enabling the primary device to make informed decisions about task allocation that minimize communication delays while reducing local processing burden.
3Productivity
If statistics collection and processing are performed to optimize task distribution, then task completion efficiency is improved, but overhead and processing time for decision-making increase
Solution Approach 1:
The system implements partial statistics collection by gathering only the most relevant performance metrics from secondary devices rather than comprehensive data. Key statistics such as processing speed, battery level, and wireless link quality are collected, while less critical information is omitted. This partial action approach maintains task completion efficiency while reducing the overhead of data collection and processing.
Solution Approach 2:
The primary device uses feedback from collected statistics to dynamically adjust task distribution strategies. Performance data from previous task executions is used to refine future allocation decisions, creating a continuous improvement loop that enhances task completion efficiency while minimizing decision-making time through learned optimization patterns.
4Loss of time
If the primary device eliminates expected straggler devices from the set, then overall runtime is reduced, but the number of available computing resources decreases
Solution Approach 1:
The primary device extracts and eliminates expected straggler devices from the set of secondary devices based on collected statistics about their performance characteristics. Devices with consistently poor performance or unreliable wireless connections are removed from the candidate pool. This extraction reduces overall runtime by preventing bottlenecks while the primary device compensates by allocating additional sub-tasks to remaining capable devices.
Solution Approach 2:
The system dynamically changes the parameter of device inclusion based on performance thresholds derived from statistics. When a device's performance metrics fall below acceptable thresholds, it is removed from the active set. This parameter-based filtering optimizes runtime by excluding underperforming devices while maintaining sufficient computing resources through adaptive threshold adjustment.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A primary device may run a software application requiring a compute task. The primary device may receive statistics from a set of secondary devices over wireless communication links. The statistics may include parameters associated with the compute and communication capabilities of the secondary devices. The primary device may predict, based on the statistics, an expected performance gain in distributing the compute task to the secondary devices relative to performing the compute task locally. If the expected performance gain is high enough, the primary device may distribute shares of the compute task to the secondary devices over the wireless communication links. If the expected performance gain is low enough, the primary device may perform the compute task locally. If the expected performance gain is moderate, the primary device may update the set of secondary devices and/or may update a coding and distribution scheme for the compute task.