i-Jacob

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.

[1]  David Wetherall,et al.  How Speedy is SPDY? , 2014, NSDI.

[2]  Xudong Wang,et al.  AppMobiCloud: improving mobile web applications by mobile-cloud convergence , 2013, Internetware.

[3]  Byung-Gon Chun,et al.  CloneCloud: elastic execution between mobile device and cloud , 2011, EuroSys '11.

[4]  Ben Hardekopf,et al.  JSAI: a static analysis platform for JavaScript , 2014, SIGSOFT FSE.

[5]  Ying Zhang,et al.  JavaScript Offloading for Web Applications in Mobile-Cloud Computing , 2015, 2015 IEEE International Conference on Mobile Services.

[6]  Josune Hernantes,et al.  Mobile Web Apps , 2013, IEEE Software.

[7]  Arnar Birgisson,et al.  JSFlow: tracking information flow in JavaScript and its APIs , 2014, SAC.

[8]  Maciej Zbierski,et al.  Bring the Cloud to Your Mobile: Transparent Offloading of HTML5 Web Workers , 2014, 2014 IEEE 6th International Conference on Cloud Computing Technology and Science.

[9]  Xuanzhe Liu,et al.  PRADA: Prioritizing Android Devices for Apps by Mining Large-Scale Usage Data , 2016, 2016 IEEE/ACM 38th International Conference on Software Engineering (ICSE).

[10]  David Wetherall,et al.  Demystifying Page Load Performance with WProf , 2013, NSDI.

[11]  Dan Boneh,et al.  Who killed my battery?: analyzing mobile browser energy consumption , 2012, WWW.

[12]  Seungjoon Lee,et al.  Cloud is not a silver bullet: a case study of cloud-based mobile browsing , 2014, HotMobile.

[13]  Haichen Shen,et al.  Accelerating the mobile web with selective offloading , 2013, MCC '13.

[14]  Aspect-oriented Programs Tool-supported Refactoring of , 2007 .

[15]  Frank Tip,et al.  Tool-supported refactoring for JavaScript , 2011, OOPSLA '11.

[16]  Ying Zhang,et al.  Migration and execution of JavaScript applications between mobile devices and cloud , 2012, SPLASH '12.

[17]  Xuanzhe Liu,et al.  Demystifying the Imperfect Client-Side Cache Performance of Mobile Web Browsing , 2016, IEEE Transactions on Mobile Computing.

[18]  Tao Xie,et al.  Internetware: A Software Paradigm for Internet Computing , 2012, Computer.

[19]  Katinka Wolter,et al.  Analysis of the Energy-Response Time Tradeoff for Mobile Cloud Offloading Using Combined Metrics , 2015, 2015 27th International Teletraffic Congress.

[20]  T. H. Tse,et al.  JSCloud: Toward Remote Execution of JavaScript Code on Handheld Devices , 2012, 2012 12th International Conference on Quality Software.

[21]  Matt Welsh,et al.  Flywheel: Google's Data Compression Proxy for the Mobile Web , 2015, NSDI.

[22]  Xu Chen,et al.  COMET: Code Offload by Migrating Execution Transparently , 2012, OSDI.

[23]  Gang Huang,et al.  A software architecture centric self-adaptation approach for Internetware , 2008, Science in China Series F: Information Sciences.

[24]  Katinka Wolter,et al.  Reducing Task Completion Time in Mobile Offloading Systems through Online Adaptive Local Restart , 2015, ICPE.

[25]  Hari Balakrishnan,et al.  Mahimahi: Accurate Record-and-Replay for HTTP , 2015, USENIX Annual Technical Conference.

[26]  Jan Vitek,et al.  The Eval That Men Do - A Large-Scale Study of the Use of Eval in JavaScript Applications , 2011, ECOOP.

[27]  Eli Tilevich,et al.  Energy-Efficient and Fault-Tolerant Distributed Mobile Execution , 2012, 2012 IEEE 32nd International Conference on Distributed Computing Systems.

[28]  Yi Sun,et al.  An Optimal Offloading Partitioning Algorithm in Mobile Cloud Computing , 2016, QEST.

[29]  Jingwen Leng,et al.  Exploiting Webpage Characteristics for Energy-Efficient Mobile Web Browsing , 2014, IEEE Computer Architecture Letters.

[30]  Alec Wolman,et al.  MAUI: making smartphones last longer with code offload , 2010, MobiSys '10.

[31]  Feng Qian Toward Mobile-Friendly Web Browsing , 2015, IEEE Internet Computing.

[32]  Brian Hackett,et al.  Fast and precise hybrid type inference for JavaScript , 2012, PLDI '12.

[33]  S. Kurumatani,et al.  Executing Client-Side Web Workers in the Cloud , 2012, 2012 9th Asia-Pacific Symposium on Information and Telecommunication Technologies (APSITT).

[34]  Ying Zhang,et al.  Refactoring android Java code for on-demand computation offloading , 2012, OOPSLA '12.