Power-aware computing systems. Christian W. Probst*

Similar documents
Overview. 1 Trends in Microprocessor Architecture. Computer architecture. Computer architecture

Chapter 1 Introduction

Low Power Design of Successive Approximation Registers

Low Transistor Variability The Key to Energy Efficient ICs

A NEW APPROACH FOR DELAY AND LEAKAGE POWER REDUCTION IN CMOS VLSI CIRCUITS

Probabilistic and Variation- Tolerant Design: Key to Continued Moore's Law. Tanay Karnik, Shekhar Borkar, Vivek De Circuit Research, Intel Labs

A Survey of the Low Power Design Techniques at the Circuit Level

Parallel Computing 2020: Preparing for the Post-Moore Era. Marc Snir

Intel s High-k/Metal Gate Announcement. November 4th, 2003

CS4617 Computer Architecture

Power Spring /7/05 L11 Power 1

Datorstödd Elektronikkonstruktion

Leakage Power Reduction for Logic Circuits Using Variable Body Biasing Technique

Low Power VLSI Circuit Synthesis: Introduction and Course Outline

A HIGH SPEED & LOW POWER 16T 1-BIT FULL ADDER CIRCUIT DESIGN BY USING MTCMOS TECHNIQUE IN 45nm TECHNOLOGY

Static Power and the Importance of Realistic Junction Temperature Analysis

Low Power Design for Systems on a Chip. Tutorial Outline

BICMOS Technology and Fabrication

LOW-POWER SOFTWARE-DEFINED RADIO DESIGN USING FPGAS

Course Content. Course Content. Course Format. Low Power VLSI System Design Lecture 1: Introduction. Course focus

DIGITALLY ASSISTED ANALOG: REDUCING DESIGN CONSTRAINTS USING NONLINEAR DIGITAL SIGNAL PROCESSING

Pramoda N V Department of Electronics and Communication Engineering, MCE Hassan Karnataka India

Intel s Breakthrough in High-K Gate Dielectric Drives Moore s Law Well into the Future

Low-Power Digital CMOS Design: A Survey

LSI Design Flow Development for Advanced Technology

CHAPTER 1 INTRODUCTION

Energy Consumption Issues and Power Management Techniques

Ultra Low Power VLSI Design: A Review

The Transistor. Survey: What is Moore s Law? Survey: What is Moore s Law? Technology Unit Overview. Technology Generations

DYNAMIC VOLTAGE FREQUENCY SCALING (DVFS) FOR MICROPROCESSORS POWER AND ENERGY REDUCTION

Low Power Design in VLSI

ISSCC 2003 / SESSION 1 / PLENARY / 1.1

MOBY-DIC. Grant Agreement Number Model-based synthesis of digital electronic circuits for embedded control. Publishable summary

Low-Power VLSI. Seong-Ook Jung VLSI SYSTEM LAB, YONSEI University School of Electrical & Electronic Engineering

Lecture 04 CSE 40547/60547 Computing at the Nanoscale Interconnect

Static Energy Reduction Techniques in Microprocessor Caches

A Case Study of Nanoscale FPGA Programmable Switches with Low Power

COMPARISON AMONG DIFFERENT CMOS INVERTER WITH STACK KEEPER APPROACH IN VLSI DESIGN

ZIGZAG KEEPER: A NEW APPROACH FOR LOW POWER CMOS CIRCUIT

Comparative Study of Different Low Power Design Techniques for Reduction of Leakage Power in CMOS VLSI Circuits

A Static Power Model for Architects

Energy Reduction of Ultra-Low Voltage VLSI Circuits by Digit-Serial Architectures

Low-Power CMOS VLSI Design

On-chip Networks in Multi-core era

Reduce Power Consumption for Digital Cmos Circuits Using Dvts Algoritham

CMOS Technology for Computer Architects

Leakage Power Reduction by Using Sleep Methods

Low Power Design Part I Introduction and VHDL design. Ricardo Santos LSCAD/FACOM/UFMS

Variable Body Biasing Technique to Reduce Leakage Current in 4x4 DRAM in VLSI

Introduction. Digital Integrated Circuits A Design Perspective. Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolic. July 30, 2002

Low Power Design of Schmitt Trigger Based SRAM Cell Using NBTI Technique

MICROPROCESSOR TECHNOLOGY

Innovations In Techniques And Design Strategies For Leakage And Overall Power Reduction In Cmos Vlsi Circuits: A Review

LEAKAGE POWER REDUCTION IN CMOS CIRCUITS USING LEAKAGE CONTROL TRANSISTOR TECHNIQUE IN NANOSCALE TECHNOLOGY

