Abstract
With the functionality of mobile applications ever increasing, designers are often confronted with either the resource limitations of the devices or of the network. As pointed out by recent work, application partitioning between mobile devices and clouds, can be used to solve some of these issues, improving performance and/or battery life. In this paper, we argue that the static decisions made in existing work cannot leverage the full potential of application partitioning. Thus, to allow for variations in the execution environment, we have developed a system that dynamically adapts the application partition decisions. The system works by continuously profiling an applications performance and dynamically updating its distributed deployment to accommodate changes in the network bandwidth, devices CPU utilization, and data loads. Using several real applications, we show that our approach provides performance gains as high as 75% over traditional approaches and achieves lower power consumption by a factor close to 45%.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Amazon EC2, http://aws.amazon.com/ec2/
Amiri, K., Petrou, D., Ganger, G., Gibson, G.: Dynamic Function Placement for Data-intensive Cluster Computing. In: Proc. of USENIX, pp. 307–322 (2000)
Android, http://code.google.com/android
Google AppInventor, http://appinventor.googlelabs.com/about
Balan, R., Flinn, J., Satyanarayanan, M., Sinnamohideen, S., Yang, H.: The case for cyber foraging. In: Proc. of the 10th Workshop on ACM SIGOPS European Workshop: Beyond the PC, pp. 87–92. ACM (2002)
Balan, R.K., Satyanarayanan, M., Park, S.Y., Okoshi, T.: Tactics-based remote execution for mobile computing. In: Proc. of MobiSys, pp. 273–286. ACM (2003)
Chun, B., Ihm, S., Maniatis, P., Naik, M., Patti, A.: CloneCloud: Elastic execution between mobile device and cloud. In: Proc. of EUROSYS. ACM (2011)
Chun, B., Maniatis, P.: Augmented smarphone applications through clone cloud execution. In: Proc. of the 12th USENIX HotOS Workshop (2009)
Cuervo, E., Balasubramanian, A., Cho, D., Wolman, A., Saroiu, S., Chandra, R., Bahl, P.: MAUI: making smartphones last longer with code offload. In: Proc. of MobiSys, pp. 49–62. ACM (2010)
Apache Felix, http://felix.apache.org/site/index.html
Flinn, J., Park, S., Satyanarayanan, M.: Balancing performance, energy and quality in pervasive computing. In: Proc. of ICDCS, pp. 217. IEEE (2002)
Fragments, http://android.com/guide/topics/fundamentals/fragments.html
Giurgiu, I., Riva, O., Juric, D., Krivulev, I., Alonso, G.: Calling the Cloud: Enabling Mobile Phones as Interfaces to Cloud Applications. In: Bacon, J.M., Cooper, B.F. (eds.) Middleware 2009. LNCS, vol. 5896, pp. 83–102. Springer, Heidelberg (2009)
Goyal, S., Carter, J.: A lightweight secure cyber foraging infrastructure for resource-constrained devices. In: Proc. of WMCSA, pp. 186–195 (2004)
Hunt, G., Scott, M.: The coign automatic distributed partitioning system. In: Proc. of OSDI, pp. 187–200. USENIX (1999)
Kwon, Y.-W., Tilevich, E.: Power-efficient and fault-tolerant distributed mobile execution. In: Proc. of ICDCS (2012)
Newton, R., Toledo, S., Girod, L., Balakrishnan, H., Madden, S.: Wishbone: Prole-based Partitioning for Sensornet Applications. In: Proc. of NSDI, pp. 395–408 (April 2009)
OSGi Alliance. OSGi Service Platform, Core Specification, v4.1, Draft (2007)
Ou, S., Yang, K., Zhang, J.: An effective offloading middleware for pervasive services on mobile devices, vol. 3, pp. 362–385. Elsevier Science (2007)
Powertutor (2009), http://ziyang.eecs.umich.edu/projects/powertutor/
Ra, M.-R., Sheth, A., Mummert, L., Pillai, P., Wetherall, D., Govindan, R.: Odessa: enabling interactive perception applications on mobile devices. In: Proc. of MobiSys (2011)
Rellermeyer, J.S., Alonso, G., Roscoe, T.: R-OSGi: Distributed Applications Through Software Modularization. In: Cerqueira, R., Campbell, R.H. (eds.) Middleware 2007. LNCS, vol. 4834, pp. 1–20. Springer, Heidelberg (2007)
Rellermeyer, J.S., Riva, O., Alonso, G.: AlfredO: An Architecture for Flexible Interaction with Electronic Devices. In: Issarny, V., Schantz, R. (eds.) Middleware 2008. LNCS, vol. 5346, pp. 22–41. Springer, Heidelberg (2008)
Satyanarayanan, M.: Pervasive computing: vision and challenges. IEEE Personal Communications 8(4), 10–17 (2001)
Satyanarayanan, M., Bahl, P., Caceres, R., Davies, N.: The case for VM-based cloudlets in mobile computing. IEEE Pervasive Computing 8(4), 14–23 (2009)
Microsoft Silverlight, http://www.silverlight.net
Su, Y., Flinn, J.: Slingshot: deploying stateful services in wireless hotspots. In: Proc. of MobiSys, pp. 79–92. ACM (2005)
Yang, F., Gupta, N., Gerner, N., Qi, X., Demers, A., Gehrke, J., Shanmugasundaram, J.: Computation offloading to save energy on handheld devices: A partition scheme. In: Proc. of CASES, pp. 238–246. ACM (2001)
Yang, F., Gupta, N., Gerner, N., Qi, X., Demers, A., Gehrke, J., Shanmugasundaram, J.: A unified platform for data driven web applications with automatic client-server partitioning. In: Proc. of WWW, pp. 341–350. ACM (2007)
Yang, F., Shanmugasundaram, J., Riedewald, M., Gehrke, J.: Hilda: A high-level language for data-driven web applications. In: Proc. of ICDE, pp. 32–43. IEEE Computer Society (2006)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2012 IFIP International Federation for Information Processing
About this paper
Cite this paper
Giurgiu, I., Riva, O., Alonso, G. (2012). Dynamic Software Deployment from Clouds to Mobile Devices. In: Narasimhan, P., Triantafillou, P. (eds) Middleware 2012. Middleware 2012. Lecture Notes in Computer Science, vol 7662. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-35170-9_20
Download citation
DOI: https://doi.org/10.1007/978-3-642-35170-9_20
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-35169-3
Online ISBN: 978-3-642-35170-9
eBook Packages: Computer ScienceComputer Science (R0)