Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/2742647.2742649acmconferencesArticle/Chapter ViewAbstractPublication PagesmobisysConference Proceedingsconference-collections
research-article

Accelerating Mobile Applications through Flip-Flop Replication

Published: 18 May 2015 Publication History

Abstract

Mobile devices have less computational power and poorer Internet connections than other computers. Computation offload, in which some portions of an application are migrated to a server, has been proposed as one way to remedy this deficiency. Yet, partition-based offload is challenging because it requires applications to accurately predict whether mobile or remote computation will be faster, and it requires that the computation be large enough to overcome the cost of shipping state to and from the server. Further, offload does not currently benefit network-intensive applications.
In this paper, we introduce Tango, a new method for using a remote server to accelerate mobile applications. Tango replicates the application and executes it on both the client and the server. Since either the client or the server execution may be faster during different phases of the application, Tango allows either replica to lead the execution. Tango attempts to reduces user-perceived application latency by predicting which replica will be faster and allowing it to lead execution and display output, leveraging the better network and computation resources of the server when the application can benefit from it. It uses techniques inspired by deterministic replay to keep the two replicas in sync, and it uses flip-flop replication to allow leadership to float between replicas. Tango currently works for several unmodified Android applications. In our results, two computation-heavy applications obtain up to 2-3x speedup, and five network applications obtain from 0 to 2.6x speedup.

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, M. Satyanarayanan, S. Park, and T. Okoshi. Tactics-based remote execution for mobile computing. In Proceedings of the 1st International Conference on Mobile Systems, Applications and Services, pages 273--286, San Francisco, CA, May 2003.
[3]
T. C. Bressoud and F. B. Schneider. Hypervisor-based fault tolerance. ACM Trans. on Computer Systems, 14(1):80--107, February 1996.
[4]
S. Chong, J. Liu, A. C. Myers, X. Qi, K. Vikram, L. Zheng, and X. Zheng. Secure web applications via automatic partitioning. In Proceedings of the 2007 Symposium on Operating System Principles (SOSP), October 2007.
[5]
J. Chow, T. Garfinkel, and P. M. Chen. Decoupling dynamic program analysis from execution in virtual environments. In Proceedings of the 2008 USENIX Annual Technical Conference, pages 1--14, June 2008.
[6]
B.-G. Chun, S. Ihm, P. Maniatis, M. Naik, and A. Patti. CloneCloud: Elastic execution between mobile device and cloud. In Proceedings of the 6th ACM European Conference on Computer Systems, Salzburg, Austria, April 2011.
[7]
E. Cuervo, A. Balasubramanian, D. ki Cho, A. Wolman, S. Saroiu, R. Chandra, and P. Bahl. MAUI: Making smartphones last longer with code offload. In Proceedings of the 8th International Conference on Mobile Systems, Applications and Services, pages 49--62, San Francisco, CA, June 2010.
[8]
CyanogenMod Community. CyanogenMod - Android community operating system. http://www.cyanogenmod.com/.
[9]
D. Devecsery, M. Chow, X. Dou, J. Flinn, and P. M. Chen. Eidetic systems. In Proceedings of the 11th USENIX Symposium on Operating Systems Design and Implementation (OSDI), Broomfield, CO, October 2014.
[10]
G. W. Dunlap, S. T. King, S. Cinar, M. A. Basrai, and P. M. Chen. ReVirt: Enabling intrusion analysis through virtual-machine logging and replay. In Proceedings of the 5th Symposium on Operating Systems Design and Implementation, pages 211--224, Boston, MA, December 2002.
[11]
E. N. Elnozahy, L. Alvisi, Y.-M. Wang, and D. B. Johnson. A survey of rollback-recovery protocols in message-passing systems. ACM Computing Surveys, 34(3):375--408, September 2002.
[12]
S. I. Feldman and C. B. Brown. Igor: a system for program debugging via reversible execution. In PADD ?88: Proceedings of the 1988 ACM SIGPLAN and SIGOPS workshop on Parallel and distributed debugging, pages 112--123, 1988.
[13]
J. Flinn. Cyber Foraging: Bridging Mobile and Cloud Computing. Morgan and Claypool Publishers, September 2012.
[14]
J. Flinn and Z. M. Mao. Can deterministic replay be an enabling tool for mobile computing? In Proceedings of the 12th Workshop on Mobile Computing Systems and Applications (HotMobile), March 2011.
[15]
J. Flinn, S. Park, and M. Satyanarayanan. Balancing Performance, Energy, and Quality in Pervasive Computing. In Proceedings of the 22nd International Conference on. Distributed Computing Systems, Vienna, Austria, July 2002.
[16]
M. S. Gordon, D. A. Jamshidi, S. Mahlke, Z. M. Mao, and X. Chen. Comet: Code offload by migrating execution transparently. In Proceedings of the 10th Symposium on Operating Systems Design and Implementation, 2012.
[17]
B. D. Higgins, K. Lee, J. Flinn, T. J. Giuli, B. Noble, and C. Peplin. The future is cloudy: Reflecting prediction error in mobile applications. In Proceedings of the 6th International Conference on Mobile Computing, Applications, and Services, Austin, TX, November 2014.
[18]
G. C. Hunt and M. L. Scott. The Coign automatic distributed partitioning system. In Proceedings of the 3rd Symposium on Operating Systems Design and Implementation, pages 187--200, New Orleans, LA, February 1999.
[19]
The Linux Foundation, http://www.linuxfoundation.org/collaborate/workgroups/networking/netem.netem.
[20]
M. Olszewski, J. Ansel, and S. Amarasinghe. Kendo: efficient deterministic multithreading in software. In Proceedings of the 14th International Conference on Architectural Support for Programming Languages and Operating Systems, pages 97--108, March 2009.
[21]
G. Portokalidis, P. Homburg, K. Anagnostakis, and H. Bos. Paranoid android: Versatile protection for smartphones. In Proceedings of the Annual Computer Security Applications Conference, December 2010.
[22]
M.-R. Ra, A. Sheth, L. Mummert, P. Pillai, D. Wetherall, and R. Govidan. Odessa: Enabling interactive perception applications on mobile devices. In Proceedings of the 9th International Conference on Mobile Systems, Applications and Services, Washington, DC, June 2011.
[23]
S. Srinivasan, C. Andrews, S. Kandula, and Y. Zhou. Flashback: A light-weight extension for rollback and deterministic replay for software debugging. In Proceedings of the 2004 USENIX Technical Conference, pages 29--44, Boston, MA, June 2004.
[24]
Y.-Y. Su and J. Flinn. Slingshot: Deploying stateful services in wireless hotspots. In Proceedings of the 3rd International Conference on Mobile Systems, Applications and Services, pages 79--92, Seattle, WA, June 2005.
[25]
M. Xu, V. Malyugin, J. Sheldon, G. Venkitachalam, and B. Weissman. Retrace: Collecting execution trace with virtual machine deterministic replay. In Proceedings of the 2007 Workshop on Modeling, Benchmarking and Simulation (MoBS), June 2007.