ESTIMATION OF LEAKAGE POWER IN CMOS DIGITAL CIRCUIT STACKS

Lecture 13 CMOS Power Dissipation

A Case for Opportunistic Embedded Sensing In Presence of Hardware Power Variability

LOW POWER & LOW VOLTAGE APPROXIMATION ADDERS IMPLEMENTATION FOR DIGITAL SIGNAL PROCESSING Raja Shekhar P* 1, G. Anad Babu 2

DESIGN OF LOW POWER SAR ADC FOR ECG USING 45nm CMOS TECHNOLOGY

A Review of Clock Gating Techniques in Low Power Applications

Advanced Digital Design

Seong-Ook Jung VLSI SYSTEM LAB, YONSEI University

CMOS circuits and technology limits

Sleepy Keeper Approach for Power Performance Tuning in VLSI Design

An Overview of Static Power Dissipation

Computer Aided Design of Electronics

Arda Gumusalan CS788Term Project 2

Low Power and High Performance Level-up Shifters for Mobile Devices with Multi-V DD

Interconnect-Power Dissipation in a Microprocessor

Copyright 2003 The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Slides prepared by Walid A. Najjar & Brian J.

Embedded Systems. 9. Power and Energy. Lothar Thiele. Computer Engineering and Networks Laboratory

Designing CMOS folded-cascode operational amplifier with flicker noise minimisation

Recent Trends in Semiconductor IC Device Manufacturing

Minimizing the Sub Threshold Leakage for High Performance CMOS Circuits Using Stacked Sleep Technique

Research Statement. Sorin Cotofana

A Literature Review on Leakage and Power Reduction Techniques in CMOS VLSI Design

The challenges of low power design Karen Yorav

Short-Circuit Power Reduction by Using High-Threshold Transistors

Power Efficiency of Half Adder Design using MTCMOS Technique in 35 Nanometre Regime

LOW POWER VLSI TECHNIQUES FOR PORTABLE DEVICES Sandeep Singh 1, Neeraj Gupta 2, Rashmi Gupta 2

Design of Ultra-Low Power PMOS and NMOS for Nano Scale VLSI Circuits

Low Power VLSI Circuits and Systems Prof. Ajit Pal Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur

Read/Write Stability Improvement of 8T Sram Cell Using Schmitt Trigger

Circuit Seed Overview

Reliability and Energy Dissipation in Ultra Deep Submicron Designs

Statistical Static Timing Analysis Technology

White Paper Stratix III Programmable Power

An Efficient Design of CMOS based Differential LC and VCO for ISM and WI-FI Band of Applications

Trends and Challenges in VLSI Technology Scaling Towards 100nm

2nd ACM International Workshop on Mobile Systems for Computational Social Science

Ramon Canal NCD Master MIRI. NCD Master MIRI 1

Leakage Power Minimization in Deep-Submicron CMOS circuits

DESIGN FOR LOW-POWER USING MULTI-PHASE AND MULTI- FREQUENCY CLOCKING

EE241 - Spring 2004 Advanced Digital Integrated Circuits. Announcements. Borivoje Nikolic. Lecture 15 Low-Power Design: Supply Voltage Scaling

Design of High Performance Arithmetic and Logic Circuits in DSM Technology

Newer process technology (since 1999) includes :

A LOW POWER DESIGN FOR ARITHMETIC AND LOGIC UNIT

Study On Two-stage Architecture For Synchronous Buck Converter In High-power-density Power Supplies title

An Analysis of Novel CMOS Ring Oscillator Using LECTOR Technique with Minimum Leakage

UNIT-II LOW POWER VLSI DESIGN APPROACHES

Transcription:

