Managing Energy As a First Class Operating System Resource
Total Page:16
File Type:pdf, Size:1020Kb
ECOSystem: Managing Energy as a First Class Operating System Resource Heng Zeng, Xiaobo Fan, Carla Ellis, Alvin Lebeck, and Amin Vahdat Department of Computer Science Duke University ¡ zengh,xiaobo,carla,alvy,vahdat ¢ @cs.duke.edu Technical Report CS-2001-01 March 25, 2001; revised August 8, 2001 Abstract economic costs of powering a large computing facility. Each scenario has slightly different implications. In this work, we The energy consumption of computers has recently been focus on battery lifetime which allows us to exploit certain widely recognized to be a major challenge of systems design. characteristics of battery technology. Our focus in this paper is to investigate what role the oper- Ideally, the problem of managing the energy consumed ating system can play in improving energy usage without de- by computing devices should be addressed at all levels of pending on application software being rewritten to become system design - from low-power circuits to applications ca- energy-aware. Energy, with its global impact on the system, pable of adapting to the available energy source. Many re- is a compelling reason for unifying resource management. search and industrial efforts are currently focusing on devel- Thus we propose the Currentcy Model that unifies energy oping low-power hardware. We have previously advocated accounting over diverse hardware components and enables the value of including energy-aware application software as fair allocation of available energy among applications. Our a significant layer in the design of energy efficient computing particular goal is to extend battery lifetime for mobile de- systems [8]. It is now a widely held view in the community vices. We have implemented ECOSystem, a modified Linux, that application involvement is important; however, the ne- that incorporates our currentcy model and demonstrates the cessity of application involvement for achieving energy sav- feasibility of explicit control of the battery resource. Experi- ings via software has not yet been shown. Thus, an important mental results show that ECOSystem can hit a target battery question to ask is what the operating system can do within lifetime, and for reasonable targets, can do so with accept- its own resource management functions to improve energy able performance. usage without assuming any explicit cooperation from appli- cations. Our scientific objective in this paper is to explore the degree to which energy-related goals can be achieved at 1 Introduction the OS-level, exploiting existing, state-of-the-art hardware features, but requiring no application-specific knowledge or One of the emerging challenges of computer system design the ability of applications to adapt to energy constraints. This is the management and conservation of energy. This goal point of view also has practical implications since we can not manifests itself in a number of ways. The goal may be to depend on many current applications being rewritten to be- extend the lifetime of the batteries in a mobile/wireless de- come energy-aware, at least until it is demonstrated that the vice. The processing power, memory, and network band- effort needed will produce dramatically better results than width of such devices are increasing rapidly, often resulting systems-based approaches or until a suitable infrastructure in an increase in demand for power, while battery capacity is available to facilitate and support such redesign. is improving at only a modest pace. Other goals may be to limit the cooling requirements of a machine or to reduce the One of the major contributions of our work is the intro- duction of an energy accounting model, called the currentcy £ This work is supported in part by the National Science model, that unifies resource management for different com- Foundation (EIA-99772879,ITR-0082914), Intel, and Microsoft. ponents of the system and allows energy itself to be explic- Vahdat is also supported by an NSF CAREER award (CCR- 9984328). Additional information on this work is available at itly managed. Unifying resource management has often been http://www.cs.duke.edu/ari/millywatt/. mentioned as a desirable goal, but a focus on energy provides 1 a compelling motivation to seriously pursue this idea. En- formance degradation. Our proportional sharing serves to ergy has a global impact on all of the components of the en- distribute the performance impact among competing activi- tire system. In our model, applications can spend their share ties in an effective way. of energy on processing, on disk I/O, or on network com- The paper is organized as follows. In the next section, we munication - with such expenditures on different hardware outline the underlying assumptions of this work, including components represented by a common model. A unified the power budget, the characteristics of batteries, and the na- model makes energy use tradeoffs among hardware compo- ture of the expected workload of applications. In Section 3, nents more explicit. we present the currentcy model and the design of the cur- In general, there are two problems to consider at the OS- rentcy allocator. In Section 4, we describe the prototype im- level for attacking most of the specific energy-related goals plementation and in Section 5, we present the results of ex- described above. The first is to develop resource manage- periments to assess the benefits of this approach. We discuss ment policies that eliminate waste or overhead and make related work in the next section and then conclude. using the device as energy efficient as possible. An exam- In future work, after exploring the possibilities for OS- ple is a disk spindown policy that uses the minimal energy centric energy management, we can begin to identify com- whenever the disk is idle. This has been the traditional ap- plementary ways in which applications can interact with OS proach and has typically been employed in a piecemeal, per- policies to enhance their effectiveness. We plan to consider device fashion. We believe our currentcy model will pro- how charging policies for the use of different devices will vide a framework to view such algorithms from a more sys- suggest appropriate interactions with applications that can temwide perspective. The second approach is to change the be included in an effective API that is consistent with our offered workload to reduce the amount of work to be done. model. This is the underlying strategy in application adaption where the amount of work is reduced, often by changing the fi- delity of objects accessed, presumably in an undetectable 2 Background and Motivation or acceptably degraded manner for the user of the applica- tion. Unfortunately, without the benefit of application-based For the users of mobile computing, battery lifetime is an im- knowledge, other ways of reducing workload demands must portant performance measure. Typically, users and system be found. Our currentcy model provides a framework in designers face a tradeoff between maximizing lifetime and which to formulate policies intended to selectively degrade traditional performance measures such as throughput and re- the level of service to preserve energy capacity for more im- sponse time. We assume a workload consisting of a mix portant work. Assuming that previous work on per-device of interactive productivity applications and multimedia pro- power management policies provides an adequate base upon cessing. Depending on the applications of the device, the which to design experiments, we concentrate first on the less- actual goal might be to have the battery last just long enough explored second problem – formulating strategies for adjust- to accomplish a specified task (e.g., finish the scheduled pre- ing the quality of service delivered to applications. Later, sentation on the way to the meeting) or a fixed amount of we will return to the first issue and revisit such policies, ex- work (e.g., viewing a DVD movie). Thus, metrics have been pressed in terms of our model. proposed that try to capture the tradeoff between the work Observing that the lifetime of a battery can be controlled completed and battery lifetime [21]. Alternatively, the work by limiting the discharge rate [20, 26], the energy objective might not be fixed, but an acceptable quality of service is we consider in this work for our energy management poli- desired for as long as possible (e.g., for an MP3 player). cies is to control the discharge rate to meet a specified bat- Extending battery lifetime must usually be balanced against tery lifetime goal. The first level allocation decision is to some loss in performance. Thus, our job is twofold: to determine how much currentcy can be allocated to all the ac- achieve the battery lifetime goal and to find a fair way to tive tasks in the next time interval so as to throttle to some distribute the performance impact among applications. Cer- target discharge rate. Essentially, this first-level allocation tain battery characteristics must be considered when trying determines the ratio of active work that can be accomplished to control battery lifetime, as described in Section 2.1. to enforced idleness that offers opportunities to power down OS-level energy management can be split across two di- components. Then, the second level decision is to propor- mensions. Along one dimension, there are a wide variety tionally share this allocation among competing tasks. of devices in the system (e.g., the CPU, disks, network in- We have implemented an OS prototype incorporating terfaces, display) that can draw power concurrently and are these energy allocation and accounting policies. Experi- amenable to very different management techniques. This ments quantify the battery lifetime / performance tradeoffs motivates a unified model that can be used to characterize of this approach. We demonstrate that the system can hit a the power/energy consumption of all of these components. target battery lifetime.