Cited By

View all
  • (2024)Supporting Flexible and Transparent User Interface Distribution Across Mobile DevicesIEEE Transactions on Mobile Computing10.1109/TMC.2024.334956123:8(8398-8417)Online publication date: Aug-2024
  • (2024)EdgStr: Automating Client-Cloud to Client-Edge-Cloud Transformation2024 IEEE 44th International Conference on Distributed Computing Systems (ICDCS)10.1109/ICDCS60910.2024.00061(589-600)Online publication date: 23-Jul-2024
  • (2023)An Empirical Study of Mobile Code Offloading in Unpredictable EnvironmentsIEEE Access10.1109/ACCESS.2023.329288711(69263-69281)Online publication date: 2023
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
MobiSys '15: Proceedings of the 13th Annual International Conference on Mobile Systems, Applications, and Services
May 2015
516 pages
ISBN:9781450334945
DOI:10.1145/2742647
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: 18 May 2015

Permissions

Request permissions for this article.

Check for updates

Badges

  • Best Paper

Qualifiers

  • Research-article

Funding Sources

  • National Science Foundation

Conference

MobiSys'15
Sponsor:

Acceptance Rates

MobiSys '15 Paper Acceptance Rate 29 of 219 submissions, 13%;
Overall Acceptance Rate 274 of 1,679 submissions, 16%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)27
  • Downloads (Last 6 weeks)2
Reflects downloads up to 06 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2024)Supporting Flexible and Transparent User Interface Distribution Across Mobile DevicesIEEE Transactions on Mobile Computing10.1109/TMC.2024.334956123:8(8398-8417)Online publication date: Aug-2024
  • (2024)EdgStr: Automating Client-Cloud to Client-Edge-Cloud Transformation2024 IEEE 44th International Conference on Distributed Computing Systems (ICDCS)10.1109/ICDCS60910.2024.00061(589-600)Online publication date: 23-Jul-2024
  • (2023)An Empirical Study of Mobile Code Offloading in Unpredictable EnvironmentsIEEE Access10.1109/ACCESS.2023.329288711(69263-69281)Online publication date: 2023
  • (2022)FlooProceedings of the 20th Annual International Conference on Mobile Systems, Applications and Services10.1145/3498361.3538929(168-182)Online publication date: 27-Jun-2022
  • (2022)A Survey of Performance Optimization for Mobile ApplicationsIEEE Transactions on Software Engineering10.1109/TSE.2021.307119348:8(2879-2904)Online publication date: 1-Aug-2022
  • (2022)How resource utilization influences UI responsiveness of Android softwareInformation and Software Technology10.1016/j.infsof.2021.106728141:COnline publication date: 1-Jan-2022
  • (2022)AppSPIN: reconfiguration-based responsiveness testing and diagnosing for Android AppsAutomated Software Engineering10.1007/s10515-022-00347-929:2Online publication date: 1-Nov-2022
  • (2021)MarauderProceedings of the 19th Annual International Conference on Mobile Systems, Applications, and Services10.1145/3458864.3466866(350-362)Online publication date: 24-Jun-2021
  • (2021)Improving Android App Responsiveness Through Automated Frame Rate ReductionSearch-Based Software Engineering10.1007/978-3-030-88106-1_10(136-150)Online publication date: 11-Oct-2021
  • (2020)Efficient resourceful mobile cloud architecture (mRARSA) for resource demanding applicationsJournal of Cloud Computing: Advances, Systems and Applications10.1186/s13677-020-0155-69:1Online publication date: 7-Feb-2020
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

EPUB

View this article in ePub.

ePub

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media