An efficient application partitioning algorithm in mobile environments - Wu,H; Knottenbelt,W; Wolter,K (IEEE Transactions on Parallel and Distributed Systems, 2019)
Application partitioning that splits the executions into local and remote parts, plays a critical role in high-performance mobile offloading systems. Mobile devices can obtain the most benefit from Mobile Cloud Computing (MCC) or Mobile Edge Computing (MEC) through optimal partitioning. Due to unstable resources at the wireless network (network disconnection, bandwidth fluctuation, network latency, etc.) and at the service nodes (different speeds of mobile devices and cloud/edge servers, memory, etc.), static partitioning solutions with fixed bandwidth and speed assumptions are unsuitable for offloading systems. In this paper, we study how to dynamically partition a given application into local and remote parts effectively, while keeping the total cost as small as possible. For general tasks (i.e., arbitrary topological consumption graphs), we propose a Min-Cost Offloading Partitioning (MCOP) algorithm that aims at finding the optimal partitioning plan (determine which portions of the application to run on mobile devices and which portions on cloud/edge servers) under different cost models and mobile environments. Simulation results show that the MCOP algorithm provides a stable method with low time complexity which significantly reduces execution time and energy consumption by optimally distributing tasks between mobile devices and servers, besides it well adapts to mobile environmental changes.