Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article

i-Jacob: An Internetware-Oriented Approach to Optimizing Computation-Intensive Mobile Web Browsing

Published: 13 March 2018 Publication History

Abstract

Web browsing is always a key requirement of Internet users. Current mobile Web apps can contain computation-intensive JavaScript logics and thus affect browsing performance. Learning from our over-decade research and development experiences of the Internetware paradigm, we present the novel and generic i-Jacob approach to improving the performance of mobile Web browsing with effective JavaScript-code offloading. Our approach proposes a programming abstraction to make mobile Web situational and adaptive to contexts, by specifying the computation-intensive and “ offloadable ” code, and develops a platform-independent lightweight runtime spanning the mobile devices and the cloud. We demonstrate the efficiency of i-Jacob with some typical computation-intensive tasks over various combinations of hardware, operating systems, browsers, and network connections. The improvements can reach up to 49× speed-up in response time and 90% saving in energy.

References

[1]
2015. T. J. Watson Libraries for Analysis (WALA). Retrieved from http://wala.sourceforge.net/wiki/index.php/Main_Page.
[2]
Victor Agababov, Michael Buettner, Victor Chudnovsky, Mark Cogan, Ben Greenstein, Shane McDaniel, Michael Piatek, Colin Scott, Matt Welsh, and Bolian Yin. 2015. Flywheel: Google’s data compression proxy for the mobile web. In Proceedings of 12th USENIX Symposium on Networked Systems Design and Implementation (NSDI’15). 367--380.
[3]
Ali. 2015. Aliyun Cloud Platform. Retrieved from http://www.aliyun.com/?lang=en.
[4]
Amazon. 2015. Amazon Silk. Retrieved from http://amazonsilk.wordpress.com/.
[5]
Byung-Gon Chun, Sunghwan Ihm, Petros Maniatis, Mayur Naik, and Ashwin Patti. 2011. CloneCloud: Elastic execution between mobile device and cloud. In Proceedings of the 6th European Conference on Computer systems (EuroSys’11). ACM, 301--314.
[6]
Eduardo Cuervo, Aruna Balasubramanian, Dae-ki Cho, Alec Wolman, Stefan Saroiu, Ranveer Chandra, and Paramvir Bahl. 2010. MAUI: Making smartphones last longer with code offload. In Proceedings of the 8th International Conference on Mobile Systems, Applications, and Services (MobiSy’10). ACM, 49--62.
[7]
ECMAScript. 2015. ECMAScript Standard. Retrieved from http://www.ecma-international.org/.
[8]
Asger Feldthaus, Todd Millstein, Anders Møller, Max Schäfer, and Frank Tip. 2011. Tool-supported refactoring for JavaScript. ACM SIGPLAN Notices 46, 10 (2011), 119--138.
[9]
Google. 2015. Chrome Beta. Retrieved from https://www.google.com/chrome/browser/beta.html.
[10]
Google. 2015. Chrome Developer Tools. Retrieved from https://developer.chrome.com/devtools.
[11]
Google V8. 2014. Google V8 Benchmark Suite. Retrieved from https://v8.googlecode.com/svn/data/benchmarks/v7/run.html.
[12]
Mark S. Gordon, Davoud Anoushe Jamshidi, Scott A. Mahlke, Zhuoqing Morley Mao, and Xu Chen. 2012. COMET: Code offload by migrating execution transparently. In Proceedings of 10th USENIX Symposium on Operating Systems Design and Implementation (OSDI’12). USENIX, 93--106.
[13]
Brian Hackett and Shu-yu Guo. 2012. Fast and precise hybrid type inference for JavaScript. In ACM SIGPLAN Notices, Vol. 47. ACM, 239--250.
[14]
Daniel Hedin, Arnar Birgisson, Luciano Bello, and Andrei Sabelfeld. 2014. JSFlow: Tracking information flow in JavaScript and its APIs. In Proceedings of the 29th Annual ACM Symposium on Applied Computing (SAC’14). 1663--1671.
[15]
Vineeth Kashyap, Kyle Dewey, Ethan A. Kuefner, John Wagner, Kevin Gibbons, John Sarracino, Ben Wiedermann, and Ben Hardekopf. 2014. JSAI: A static analysis platform for JavaScript. In Proceedings of the 22nd ACM SIGSOFT International Symposium on Foundations of Software Engineering (FSE’14). ACM, 121--132.
[16]
Shunsuke Kurumatani, Masashi Toyama, and Eric Y. Chen. 2012. Executing client-side webworkers in the cloud. In Proceedings of 9th Asia-Pacific Symposium on Information and Telecommunication Technologies (APSITT’12). 1--6.
[17]
Young-Woo Kwon and Eli Tilevich. 2012. Energy-efficient and fault-tolerant distributed mobile execution. In Proceedings of IEEE 32nd International Conference on Distributed Computing Systems (ICDCS’12). IEEE, 586--595.
[18]
Winson Y. S. Li, Shangru Wu, Wing Kwong Chan, and T. H. Tse. 2012. JSCloud: Toward remote execution of JavaScript code on handheld devices. In Proceedings of the 12th International Conference on Quality Software (QSIC’12). IEEE, 240--245.
[19]
Xuanzhe Liu, Yun Ma, Yunxin Liu, Tao Xie, and Gang Huang. 2016. Demystifying the imperfect client-side cache performance of mobile web browsing. IEEE Trans. Mob. Comput. 15, 9 (2016), 2206--2220.
[20]
Xuan Lu, Xuanzhe Liu, Huoran Li, Tao Xie, Qiaozhu Mei, Gang Huang, and Feng Feng. 2016. PRADA: Prioritizing android devices for apps by mining large-scale usage data. In Proceedings of the 38th International Conference on Software Engineering (ICSE’16). ACM, 3--13.
[21]
Hong Mei, Gang Huang, Ling Lan, and JunGuo Li. 2008. A software architecture centric self-adaptation approach for internetware. Sci. China Ser. F: Info. Sci. 51, 6 (2008), 722--742.
[22]
Hong Mei, Gang Huang, and Tao Xie. 2012. Internetware: A software paradigm for internet computing. IEEE Comput. 6 (2012), 26--31.
[23]
Monsoon. 2015. Monsoon Power Metering. Retrieved from https://www.msoon.com/LabEquipment/.
[24]
Mozilla. 2014. Mozilla Dromaeo JavaScript Testing Benchmark. Retrieved from http://www.dromaeo.com.
[25]
Mozilla Kraken. 2014. Mozilla Kraken JavaScript Performance Benchmark. Retrieved from http://krakenbenchmark.mozilla.org/.
[26]
Ravi Netravali, Anirudh Sivaraman, Somak Das, Ameesh Goyal, Keith Winstein, James Mickens, and Hari Balakrishnan. 2015. Mahimahi: Accurate record-and-replay for HTTP. In Proceedings of 2015 USENIX Annual Technical Conference (USENIX ATC’15). USENIX, 417--429.
[27]
Feng Qian. 2015. Toward mobile-friendly web browsing. IEEE Internet Comput. 19, 5 (2015), 72--76.
[28]
Gregor Richards, Christian Hammer, Brian Burg, and Jan Vitek. 2011. The eval that men do: A large-scale study of the use of eval in JavaScript applications. In Proceedings of the European Conferences on Object-Oriented Programming (ECOOP’11). Springer, 52--78.
[29]
Nicolás Serrano, Josune Hernantes, and Gorka Gallardo. 2013. Mobile web apps. IEEE Softw. 30, 5 (2013), 22--27.
[30]
Ashiwan Sivakumar, Vijay Gopalakrishnan, Seungjoon Lee, and Sanjay Rao. 2014. Cloud is not a silver bullet: A case study of cloud-based mobile browsing. In Proceedings of the 15th International Workshop on Mobile Computing Systems and Applications (HotMobile’14). ACM, 21:1--21:6.
[31]
Narendran Thiagarajan, Gaurav Aggarwal, Angela Nicoara, Dan Boneh, and Jatinder Pal Singh. 2012. Who killed my battery?: Analyzing mobile browser energy consumption. In Proceedings of the 21st International Conference on World Wide Web (WWW’12). 41--50.
[32]
W3C. 2015. HTML5 Web Workers. Retrieved from http://www.w3schools.com/html/html5_webworkers.asp.
[33]
Qiushi Wang and Katinka Wolter. 2015. Reducing task completion time in mobile offloading systems through online adaptive local restart. In Proceedings of the 6th ACM/SPEC International Conference on Performance Engineering (ICPE’15). 3--13.
[34]
Xudong Wang, Xuanzhe Liu, Gang Huang, and Yunxin Liu. 2013. AppMobiCloud: Improving mobile web applications by mobile-cloud convergence. In Proceedings of the 5th Asia-Pacific Symposium on Internetware (Internetware’13). ACM, 14:1--14:10.
[35]
Xudong Wang, Xuanzhe Liu, Ying Zhang, and Gang Huang. 2012. Migration and execution of Javascript applications between mobile devices and cloud. In Proceedings of the 3rd Annual Conference on Systems, Programming, and Applications: Software for Humanity (SPLASH’12). ACM, 83--84.
[36]
Xiao Sophia Wang, Aruna Balasubramanian, Arvind Krishnamurthy, and David Wetherall. 2013. Demystifying page load performance with WProf. In Proceedings of the 10th USENIX Symposium on Networked Systems Design and Implementation (NSDI’13). USENIX, Berkeley, CA, 473--486.
[37]
Xiao Sophia Wang, Aruna Balasubramanian, Arvind Krishnamurthy, and David Wetherall. 2014. How speedy is SPDY? In Proceedings of the 11th USENIX Symposium on Networked Systems Design and Implementation (NSDI’14). USENIX, 387--399.
[38]
Xiao Sophia Wang, Haichen Shen, and David Wetherall. 2013. Accelerating the mobile web with selective offloading. In Proceedings of the 2nd ACM SIGCOMM Mobile Cloud Computing Workshop (MCC’13). 45--50.
[39]
Huaming Wu, William Knottenbelt, and Katinka Wolter. 2015. Analysis of the energy-response time tradeoff for mobile cloud offloading using combined metrics. In Proceedings of the 27th International Teletraffic Congress (ITC’15). IEEE, 134--142.
[40]
Huaming Wu, William Knottenbelt, Katinka Wolter, and Yi Sun. 2016. An optimal offloading partitioning algorithm in mobile cloud computing. In Proceedings of International Conference on Quantitative Evaluation of Systems (QEST’16). Springer, 311--328.
[41]
Meihua Yu, Gang Huang, Xudong Wang, Ying Zhang, and Xiangqun Chen. 2015. JavaScript offloading for web applications in mobile-cloud computing. In Proceedings of 2015 IEEE International Conference on Mobile Services (MS’15). IEEE, 269--276.
[42]
Maciej Zbierski and Przemyslaw Makosiej. 2014. Bring the cloud to your mobile: Transparent offloading of HTML5 web workers. In Proceedings of 2014 IEEE International Conference on Cloud Computing Technology and Science (CloudCom’14). IEEE, 198--203.
[43]
Ying Zhang, Gang Huang, Xuanzhe Liu, Wei Zhang, Hong Mei, and Shunxiang Yang. 2012. Refactoring android java code for on-demand computation offloading. In ACM SIGPLAN Notices, Vol. 47. 233--248.
[44]
Yuhao Zhu, Aditya Srikanth, Jingwen Leng, and Vijay Janapa Reddi. 2014. Exploiting webpage characteristics for energy-efficient mobile web browsing. Comput. Arch. Lett. 13, 1 (2014), 33--36.

