skip to main content
10.1145/1814433.1814441acmconferencesArticle/Chapter ViewAbstractPublication PagesmobisysConference Proceedingsconference-collections
research-article

MAUI: making smartphones last longer with code offload

Published: 15 June 2010 Publication History

Abstract

This paper presents MAUI, a system that enables fine-grained energy-aware offload of mobile code to the infrastructure. Previous approaches to these problems either relied heavily on programmer support to partition an application, or they were coarse-grained requiring full process (or full VM) migration. MAUI uses the benefits of a managed code environment to offer the best of both worlds: it supports fine-grained code offload to maximize energy savings with minimal burden on the programmer. MAUI decides at run-time which methods should be remotely executed, driven by an optimization engine that achieves the best energy savings possible under the mobile device's current connectivity constrains. In our evaluation, we show that MAUI enables: 1) a resource-intensive face recognition application that consumes an order of magnitude less energy, 2) a latency-sensitive arcade game application that doubles its refresh rate, and 3) a voice-based language translation application that bypasses the limitations of the smartphone environment by executing unsupported components remotely.

References

[1]
R. Balan, J. Flinn, M. Satyanarayanan, S. Sinnamohideen, and H.-I. Yang. The Case for Cyber Foraging. In The 10th ACM SIGOPS European Workshop, Saint-Emilion, France, September 2002.
[2]
R. K. Balan. Simplifying Cyber Foraging. PhD thesis, School of Computer Science, Carnegie Mellon University, 2006.
[3]
R. K. Balan, M. Satyanarayanan, S. Park, and T. Okoshi. Tactics-Based Remote Execution for Mobile Computing. In Proceedings of the 3rd International Conference on Mobile Systems, Applications, and Services (MobiSys), San Francisco, CA, 2003.
[4]
A. Birrell, G. Nelson, S. Owicki, and E. Wobber. Network Objects. In Proc. of the Fourteenth ACM Symposium on Operatings Systems Principles (SOSP), 1993.
[5]
L. Cardelli. A Language with Distributed Scope. In Proc. of the 22nd Symposium on Principles of Programming Languages (POPL), 1995.
[6]
B.-G. Chun and P. Maniatis. Augmented Smartphone Applications Through Clone Cloud Execution. In Proc. of the 8th Workshop on Hot Topics in Operating Systems (HotOS), Monte Verita, Switzerland, May 2009.
[7]
C. Clark, K. Fraser, S. Hand, J. G. Hansen, E. Jul, C. Limpach, I. Pratt, and A. Warfield. Live Migration of Virtual Machines. In Proceedings of the 2nd ACM/USENIX Symposium on Networked Systems Design and Implementation (NSDI), 2005.
[8]
F. Douglis and J. Ousterhout. Transparent Process Migration: Design Alternatives and the Sprite Implementation. Software -- Practice and Experience, 21(8):757--785, August 1991.
[9]
J. Flinn, D. Narayanan, and M. Satyanarayanan. Self-Tuned Remote Execution for Pervasive Computing. In Proc. of the 8th Workshop on Hot Topics in Operating Systems (HotOS), Schloss Elmau, Germany, May 2001.
[10]
J. Flinn, S. Park, and M. Satyanarayanan. Balancing Performance, Energy, and Quality in Pervasive Computing. In Proc. of the 22nd International Conference on Distributed Computing Systems (ICDCS), Vienna, Austria, July 2002.
[11]
J. Flinn, S. Sinnamohideen, N. Tolia, and M. Satyanaryanan. Data Staging on Untrusted Surrogates. In Proceedings of the 2nd USENIX Conference on File and Storage Technologies (FAST), San Francisco, CA, March -- April 2003.
[12]
R. S. Gray. Agent Tcl: a flexible and secure mobile-agent system. In TCLTK'96: Proceedings of the 4th USENIX Tcl/Tk Workshop, 1996, Monterey, CA, 1996.
[13]
X. Gu, K. Nahrstedt, A. Messer, I. Greenberg, and D. Milojicic. Adaptive Offloading Inference for Delivering Applications in Pervasive Computing Environments. In Proceedings of the First IEEE International Conference on Pervasive Computing and Communications (PerCom), 2003.
[14]
D. Hesse. Sprint's CEO Dan Hesse Chats with Charlie Rose. http://blueroomsolution.com/showthread.php?t=5689, 2007.
[15]
J. Huang, Q. Xu, B. Tiwana, Z. M. Mao, M. Zhang, and P. Bahl. Anatomizing Application Performance Differences on Smartphones. In Proc. of the 8th International Conference on Mobile Systems, Applications, and Services (MobiSys), San Francisco, CA, June 2010.
[16]
G. C. Hunt and M. L. Scott. The Coign Automatic Distributed Partitioning System. In Proc. of the 3rd Symposium on Operating Systems Design and Implementation (OSDI), New Orleans, LA, February 1999.
[17]
A. D. Joseph, A. F. deLespinasse, J. A. Tauber, D. K. Gifford, and M. F. Kaashoek. Rover: A Toolkit for Mobile Information Access. In Proceedings of the Fifteenth Symposium on Operating Systems Principles (SOSP), 1995.
[18]
E. Jul, H. Levy, N. Hutchinson, and A. Black. Fine-Grained Mobility in the Emerald System. ACM Transactions on Computer Systems, 6(1):109--133, 1988.
[19]
A. Kansal and F. Zhao. Fine-Grained Energy Profiling for Power-Aware Application Design. In Proceedings of the 1st Workshop on Hot Topics in Measurement & Modeling of Computer Systems (HotMetrics), Annapolis, MD, June 2008.
[20]
M. Kim, L. Cox, and B. Noble. Safety, Visibility, and Performance in a Wide-Area File System. In Proc. of the 3rd Symposium on Operating Systems Design and Implementation (OSDI), Boston, MA, Dec. 2002.
[21]
J. Kincaid. YouTube Mobile Uploads Up 400% Since iPhone 3GS Launch. http://www.techcrunch.com/2009/06/25/youtube-mobile-uploads-up-400-since-iphone-3gs-launch/, 2009.
[22]
P. Kougiouris. Use Reflection to Discover and Assess the Most Common Types in the .NET Framework. http://msdn.microsoft.com/en-us/magazine/cc188926.aspx#S3, 2002.
[23]
U. Kremer, J. Hicks, and J. M. Rehg. Compiler-Directed Remote Task Execution for Power Management. In Proceedings of The Workshop on Compilers and Operating Systems for Low Power (COLP), Philadelphia, PA, October 2000.
[24]
J. Lewin. iPhone Users 30 Times More Likely To Watch YouTube Videos. http://www.podcastingnews.com/2008/03/19/iphone-users-30-times-watch-youtube-videos/, 2008.
[25]
Monsoon Solutions Inc. Monsoon Power Monitor. http://www.msoon.com/.
[26]
S. Mullender, G. van Rossum, A. Tanenbaum, R. van Renesse, and H. van Staveren. Amoeba -- A Distributed Operating System for the 1990s. IEEE Computer, 23: 44--53, 1990.
[27]
National Office of Pollution Prevention (Canada). Canadian Consumer Battery Baseline Study -- Final Report. Submitted to Environment Canada, http://www.ec.gc.ca/nopp/docs/rpt/battery/en/toc.cfm, 2007.
[28]
M. Neubauer and P. Thiemann. From Sequential Programs to Multi-Tier Applications by Program Transformation. In Proc. of the Symposium on Principles of Programming Languages (POPL), Long Beach, CA, January 2005.
[29]
R. Newton, S. Toledo, L. Girod, H. Balakrishnan, and S. Madden. Wishbone: Profile-based Partitioning for Sensornet Applications. In Proceedings of the 6th USENIX symposium on Networked systems design and implementation (NSDI), Boston, MA, April 2009.
[30]
B. Noble, M. Satyanarayanan, D. Narayanan, J. Tilton, J. Flinn, and K. Walker. Agile Application-Aware Adaptation for Mobility. In Proc. of the ACM Symposium on Operating System Principles (SOSP), 1997.
[31]
S. Osman, D. Subhraveti, G. Su, and J. Nieh. The Design and Implementation of Zap: A System for Migrating Computing Environments. In Proceedings of the Fifth Symposium on Operating Systems Design and Implementation (OSDI), 2002.
[32]
M. R. Palacin. Recent advances in rechargeable battery materials: a chemists perspective. Chem Soc Review, 38: 2565--2575, 2009.
[33]
Physics2D.Net. http://code.google.com/p/physics2d/.
[34]
R. A. Powers. Batteries for low power electronics. Proceedings of the IEEE, 83: 687--693, April 1995.
[35]
R. S. Prasad, M. Murray, C. Dovrolis, and K. Claffy. Bandwidth Estimation: Metrifcs, Measurement Techniques, and Tools. IEEE Network, 17(6): 27--35, Nov--Dec 2003.
[36]
J. Richter. CLR via C#. Microsoft Press; 2nd edition, 2006.
[37]
M. Satyanarayanan, P. Bahl, R. Caceres, and N. Davies. The Case for VM-based Cloudlets in Mobile Computing. IEEE Pervasive Computing, 8(4), 2009.
[38]
S. Savage. Sting: a TCP-based Network Measurement Tool. In Proceedings of the 2nd USENIX Symposium on Internet Technologies and Systems (USITS), Boulder, CO, October 1999.
[39]
Y.-Y. Su and J. Flinn. Slingshot: Deploying Stateful Services in Wireless Hotspots. In Proc. of the 3rd International Conference on Mobile Systems, Applications, and Services (MobiSys), Seattle, WA, June 2005.
[40]
Y. Weinsberg, D. Dolev, T. Anker, M. Ben-Yehuda, and P. Wyckoff. Tapping into the Fountain of CPUs -- On Operating System Support for Programmable Devices. In Proc. of the 13th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS), 2008.
[41]
C. Young and Y. N. Lakshman. Protium, an Infrastructure for Partitioned Applications. In Proceedings of the 8th Workshop on Hot Topics in Operating Systems (HotOS), Schloss Elmau, Germany, May 2001.

Cited By

View all
  1. MAUI: making smartphones last longer with code offload

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    MobiSys '10: Proceedings of the 8th international conference on Mobile systems, applications, and services
    June 2010
    382 pages
    ISBN:9781605589855
    DOI:10.1145/1814433
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Sponsors

    In-Cooperation

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 15 June 2010

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. code offload
    2. energy management
    3. partitioning
    4. smartphones

    Qualifiers

    • Research-article

    Conference

    MobiSys'10
    Sponsor:

    Acceptance Rates

    Overall Acceptance Rate 274 of 1,679 submissions, 16%

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)400
    • Downloads (Last 6 weeks)37
    Reflects downloads up to 22 Dec 2024

    Other Metrics

    Citations

    Cited By

    View all

    View Options

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media