eXCloud: Transparent runtime support for scaling mobile applications in cloud

Cloud computing augments applications with ease-of-access to the enormous resources on the Internet. Combined with mobile computing technologies, mobile applications can exploit the Cloud everywhere by statically distributing code segments or dynamically migrating running processes onto cloud services. Existing migration techniques are however too coarse-grained for mobile devices, so the overheads often offset the benefits of migration. To build a truly elastic mobile cloud computing infrastructure, we introduce eXCloud (eXtensible Cloud) — a middleware system with multi-level mobility support, ranging from as coarse as a VM instance to as fine as a runtime stack frame, and allows resources to be integrated and used dynamically. In eXCloud, a stack-on-demand (SOD) approach is used to support computation mobility throughout the mobile cloud environment. The approach is fully adaptive, goal-driven and transparent. By downward task migration, applications running on the cloud nodes can exploit or take control of special resources in mobile devices such as GPS and cameras. With a restorable MPI layer, task migrations of MPI parallel programs can happen between cloud nodes or be initiated from a mobile device. Our evaluation shows that SOD outperforms several existing migration mechanisms in terms of migration overhead and latency. All our techniques result in better resource utilization through task migrations among cloud nodes and mobile nodes.

[1]  Cho-Li Wang,et al.  G-JavaMPI: A Grid Middleware for Transparent MPI Task Migration , 2006 .

[2]  Cho-Li Wang,et al.  Lightweight process migration and memory prefetching in openMosix , 2008, 2008 IEEE International Symposium on Parallel and Distributed Processing.

[3]  Leon Gommans,et al.  Seamless live migration of virtual machines over the MAN/WAN , 2006, Future Gener. Comput. Syst..

[4]  Cho-Li Wang,et al.  A computation migration approach to elasticity of cloud computing , 2013 .

[5]  Miron Livny,et al.  Checkpoint and Migration of UNIX Processes in the Condor Distributed Processing System , 1997 .

[6]  Alec Wolman,et al.  MAUI: making smartphones last longer with code offload , 2010, MobiSys '10.

[7]  Byung-Gon Chun,et al.  CloneCloud: elastic execution between mobile device and cloud , 2011, EuroSys '11.

[8]  P. Mell,et al.  The NIST Definition of Cloud Computing , 2011 .

[9]  Cho-Li Wang,et al.  A Stack-on-Demand Execution Model for Elastic Computing , 2010, 2010 39th International Conference on Parallel Processing.

[10]  Paramvir Bahl,et al.  The Case for VM-Based Cloudlets in Mobile Computing , 2009, IEEE Pervasive Computing.

[11]  Anja Feldmann,et al.  Live wide-area migration of virtual machines including local persistent state , 2007, VEE '07.

[12]  Andrew Warfield,et al.  Live migration of virtual machines , 2005, NSDI.

[13]  Assaf Schuster,et al.  JavaSplit: a runtime for execution of monolithic Java programs on heterogenous collections of commodity workstations , 2003, 2003 Proceedings IEEE International Conference on Cluster Computing.

[14]  Cho-Li Wang,et al.  A new transparent java thread migration system using just-in-time recompilation , 2004 .

[15]  Jason Nieh,et al.  Proceedings of the 5th Symposium on Operating Systems Design and Implementation , 2022 .