Cited By

View all
  • (2023)Benefits, challenges, and usability evaluation of DeloreanJS: a back-in-time debugger for JavaScriptPeerJ Computer Science10.7717/peerj-cs.12389(e1238)Online publication date: 24-Feb-2023
  • (2022)Research on internetware: Review and prospectChinese Science Bulletin10.1360/TB-2022-058567:32(3782-3792)Online publication date: 21-Jul-2022
  • (2022)AoDNN: An Auto-Offloading Approach to Optimize Deep Inference for Fostering Mobile WebIEEE INFOCOM 2022 - IEEE Conference on Computer Communications10.1109/INFOCOM48880.2022.9796763(2198-2207)Online publication date: 2-May-2022
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Transactions on Internet Technology
ACM Transactions on Internet Technology  Volume 18, Issue 2
Special Issue on Internetware and Devops and Regular Papers
May 2018
294 pages
ISSN:1533-5399
EISSN:1557-6051
DOI:10.1145/3182619
  • Editor:
  • Munindar P. Singh
Issue’s Table of Contents
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]

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 13 March 2018
Accepted: 01 April 2017
Revised: 01 March 2017
Received: 01 October 2016
Published in TOIT Volume 18, Issue 2

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. JavaScript offloading
  2. Mobile Web
  3. energy
  4. performance