Int. J. Embedded Systems, Vol. 3, Nos. 1/2, 2007 3 Power-aware computing systems Christian W. Probst* Informatics and Mathematical Modelling, Technical University of Denmark, 2800 Kongens Lyngby, Denmark E-mail: probst@imm.dtu.dk *Corresponding author Ulrich Kremer Department of Computer Science, Rutgers University, 96 Frelinghuysen Road, NJ 08854 Piscataway, USA E-mail: uli@cs.rutgers.edu Luca Benini DEIS, Universit`a di Bologna, Viale Risorgimento 2, 40136 Bologna, Italy E-mail: lbenini@deis.unibo.it Peter Schelkens ETRO, Vrije Universiteit Brussel, Pleinlaan 2, 1050 Brussel, Belgium E-mail: Peter.Schelkens@vub.ac.be Abstract: From April 3rd to April 8th 2005, a scientific workshop on the topic of Power-aware Computing Systems was held at Schloss Dagstuhl, Germany. The main seminar result is a classification of the obstacles, and therefore research directions, with respect to power consumption seen for different classes of devices, ranging from ultra low-power devices, over handheld devices, to servers and work stations. In a next step the seminar identified the impact different levels of dealing with power concerns can have. This paper summarises the objectives and structure as well as the outcome of that workshop. Keywords: power-aware architectures; energy consumption; hardware design; software infrastructure. Reference to this paper should be made as follows: Probst, C.W., Kremer, U., Benini, L. and Schelkens, P. (2007) Power-aware computing systems, Int. J. Embedded Systems, Vol. 3, Nos. 1/2, pp.3 7. Biographical notes: Christian W. Probst is an Assistant Professor in the Department for Informatics and Mathematical Modelling at the Technical University of Denmark. His research interests include language-based security, virtual execution environments, static analyses and optimising compilers and distributed systems. He received Dr. Ing. and Diploma Degrees in Computer Science from Saarland University, Germany. Ulrich Kremer is an Associate Professor in the Department of Computer Science at Rutgers University. His research interests include advanced optimising compilers, performance prediction models, language design and compiler optimisations for location-aware dynamic networks and compiler support for power/energy management. He received his PhD and MS in Computer Science from Rice University in 1995 and 1993, respectively, and his Diploma in Computer Science from the University of Bonn, Germany, in 1987. Luca Benini received the BS Degree in Electrical Engineering from the University of Bologna, Italy, in 1991 and the MS and PhD Degrees in Electrical Engineering from Stanford University in 1994 and 1997, respectively. He is an Associate Professor in the Department of Electronics and Computer Science in the University of Bologna. Copyright 2007 Inderscience Enterprises Ltd.

4 C.W. Probst, U. Kremer, L. Benini and P. Schelkens Peter Schelkens is a Professor in the Department of Electronics and Information Processing at the Vrije Universiteit Brussel and a member of the DESICS division of the Interuniversity Microelectronics Institute. He received an Electrical Engineering Degree (MSc) in Applied Physics in 1994, a Biomedical Engineering Degree (Medical Physics) in 1995 and a PhD Degree in Applied Sciences in 2001 from the Vrije Universiteit Brussel. 1 Introduction Rapidly increasing chip densities and processor speeds have made energy dissipation a leading concern in computer design. The problem raised by energy consumption is especially severe for a whole class of computing devices which has recently become almost ubiquitously available mobile devices like notebooks, PDAs, or mobile phones. On the one hand, these are only equipped with a very limited power supply, so any computation on such a device should be especially careful about resource usage. Even worse, the battery technology for these devices has not kept pace with advances in processor technology and the growing complexity of software. On the other hand, cooling mechanisms become more and more important. Recent trends suggest that processor power consumption doubles every four years and cooling costs rise exponentially with heat increases (Gunther et al., 2001). The future processors will require energy management solutions more cost effective than the cooling fans used today. It has been the goal of this Dagstuhl Seminar (Benini et al., 2005) to bring together researchers from the main communities working on reducing power consumption, namely hardware, operating systems, virtual-execution environments, compilers and applications. The main seminar result, given in Section 3, is a classification of the obstacles and therefore research directions, with respect to power consumption seen for different classes of devices, ranging from very low power devices, over handheld devices, to servers and work stations. In a next step the seminar identified the impact different levels of dealing with power concerns can have. 2 Approaches to reduce energy consumption Figure 1 gives an overview of the different levels that energy saving techniques can be applied at and some of the techniques available. It is noteworthy that leakage is rapidly becoming the dominant source of power consumption. On the hardware level, decisions influence how software will be able to affect power dissipation. Similarly, decisions on the software level, that is operating system, compiler, virtual-execution environment, or application level, influence the processor s workload. Developing an integrated approach remains an open problem, although a number of research groups have started to explore it. However, currently most research is done in a vacuum, making assumptions about the execution environment that do not take into account the effect of other techniques. Figure 1 An overview of techniques to achieve energy savings at different levels. The left hand part lists levels of hard- on software, the right hand part exemplary techniques that are applicable at that level Low-power computing is challenging first of all due to the sheer explosion of total hardware/software decisions (Venkatachalam and Franz, 2005). The problem is further complicated by decisions along any dimension having tradeoffs along other dimensions. One tradeoff is between power and performance. Another is that minimising power might introduce sharp power variations that impair chip reliability. The third reason low power design is nontrivial is that no decision exists in a vacuum. A compiler can emit code to slow down the processor during memory stalls, but an operating system can override the compiler s decision by speeding up the processor at the same time. Without synergy between the compiler and operating system, frequency thrashing can occur, resulting in power and performance degradation. More generally, without synergy among decisions at different levels of design, the effect of any power reduction technique will be short lived. For all of these reasons, the problem of developing an integrated approach to power management remains unsolved, though researchers are addressing power issues at every level of design. 3 Where does the power go? In a series of discussion sessions the seminar participants tried to identify where power is consumed in devices. This resulted in a matrix (Figure 2) that ranks how much different areas (Computation, Communication and I/O, Storage, Other) of different classes of systems (Very Low Power, Systems on a Chip, General Purpose Computing) contribute to the total system power consumption.

Power-aware computing systems 5 Figure 2 Importance of different areas for the power consumption of classes of devices from 1 (most important) to 3 (least important) This matrix was then used to identify the impact that we expect different levels to have, as well as techniques provided by and problems to be solved in each of the levels. The levels considered are logic, circuit and technology architectures and micro-architectures compilers, virtual-execution environments, operating systems and middleware applications and algorithms. The following sections give an overview of the results identified in working groups for the respective levels. 3.1 Logic, circuit and technology On the hardware level leakage power has been identified as the major problem. In scaling for performance, the main goal is to reduce both supply voltage as well as gate threshold voltage to reduce dynamic power, while keeping enough drive current. Unfortunately, that creates an exponential rise in leakage power that even can exceed dynamic power that is, the energy used without the system doing anything is higher than the energy used for the actual operation. One solution would be to increase the gate threshold voltage, which results in lower leakage power, but also shrinks the acceptable range of supply voltage. To compensate for this, one would need ever thinner gate oxides which results in increased gate leakage. So using current technologies, scaling as usual will not do the trick. At the same time new device architectures are needed. However, since Moore s law still seems to be valid, choices will have to be made rather quickly, identifying the right technology to create cost effective yielding processes that will be usable in giga-scale architectures. The ITRS (2004) roadmap requests that the increase in overall power consumption should be almost zero in this decade, while dynamic power alone currently increases 1.4 times per three years. If the leakage component is added to these numbers, the increase becomes much steeper. Thus the power increase might become a big stumbling block to Moore s law. At the same time, frequency, supply voltage and threshold-voltage selection heavily depend on the workload and can thus require interaction with the system level. Hardware, however, severely limits the degrees of freedom available and beyond 65 nm technology both leaking as well as gate delay get out of hand, unless the size of devices is increased, counteracting the idea of scaling. Clearly a fundamental change in CMOS device architecture is needed to keep up the pace of Moore s law. From the perspective of the logic, circuit and technology level it is questionable whether more parallelism is going to reduce the overall energy consumption. While extra parallelism allows to reduce the supply voltage for the same performance and in this way to reduce power/energy, it also introduces extra transistors (more leakage) and extra and longer wires (more capacitive coupling, noise issues). On top of these issues a lower supply voltage also stresses the variability issues. To be able to resolve these problems we need to better understand the underlying physical phenomena. This will require more interaction between the system/architecture, circuits, and technology communities. 3.2 Architectures and micro-architectures The common trend in (micro-) architecture design is to have numerous small, potentially heterogeneous/special-purpose cores. These architectures are dominated by communication across cores. In the general-purpose domain the main problem is resource contention that requires intelligent coordination to be resolved. In the application-specific domain, architectures can be optimised with respect to power consumption, e.g., by using a simplified voltage-gating approach. In order to allow an energy-efficient usage of a given architecture, it should expose any non-uniformity to allow its exploitation by the software system running on top. Other needs include support for high-bandwidth communication between devices, more explicit support for concurrency, as well as mechanisms to exploit locality. Additionally there is an urgent need to develop APIs and instruction set architectures that allow systems to express and control variability in the architecture and application. This would require a holistic approach that encompasses I/O, storage, and compute resources. On the other hand, there are topics that can be better dealt with by other layers. The level of logic, circuits and technology should support an energy-aware design and provide power-management knobs that support not only DVS, threshold-power control, supply-power control and leakage, but also new, yet undiscovered approaches. The compiler, operating system, virtual-execution environment, and middleware layer should leverage the API provided by the architecture. Finally, at the application layer one would need new programming models to allow the overall system to efficiently use the resources provided by the architecture. The main open issue on the architecture level is parallelism and how to extract it efficiently. This might require re-designing the CPU, storage hierarchies and more.

6 C.W. Probst, U. Kremer, L. Benini and P. Schelkens Increases in parallelism might also call for rethinking the hardware support and hardware/software coordination regarding task scheduling, placement, and migration. 3.3 Compilers, virtual-execution environment, operating systems and middleware The layer of compilers, virtual-execution environments, operating systems, and middleware is especially well suited to predict and determine the current and future behaviour of programs and tasks by using just-in-time compilation to reshape program behaviour at run time. Components on this level can pass information up and down to lower and higher levels, e.g., to disable memory banks in computation intensive areas of an application. In general, these components could process implicit and explicit application-level constraints, e.g., related to security, reliability, and real time. However, this is a mechanism that is mostly unsupported by current programming models. To allow systems and programmers to benefit from constraint processing we would need new power-aware programming models. As a rule of thumb one can say that the higher the overhead of an optimisation or analysis, the coarser granularity is needed to make it work, that is to justify the need to enable it. This leads to the question which optimisations are most profitable for the reduction of energy consumption. The working group identified hibernation of resources to reduce leakage, DVS of whole processors and individual cores, and quality of result tradeoffs, where the last one would require semantic models to allow the quantification of tradeoffs. The most profitable optimisations and analyses to enable decisions on how to adjust system parameters are parallelisation, phase detection (e.g., flag change in communication requirements) and pattern detection (e.g., producer/consumer). Especially the detection of phases and patterns would allow to adjust the overall system parameters according to the current system role. The challenge in the area of compilers, virtual-execution environments, operating systems and middleware is to define and enable interactions across different layers. By systematically designing all layers of complete systems, each layer can be designed such that it can make assumptions on the behaviour of other layers and will be able to influence the overall system behaviour. The ultimate goal is to develop a whole-system solution that can deal with the variability of the resource requirements and execution constraints of the application as well as of the features and resources of the target system. 3.4 Applications and algorithms Generally speaking the optimisation potential increases with the abstraction level, making it advantageous to optimise at the system and algorithmic level. There are two possible approaches to enable those optimisations either by acquiring application knowledge or by developing domain-specific systems and algorithmic-evaluation frameworks. Evaluation frameworks need to support scenarios that reflect the huge system space in a representative way to reduce the time needed for simulation of the system behaviour. The main property required in these frameworks is that they offer domain-specific architectural templates that include and model all system components to allow substantiated simulation results. In addition, each system component needs to be equipped with a power model that is as accurate as possible. Currently these models are often hard to obtain from industry or even unavailable, e.g., for some analogue components whose behaviour is hard to describe. Having these general evaluation frameworks available would allow to identify the critical consumers in a system design. These would then be targeted to reduce their power consumption. To support this process, metrics for the tradeoff are needed. For example in multimedia applications a technique to measure or judge the picture quality per consumed Watt would be needed. In the area of applications and algorithms this working group identified two major challenges. To enable evaluation frameworks we will need domain-specific power-optimisation technologies that cover the system and implementation levels. In addition we need an interdisciplinary engineering approach to co-design the hardware, software, and applications of power-aware computing systems. 4 The seminar The program of the seminar featured presentations of about 35 participating researchers from academia and industry. They were chosen to represent major areas in targeting the energy consumption of a computing system Applications, Compilers, Virtual-execution Environments, Operating Systems and Hardware. In order to identify problem areas and future research areas, discussion groups were formed that resulted in four working groups whose results are presented in this report. In addition, abstracts of the presentations as well as work-in-progress papers are published in Benini et al. (2005). After the seminar, participants were invited to contribute to this special issue of the International Journal of Embedded Systems. The papers chosen were selected in a peer-reviewing process to give an overview on state-of-the-art techniques and approaches to reduce power consumption in embedded systems. References Benini, L., Kremer, U., Probst, C.W. and Schelkens, P. (2005) Power-aware computing systems, Number 05141 in Dagstuhl Seminar Proceedings. Internationales Begegnungs und Forschungszentrum (IBFI), Schloss Dagstuhl, Germany.

Power-aware computing systems 7 Gunther, S.H., Binns, F., Carmean, D.M. and Hall, J.C. (2001) Managing the impact of increasing microprocessor power consumption, Intel Technology Journal, February, Vol. 5, No. 1, pp.1 9. ITRS (2004) The International Technology Roadmap for Semiconductors, Available at: http://public.itrs.net. Venkatachalam, V. and Franz, M. (2005) Power reduction techniques for microprocessor systems, ACM Computing Surveys, Vol. 37, No. 3, pp.195 237.