Skip to main content

Dynamic Software Deployment from Clouds to Mobile Devices

  • Conference paper
Middleware 2012 (Middleware 2012)

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%.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Amazon EC2, http://aws.amazon.com/ec2/

  2. Amiri, K., Petrou, D., Ganger, G., Gibson, G.: Dynamic Function Placement for Data-intensive Cluster Computing. In: Proc. of USENIX, pp. 307–322 (2000)

    Google Scholar 

  3. Android, http://code.google.com/android

  4. Google AppInventor, http://appinventor.googlelabs.com/about

  5. 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)

    Google Scholar 

  6. 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)

    Google Scholar 

  7. Chun, B., Ihm, S., Maniatis, P., Naik, M., Patti, A.: CloneCloud: Elastic execution between mobile device and cloud. In: Proc. of EUROSYS. ACM (2011)

    Google Scholar 

  8. Chun, B., Maniatis, P.: Augmented smarphone applications through clone cloud execution. In: Proc. of the 12th USENIX HotOS Workshop (2009)

    Google Scholar 

  9. 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)

    Google Scholar 

  10. Apache Felix, http://felix.apache.org/site/index.html

  11. Flinn, J., Park, S., Satyanarayanan, M.: Balancing performance, energy and quality in pervasive computing. In: Proc. of ICDCS, pp. 217. IEEE (2002)

    Google Scholar 

  12. Fragments, http://android.com/guide/topics/fundamentals/fragments.html

  13. FreeTTS, http://freetts.sourceforge.net/docs/index.php

  14. 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)

    Chapter  Google Scholar 

  15. Goyal, S., Carter, J.: A lightweight secure cyber foraging infrastructure for resource-constrained devices. In: Proc. of WMCSA, pp. 186–195 (2004)

    Google Scholar 

  16. Hunt, G., Scott, M.: The coign automatic distributed partitioning system. In: Proc. of OSDI, pp. 187–200. USENIX (1999)

    Google Scholar 

  17. Kwon, Y.-W., Tilevich, E.: Power-efficient and fault-tolerant distributed mobile execution. In: Proc. of ICDCS (2012)

    Google Scholar 

  18. 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)

    Google Scholar 

  19. OSGi Alliance. OSGi Service Platform, Core Specification, v4.1, Draft (2007)

    Google Scholar 

  20. Ou, S., Yang, K., Zhang, J.: An effective offloading middleware for pervasive services on mobile devices, vol. 3, pp. 362–385. Elsevier Science (2007)

    Google Scholar 

  21. Powertutor (2009), http://ziyang.eecs.umich.edu/projects/powertutor/

  22. 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)

    Google Scholar 

  23. 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)

    Chapter  Google Scholar 

  24. 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)

    Chapter  Google Scholar 

  25. Satyanarayanan, M.: Pervasive computing: vision and challenges. IEEE Personal Communications 8(4), 10–17 (2001)

    Article  Google Scholar 

  26. 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)

    Article  Google Scholar 

  27. Microsoft Silverlight, http://www.silverlight.net

  28. Su, Y., Flinn, J.: Slingshot: deploying stateful services in wireless hotspots. In: Proc. of MobiSys, pp. 79–92. ACM (2005)

    Google Scholar 

  29. 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)

    Google Scholar 

  30. 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)

    Google Scholar 

  31. 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)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints 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)

Publish with us

Policies and ethics