Qualifiers

  • Research-article
  • Research
  • Refereed

Funding Sources

  • National Natural Science Foundation of China
  • Microsoft-Peking University Joint program
  • High-Tech Research and Development Program of China

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)7
  • Downloads (Last 6 weeks)1
Reflects downloads up to 09 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2023)Benefits, challenges, and usability evaluation of DeloreanJS: a back-in-time debugger for JavaScriptPeerJ Computer Science10.7717/peerj-cs.12389(e1238)Online publication date: 24-Feb-2023
  • (2022)Research on internetware: Review and prospectChinese Science Bulletin10.1360/TB-2022-058567:32(3782-3792)Online publication date: 21-Jul-2022
  • (2022)AoDNN: An Auto-Offloading Approach to Optimize Deep Inference for Fostering Mobile WebIEEE INFOCOM 2022 - IEEE Conference on Computer Communications10.1109/INFOCOM48880.2022.9796763(2198-2207)Online publication date: 2-May-2022
  • (2021)Joint computation offloading and deployment optimization in multi-UAV-enabled MEC systemsPeer-to-Peer Networking and Applications10.1007/s12083-021-01245-9Online publication date: 25-Sep-2021
  • (2020)D-Goldilocks: Automatic Redistribution of Remote Functionalities for Performance and Efficiency2020 IEEE 27th International Conference on Software Analysis, Evolution and Reengineering (SANER)10.1109/SANER48275.2020.9054870(251-260)Online publication date: Feb-2020

View Options

Get Access

Login options

Full Access

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