On the Energy Consumption and Performance of Systems Software
Total Page:16
File Type:pdf, Size:1020Kb
On the Energy Consumption and Performance of Systems Software Zhichao Li, Radu Grosu, Priya Sehgal, Scott A. Smolka, Scott D. Stoller, and Erez Zadok Department of Computer Science, Stony Brook University {zhicli,grosu,psehgal,sas,stoller,ezk}@cs.stonybrook.edu ABSTRACT issue in the design of computing systems [5, 14, 20, 22, 29, 33, 43]. Models of energy consumption and performance are necessary to The goals of energy-aware system design include saving energy understand and identify system behavior, prior to designing ad- without sacrificing performance, and supporting flexible, dynamic vanced controls that can balance out performance and energy use. trade-offs between energy consumption and performance. Accurate This paper considers the energy consumption and performance of models of energy consumption and performance provide a founda- servers running a relatively simple file-compression workload. We tion for the design of energy-aware systems. found that standard techniques for system identification do not pro- A large portion of the energy consumed by IT infrastructure is duce acceptable models of energy consumption and performance, due to desktop machines and commercial servers [8]. Moreover, due to the intricate interplay between the discrete nature of soft- the total amount of electronic data stored world-wide is rising ex- ware and the continuous nature of energy and performance. This ponentially. By 2020, that figure is expected to reach 35 Zetta motivated us to perform a detailed empirical study of the energy Bytes [16]; energy consumption is expected to grow just as rapidly. consumption and performance of this system with varying com- Thus, it is desirable to develop highly scalable solutions that are pression algorithms and compression levels, file types, persistent significantly better than today’s solutions. storage media, CPU DVFS levels, and disk I/O schedulers. Our In prior work, we analyzed the energy and performance profiles results identify and illustrate factors that complicate the system’s of server workloads, such as Web servers, email servers, database energy consumption and performance, including nonlinearity, in- servers, and file compression [24, 35]. We discovered large devia- stability, and multi-dimensionality. Our results provide a basis for tions for both performance and energy consumption—as much as future work on modeling energy consumption and performance to 10 times—suggesting that there are significant opportunities to save support principled design of controllable energy-aware systems. energy and improve performance. Our past work considered those systems only as black-boxes and reported their performance and energy consumption without a deeper understanding of the exact Categories and Subject Descriptors reasons for those deviations. H.3.4 [Information Storage and Retrieval]: Systems and Soft- Seeking a better understanding of the system internals of these ware—Performance evaluation (efficiency and effectiveness); C.4 workloads, we tried to identify their internal behavior, so we could [Performance of Systems]: Modeling techniques; I.2.8 [Artificial build advanced controllers to better manage both energy and perfor- Intelligence]: Problem Solving, Control Methods, and Search— mance. Unfortunately, our initial attempts to identify these systems Control theory using traditional linear-systems identification techniques resulted in poor models with low prediction accuracy (under 50%). General Terms In this paper, we shed considerable light on the complexities un- derlying systems-software energy consumption and performance. Measurement, Performance In particular, we present an in-depth experimental evaluation of the energy consumption and performance of a relatively simple yet fa- Keywords miliar file-compression workload as a representative workload in- Energy efficiency, System identification, Data compression volving both substantial CPU usage and disk I/O. We also analyze the effects of several input parameters, including choice of com- 1. INTRODUCTION pression algorithm, compression level, file type, persistent storage media (e.g., SATA, SAS, and SSD), CPU Dynamic Voltage and The carbon footprint of the IT industry, though only 2% of the Frequency Scaling (DVFS) level, and disk I/O scheduler—all un- world economy, is estimated to be equal to that of the entire avi- der the Linux operating system. ation industry [7]. Energy consumption is emerging as a critical Our experimental results show that energy consumption and per- formance are unexpectedly complex and cannot be easily modeled using standard system-identification techniques. We identify sev- Permission to make digital or hard copies of all or part of this work for eral factors that contribute to this complexity, in terms of nonlin- personal or classroom use is granted without fee provided that copies are earity, instability, and multi-dimensionality. Our results suggest not made or distributed for profit or commercial advantage and that copies that hybrid discrete-continuous models [1, 18] may provide a suit- bear this notice and the full citation on the first page. To copy otherwise, to able foundation for modeling and control of energy consumption republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. and performance in energy-aware systems software. SYSTOR’11, May 30–June 1, 2011, Haifa, Israel. The rest of the paper is organized as follows. Section 2 con- Copyright 2011 ACM 978-1-4503-0773-4/11/05 ...$10.00. siders related work. Section 3 provides the requisite background. 3.2 I/O Schedulers Section 4 provides the motivation for this work. Section 5 presents I/O scheduling has been studied aggressively [2, 4, 19, 23, 39] es- our experimental setup and benchmarks. Section 6 contains our ex- pecially since the speed of disk lags far behind the speed of CPU perimental results. We conclude in Section 7 and describe future and RAM. work in Section 8. Normally, a disk scheduler tries to maintain a balance between fairness, performance, and latency (or real time guarantees). Fair- 2. RELATED WORK ness guarantees that every process has fair share of the access to This section places our work in the context of past work. disk on a multi-user system. Performance requires the scheduler to serve requests predictably to save both time and energy. La- 2.1 Energy Efficiency tency means that any request must be served within a given time Many energy-saving techniques have been developed at both the limit. There are four main I/O schedulers in Linux systems: (1) hardware and software levels. For example, virtualization allows CFQ (the default), which emphasizes fairness; (2) ANTICIPATORY, multiple Operating Systems (OSs) to run on one server, sharing which emphasizes performance; (3) DEADLINE, which is designed most of the resources, thereby reducing energy consumption. More- for low latency and real time access; and (4) NOOP, which is a sim- over, there are energy-aware cache replacement algorithms [41], ple first-come-first-served scheduler. energy-aware task and interrupt management techniques [37], on- 3.3 Power and Energy Consumption line learning-based power management [10], predictive data group- ing and replication [14], and energy-aware file systems configura- In this subsection, we introduce the power and energy consump- tion pruning techniques [35]. Some modeling based approaches tion patterns for both CPU and disk, since our workload is both have been proposed by Isci, Sarikaya, and others [21, 34]. Some CPU-intensive and disk-intensive. of our own past studies show significant energy savings possible The power consumed in a processor consists of three portions: in commodity Linux servers running common workloads such as dynamic power Pdynamic, static power Pstatic, and short-circuit Web, email, database, compression, etc. [24, 35]. Generally, op- power [26]. For Complementary Metal Oxide Semiconductor (CM- timal use of energy-saving techniques requires accurate models of OS) chips, dynamic power refers to the energy consumption in system energy consumption with respect to appropriate parameters; switching transistors, while static power refers to the flowing leak- the work described in this paper is a step towards the development age current when a transistor is off. Short-circuit power is con- of such models. sumed only during signal transitions and is insignificant. The dy- namic power is calculated as follows: 2.2 Energy Consumption of Data Compression 2 Our prior work, conducted by Kothiyal et al., evaluated energy Pdynamic = C × V × f (1) consumption and performance of data compression on servers [24] and demonstrated that compression reduces energy consumption in where C is the capacitance per cycle, V is the supply voltage and some situations but not all. A careful application of compression f is the processor clock frequency. can save energy in some cases by a factor of 10×, but a careless ap- Although dynamic power is the primary source of power dissipa- plication of compression can easily waste energy and slow perfor- tion in CMOS chips, static power is becoming an important issue. mance by 200×. In contrast to the work described in this paper, our Static power is computed as follows: past study did not focus on accurate modeling of energy consump- tion and hence did not discuss system identification or analyze the Pstatic = V × Ith + Vbs × (Ijn + Ibn) (2) behavioral characteristics of energy consumption and performance that make accurate modeling difficult. where Ith is the sub-threshold leakage current, Vbs is the body bias voltage, and Ijn and Ibs are the drain and source to body junction 3. BACKGROUND leakage current, respectively. Processors with Dynamic Voltage and Frequency Scaling (DVFS) In this section, we describe background work in terms of com- are capable of operating at multiple frequency and voltage levels. pression algorithms (Section 3.1), I/O schedulers (Section 3.2), and Dynamic power is considered to be the dominant portion of the pro- power and energy consumption (Section 3.3). cessor’s energy consumption. As seen from Equation 1, Pdynamic 3.1 Compression Algorithms depends linearly on frequency and quadratically on voltage.