Addressing the Energy Crisis in Mobile Computing With Developing Power Aware Software: University

Reducing program power consumption by resource restricted devices has recently become a very active research area.The driving force behind this interest is the wide-spread popularity of portable computers, handheld devices, and cell phones.Consequently, there is an accelerating demand for increased battery life in mobile devices. One way in which we can increase battery life is to improve battery technology and to produce devices that consume less power. Alternately, we can take a software-based approach. For example, many devices and hardware components are designed with multiple levels of operating power. Application management software (compilers, runtime, and operating systems) can adjust these levels using static and dynamic techniques to reduce program power consumption. Alternately, such systems can select to off-load computation from mobile devices to more capable, wall-powered computers. Our focus is on software-based techniques for reducing program power consumption. In this paper, we first articulate the problem and describe the state-of-the-art in energy-aware hardware features that can be exploited by software systems. We then present existing techniques that consider static and dynamic information to guide selection of device power levels. We then examine methods for partitioning computation between a battery-powered device and a wall-powered server at the method, task, and program level. Finally, we describe our current research that incorporates and extends these prior works.

[1]  Peter Steenkiste,et al.  Measurement and analysis of the error characteristics of an in-building wireless network , 1996, SIGCOMM 1996.

[2]  Cindy Zheng,et al.  PA-RISC to IA-64: Transparent Execution, No Recompilation , 2000, Computer.

[3]  Mahadev Satyanarayanan,et al.  Agile application-aware adaptation for mobility , 1997, SOSP.

[4]  Scott Shenker,et al.  Scheduling for reduced CPU energy , 1994, OSDI '94.

[5]  Mahmut T. Kandemir,et al.  Influence of compiler optimizations on system power , 2000, Proceedings 37th Design Automation Conference.

[6]  Geoffrey H. Kuenning,et al.  The remote processing framework for portable computer power saving , 1999, SAC '99.

[7]  Vivek Sarkar,et al.  Jalape~ No | a Compiler-supported Java Tm Virtual Machine for Servers , 1999 .

[8]  Red Hat JFFS : The Journalling Flash File System , 2001 .

[9]  Alan Jay Smith,et al.  Software strategies for portable computer energy management , 1998, IEEE Wirel. Commun..

[10]  Randy H. Katz,et al.  Measuring and Reducing Energy Consumption of Network Interfaces in Hand-Held Devices (Special Issue on Mobile Computing) , 1997 .

[11]  Thomas D. Burd,et al.  The simulation and evaluation of dynamic voltage scaling algorithms , 1998, Proceedings. 1998 International Symposium on Low Power Electronics and Design (IEEE Cat. No.98TH8379).

[12]  Robin Kravets,et al.  Application‐driven power management for mobile communication , 2000, Wirel. Networks.

[13]  Fred Douglis,et al.  Adaptive Disk Spin-Down Policies for Mobile Computers , 1995, Comput. Syst..

[14]  Geoffrey H. Kuenning,et al.  Saving portable computer battery power through remote process execution , 1998, MOCO.

[15]  Mahlon S. Wilson,et al.  SMALL BATTERY — FUEL CELL ALTERNATIVE TECHNOLOGY DEVELOPMENT , 1999 .

[16]  Paul Stephen Gauthier,et al.  Reducing Power Consumption for the Next Generation of PDAs: It's in the Network Interface , 1996 .

[17]  John Zahorjan,et al.  The challenges of mobile computing , 1994, Computer.

[18]  Cheng Wang,et al.  Computation offloading to save energy on handheld devices: a partition scheme , 2001, CASES '01.

[19]  Mahadev Satyanarayanan,et al.  Extending mobile computer battery life through energy-aware adaptation , 2001 .

[20]  Mahadev Satyanarayanan,et al.  Disconnected Operation in the Coda File System , 1999, Mobidata.

[21]  Mahadev Satyanarayanan,et al.  Using history to improve mobile application adaptation , 2000, Proceedings Third IEEE Workshop on Mobile Computing Systems and Applications.

[22]  Kazuhiko Yamazaki,et al.  IBM's Linux Watch: The Challenge of Miniaturization , 2002, Computer.

[23]  Mahadev Satyanarayanan,et al.  Self-tuned remote execution for pervasive computing , 2001, Proceedings Eighth Workshop on Hot Topics in Operating Systems.

[24]  Des Watson,et al.  Proxy compilation of dynamically loaded Java classes with MoJo , 2002, LCTES/SCOPES '02.

[25]  James M. Rehg,et al.  A Compilation Framework for Power and Energy Management on Mobile Computers , 2001, LCPC.

[26]  Marvin Theimer,et al.  Heterogeneous process migration by recompilation , 1991, [1991] Proceedings. 11th International Conference on Distributed Computing Systems.

[27]  Thad Starner,et al.  The Challenges of Wearable Computing: Part 1 , 2001, IEEE Micro.

[28]  Emin Gün Sirer,et al.  Design and implementation of a distributed virtual machine for networked computers , 1999, SOSP.

[29]  Troy Downing,et al.  Java Virtual Machine , 1997 .

[30]  James A. Gosling,et al.  The java language environment: a white paper , 1995 .

[31]  Mahmut T. Kandemir,et al.  Energy-conscious compilation based on voltage scaling , 2002, LCTES/SCOPES '02.

[32]  Amin Vahdat,et al.  ECOSystem: managing energy as a first class operating system resource , 2002, ASPLOS X.

[33]  Amer Diwan,et al.  When to use a compilation service? , 2002, LCTES/SCOPES '02.