Computing while charging: building a distributed computing infrastructure using smartphones

Every night, a large number of idle smartphones are plugged into a power source for recharging the battery. Given the increasing computing capabilities of smartphones, these idle phones constitute a sizeable computing infrastructure. Therefore, for an enterprise which supplies its employees with smartphones, we argue that a computing infrastructure that leverages idle smartphones being charged overnight is an energy-efficient and cost-effective alternative to running tasks on traditional server infrastructure. While parallel execution and scheduling models exist for servers (e.g., MapReduce), smartphones present a unique set of technical challenges due to the heterogeneity in CPU clock speed, variability in network bandwidth, and lower availability compared to servers. In this paper, we address many of these challenges to develop CWC---a distributed computing infrastructure using smartphones. Specifically, our contributions are: (i) we profile the charging behaviors of real phone owners to show the viability of our approach, (ii) we enable programmers to execute parallelizable tasks on smartphones with little effort, (iii) we develop a simple task migration model to resume interrupted task executions, and (iv) we implement and evaluate a prototype of CWC (with 18 Android smartphones) that employs an underlying novel scheduling algorithm to minimize the makespan of a set of tasks. Our extensive evaluations demonstrate that the performance of our approach makes our vision viable. Further, we explicitly evaluate the performance of CWC's scheduling component to demonstrate its efficacy compared to other possible approaches.

[1]  Deborah Estrin,et al.  A first look at traffic on smartphones , 2010, IMC '10.

[2]  Shivakant Mishra,et al.  MapReduce System over Heterogeneous Mobile Devices , 2009, SEUS.

[3]  Bi Wu,et al.  CrowdLab: An architecture for volunteer mobile testbeds , 2011, 2011 Third International Conference on Communication Systems and Networks (COMSNETS 2011).

[4]  Vijay V. Vazirani,et al.  Approximation Algorithms , 2001, Springer Berlin Heidelberg.

[5]  Deborah Estrin,et al.  Participatory sensing: applications and architecture , 2010, MobiSys '10.

[6]  Antony Rowstron,et al.  Nobody ever got fired for using Hadoop on a cluster , 2012, HotCDP '12.

[7]  Pedro Merino,et al.  A Testbed for Energy Profile Characterization of IP Services in Smartphones over Live Networks , 2010, Mob. Networks Appl..

[8]  Spiros Papadimitriou,et al.  A case for micro-cellstores: energy-efficient data management on recycled smartphones , 2011, DaMoN '11.

[9]  Arun Venkataramani,et al.  Disaster Recovery as a Cloud Service: Economic Benefits & Deployment Challenges , 2010, HotCloud.

[10]  Sanjay Ghemawat,et al.  MapReduce: Simplified Data Processing on Large Clusters , 2004, OSDI.

[11]  Paramvir Bahl,et al.  Switchboard: a matchmaking system for multiplayer mobile games , 2011, MobiSys '11.

[12]  David A. Maltz,et al.  Cloudward bound: planning for beneficial migration of enterprise applications to the cloud , 2010, SIGCOMM '10.

[13]  Thomas A. Henzinger,et al.  Static Scheduling in Clouds , 2011, HotCloud.

[14]  Diana Marculescu,et al.  Analysis of dynamic voltage/frequency scaling in chip-multiprocessors , 2007, Proceedings of the 2007 international symposium on Low power electronics and design (ISLPED '07).

[15]  Haiyun Luo,et al.  Traffic-driven power saving in operational 3G cellular networks , 2011, MobiCom.

[16]  Christian Belady,et al.  GREEN GRID DATA CENTER POWER EFFICIENCY METRICS: PUE AND DCIE , 2008 .

[17]  Akinori Yonezawa,et al.  A Simple Extension of Java Language for Controllable Transparent Migration and Its Portable Implementation , 1999, COORDINATION.

[18]  Ramachandran Ramjee,et al.  PRISM: platform for remote sensing using smartphones , 2010, MobiSys '10.

[19]  Edward G. Coffman,et al.  An Application of Bin-Packing to Multiprocessor Scheduling , 1978, SIAM J. Comput..

[20]  Pedro Merino Gomez,et al.  A testbed for energy profile characterization of IP services in smartphones over live networks , 2010 .

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

[22]  Peter A. Dinda,et al.  Characterizing and modeling user activity on smartphones: summary , 2010, SIGMETRICS '10.

[23]  Jeffrey S. Chase,et al.  Reflective Control for an Elastic Cloud Application: An Automated Experiment Workbench , 2009, HotCloud.

[24]  Ivan Beschastnikh,et al.  Seattle: a platform for educational cloud computing , 2009, SIGCSE '09.

[25]  Earl Oliver Diversity in smartphone energy consumption , 2010, S3 '10.

[26]  Randy H. Katz,et al.  NapSAC: design and implementation of a power-proportional web cluster , 2010, CCRV.

[27]  Nathan Eagle,et al.  txteagle: Mobile Crowdsourcing , 2009, HCI.

[28]  Earl Oliver,et al.  The challenges in large-scale smartphone user studies , 2010, HotPlanet '10.