System-Level Power-Aware Design Techniques in Real-Time Systems Osman S. Unsal, Israel Koren, System-Level Power-Aware Design Techniques in Real- Time.

Slides:



Advertisements
Similar presentations
Power Aware Scheduling for AND/OR Graphs in Multi-Processor Real-Time Systems Dakai Zhu, Nevine AbouGhazaleh, Daniel Mossé and Rami Melhem PARTS Group.
Advertisements

Real Time Scheduling.
Zhou Peng, Zuo Decheng, Zhou Haiying Harbin Institute of Technology 1.
1 EE5900 Advanced Embedded System For Smart Infrastructure Energy Efficient Scheduling.
1 “Scheduling with Dynamic Voltage/Speed Adjustment Using Slack Reclamation In Multi-processor Real-Time Systems” Dakai Zhu, Rami Melhem, and Bruce Childers.
Real- time Dynamic Voltage Scaling for Low- Power Embedded Operating Systems Written by P. Pillai and K.G. Shin Presented by Gaurav Saxena CSE 666 – Real.
CPU Scheduling Questions answered in this lecture: What is scheduling vs. allocation? What is preemptive vs. non-preemptive scheduling? What are FCFS,
Power Reduction Techniques For Microprocessor Systems
Introduction and Background  Power: A Critical Dimension for Embedded Systems  Dynamic power dominates; static /leakage power increases faster  Common.
TOPOLOGIES FOR POWER EFFICIENT WIRELESS SENSOR NETWORKS ---KRISHNA JETTI.
Medium Access Control in Wireless Sensor Networks.
Minimizing Expected Energy Consumption in Real-Time Systems through Dynamic Voltage Scaling Ruibin Xu, Daniel Mosse’, and Rami Melhem.
Background Computer System Architectures Computer System Software.
CMSC 421: Principles of Operating Systems Section 0202 Instructor: Dipanjan Chakraborty Office: ITE 374
L27:Lower Power Algorithm for Multimedia Systems 성균관대학교 조 준 동
Copyright Agrawal, 2007 ELEC6270 Fall 07, Lecture 14 1 ELEC 5270/6270 Fall 2007 Low-Power Design of Electronic Circuits Power Aware Microprocessors Vishwani.
Energy-Efficient Design Some design issues in each protocol layer Design options for each layer in the protocol stack.
Spring 07, Feb 22 ELEC 7770: Advanced VLSI Design (Agrawal) 1 ELEC 7770 Advanced VLSI Design Spring 2007 Power Aware Microprocessors Vishwani D. Agrawal.
Processor Frequency Setting for Energy Minimization of Streaming Multimedia Application by A. Acquaviva, L. Benini, and B. Riccò, in Proc. 9th Internation.
Power-aware Computing n Dramatic increases in computer power consumption: » Some processors now draw more than 100 watts » Memory power consumption is.
Router Construction II Outline Network Processors Adding Extensions Scheduling Cycles.
Scheduling for Reduced CPU Energy M. Weiser, B. Welch, A. Demers, and S. Shenker.
1 Energy Efficient Communication in Wireless Sensor Networks Yingyue Xu 8/14/2015.
Energy Aware Real Time Systems
1 EE 587 SoC Design & Test Partha Pande School of EECS Washington State University
CS 423 – Operating Systems Design Lecture 22 – Power Management Klara Nahrstedt and Raoul Rivas Spring 2013 CS Spring 2013.
6.893: Advanced VLSI Computer Architecture, September 28, 2000, Lecture 4, Slide 1. © Krste Asanovic Krste Asanovic
Computer System Architectures Computer System Software
Task Alloc. In Dist. Embed. Systems Murat Semerci A.Yasin Çitkaya CMPE 511 COMPUTER ARCHITECTURE.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 1: Introduction What is an Operating System? Mainframe Systems Desktop Systems.
Minimizing Response Time Implication in DVS Scheduling for Low Power Embedded Systems Sharvari Joshi Veronica Eyo.
VOLTAGE SCHEDULING HEURISTIC for REAL-TIME TASK GRAPHS D. Roychowdhury, I. Koren, C. M. Krishna University of Massachusetts, Amherst Y.-H. Lee Arizona.
Low Power Techniques in Processor Design
Thanks to Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 1: Introduction n What is an Operating System? n Mainframe Systems.
 What is an operating system? What is an operating system?  Where does the OS fit in? Where does the OS fit in?  Services provided by an OS Services.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 1: Introduction What is an Operating System? Mainframe Systems Desktop Systems.
Lecture 03: Fundamentals of Computer Design - Trends and Performance Kai Bu
Low-Power Wireless Sensor Networks
Cloud Computing Energy efficient cloud computing Keke Chen.
Low Power Design for Real-Time Systems Low power (energy) consumption is a key design for embedded systems Battery’s life during operation Reliability.
An Efficient Algorithm for Dual-Voltage Design Without Need for Level-Conversion SSST 2012 Mridula Allani Intel Corporation, Austin, TX (Formerly.
1 EE5900 Advanced Embedded System For Smart Infrastructure Energy Efficient Scheduling.
Sogang University Advanced Computing System Chap 1. Computer Architecture Hyuk-Jun Lee, PhD Dept. of Computer Science and Engineering Sogang University.
Chapter 101 Multiprocessor and Real- Time Scheduling Chapter 10.
1 Distributed Energy-Efficient Scheduling for Data-Intensive Applications with Deadline Constraints on Data Grids Cong Liu and Xiao Qin Auburn University.
Operating System Requirements for Embedded Systems Rabi Mahapatra.
A Utility-based Approach to Scheduling Multimedia Streams in P2P Systems Fang Chen Computer Science Dept. University of California, Riverside
A Wakeup Scheme for Sensor Networks: Achieving Balance between Energy Saving and End-to-end Delay Xue Yang, Nitin H.Vaidya Department of Electrical and.
Adaptive Sleep Scheduling for Energy-efficient Movement-predicted Wireless Communication David K. Y. Yau Purdue University Department of Computer Science.
ECE555 Topic Presentation Energy-efficient real-time scheduling Xing Fu 20 September 2008 Acknowledge Dr. Jian-Jia Chen from ETH providing PPT Slides for.
Power Aware Real-time Systems A joint project with profs Daniel Mosse Bruce Childers Mootaz Elnozahy (IBM Austin) And students Nevine Abougazaleh Cosmin.
1 An Adaptive Energy-Efficient MAC Protocol for Wireless Sensor Networks Tijs van Dam, Koen Langendoen In ACM SenSys /1/2005 Hong-Shi Wang.
1 Lecture 1: Computer System Structures We go over the aspects of computer architecture relevant to OS design  overview  input and output (I/O) organization.
GreenCloud: A Packet-level Simulator of Energy-aware Cloud Computing Data Centers Dzmitry Kliazovich ERCIM Fellow University of Luxembourg Apr 16, 2010.
Computer Science and Engineering Power-Performance Considerations of Parallel Computing on Chip Multiprocessors Jian Li and Jose F. Martinez ACM Transactions.
Operating System. Chapter 1: Introduction What is an Operating System? Mainframe Systems Desktop Systems Multiprocessor Systems Distributed Systems Clustered.
CprE 458/558: Real-Time Systems (G. Manimaran)1 Energy Aware Real Time Systems - Scheduling algorithms Acknowledgement: G. Sudha Anil Kumar Real Time Computing.
CprE 458/558: Real-Time Systems (G. Manimaran)1 CprE 458/558: Real-Time Systems Energy-aware QoS packet scheduling.
11/15/05ELEC / Lecture 191 ELEC / (Fall 2005) Special Topics in Electrical Engineering Low-Power Design of Electronic Circuits.
Power Aware Real-time Systems A joint project with profs Rami Melhem Bruce Childers Mootaz Elnozahy (IBM Austin) Trying to rope in Ahmed Amer Jose Brustoloni.
Determining Optimal Processor Speeds for Periodic Real-Time Tasks with Different Power Characteristics H. Aydın, R. Melhem, D. Mossé, P.M. Alvarez University.
Oregon Graduate Institute1 Sensor and energy-efficient networking CSE 525: Advanced Networking Computer Science and Engineering Department Winter 2004.
Background Computer System Architectures Computer System Software.
Silberschatz and Galvin  Operating System Concepts Module 1: Introduction What is an operating system? Simple Batch Systems Multiprogramming.
CS203 – Advanced Computer Architecture
M V Ganeswara Rao Associate Professor Dept. of ECE Shri Vishnu Engineering College for Women Bhimavaram Hardware Architecture of Low-Power ALU using Clock.
Distributed Process Scheduling- Real Time Scheduling Csc8320(Fall 2013)
Subject Name: Operating System Concepts Subject Number:
Research Topics Embedded, Real-time, Sensor Systems Frank Mueller moss
Presentation transcript:

System-Level Power-Aware Design Techniques in Real-Time Systems Osman S. Unsal, Israel Koren, System-Level Power-Aware Design Techniques in Real- Time Systems, Proceedings of IEEE, Vol. 91, No. 7, July 2003.System-Level Power-Aware Design Techniques in Real- Time Systems,

Power Management Why & What: Power Management?  Rapid growth of worldwide total power dissipation 87M CPUs consumed 160MW in > 500M CPUs consumed 9,000 MW in 2001  Battery operated: Laptops, PDAs, Cell phones, Wireless Sensors,...  Heat: Complex Servers (server farms, multiprocessors, etc.)  Power Aware: Maintain QoS while reducing energy Source: Daniel Mosse (CS1651 at Univ. of Pittsburg)

Why System-Level Design? Power management at various system layers  Circuit & device level, archiecture & compiler, OS & network design Most existing research regarding power- aware RT systems focus on power-aware RT scheduling  CPU is only a single source of power consumption!

Misconceptions about power-aware design Power-aware ≠ low-power (minimize power consumption)  Delay some instruction execution, e.g., to reduce peak power -> Executes longer & consumes more power Decreasing average power does not imply decreasing max power Power ≠ energy efficiency  Energy = ∫power  Perf may degrade resulting in more energy consumption

Misconceptions about power-aware design Power-constrained ≠ energy-constrained  solar power (infinite source) vs. battery power Energy-constrained systems do not always target energy minimization  Charge = f(battery capacity, rate of discharge)  Goal is battery lifetime extension

Motivations for power-aware design for RT sytems Limited energy-budget & timing constraints, e.g., in space & multimedia applications Limited form factor & low heat dissipation, e.g., in avionics, robotics & space missions Often overdesigned to support timing guarantees under the wosrt case  Tasks do not run until their WCET -> Energy inefficient Fault-tolerance  Reliability via replication -> high power consumption

What is system-level power-aware design? Power-awareness embedded in every step of system design Power-compiler can do instruction scheduling to reduce power consumption OS-level heuristic may scale down f and V dd Network-level schems may put the network I/F into standby mode Today, we will focus on OS & network levels

OS Level Voltage & frequency scaling I/O devices Power and energy analysis of RTOS Distributed RT systems Soft real-time systems

Power Management How?  Power off un-used parts: LCD, disk for Laptop  Gracefully reduce the performance CPU: dynamic power P d = C ef * V dd 2 * f [Chandrakasan-1992, Burd-1995]  C ef : switch capacitance  V dd : supply voltage  f : processor frequency  linear related to V dd Source: Daniel Mosse (CS1651 at Univ. of Pittsburg)

Power Aware Scheduling T1T1 D f max time Static Power Management (SPM)  Static slack: uniformly slow down all tasks [Weiser-1994, Yao-1995, Gruian-2000] T2T2 E Static Slack Energy f T1T1 T2T2 idle time T1T1 T2T2 T2T2 T1T1 0.6E time T1T1 T2T2 f max /2 E/4 Source: Daniel Mosse (CS1651 at Univ. of Pittsburg)

T1T1 D f max time Dynamic Power Management (DPM)  Dynamic slack: non-worst execution 10% [Ernst- 1997]  DPM: [Krishna-2000, Kumar-2000, Pillai-2001, Shin-2001] T1T1 T2T2 T2T2 f max /2 Static Slack idle E E/4 time T1T1 T2T2 f max /3 0.12E time T1T1 f max /2 Dynamic Slack Multi-Processor  SPM: length of schedule over deadline  DPM ??? Source: Daniel Mosse (CS1651 at Univ. of Pittsburg) Power Aware Scheduling

References (Power-Aware RT Scheduling) [Chandrakasan-1992] A. P. Chandrakasan and S. Sheng and R. W. Brodersen. Low-Power CMOS Digital Design. IEEE Journal of Solidstate Circuit, V27, N4, April 1992, pp [Burd-1995] T. D. Burd and R. W. Brodersen. Energy efficient cmos microprocessor design. In Proc. of The HICSS Conference, pages , Maui, Hawaii, Jan [Weiser-1994] M. Weiser, B. Welch, A. J. Demers, and S. Shenker. Scheduling for reduced CPU energy. In Operating Systems Design and Implementation, pages 13-23, 1994 [Yao-1995] F. Yao, A. Demers, and S. Shenker. A scheduling model for reduced cpu energy. In Proc. of The 36th Annual Symposium on Foundations of Computer Science, pages , Milwaukee, WI, Oct [Gruian-2000] F. Gruian. System-Level Design Methods for Low-Energy Architectures Containing Variable Voltage Processors. The Power-Aware Computing Systems 2000 Workshop at ASPLOS 2000, Cambridge, MA, November 2000 [Ernst-1997] R. Ernst and W. Ye. Embedded program timing analysis based on path clustering and architecture classification. In Proc. of The International Conference on Computer-Aided Design, pages 598 – 604, San Jose, CA, Nov [Krishna-2000] C. M. Krishna and Y. H. Lee. Voltage clock scaling adaptive scheduling techniques for low power in hard real-time systems. In Proc. of The 6th IEEE Real-Time Technology and Applications Symposium (RTAS00), Washington D.C., May [Kumar-2000] P. Kumar and M. Srivastava, Predictive Strategies for Low-Power RTOS Scheduling, Proceedings of the 2000 IEEE International Conference on Computer Design: VLSI in Computers and Processors [Pillai-2001] P. Pillai and K. G. Shin. Real-Time Dynamic Voltage Scaling for Low-Power Embedded Operating Systems, 18th ACM Symposium on Operating Systems Principles (SOSP?1), Banff, Canada, Oct [Shin-2001] D. Shin, J. Kim and S. Lee, Intra-Task Voltage Scheduling for Low-Energy Hard Real-Time Applications, IEEE Design and Test of Computers, March 2001 [Zhu-2001] D. Zhu, R. Melhem, and B. Childers. Scheduling with Dynamic Voltage/Speed Adjustment Using Slack Reclamation in Multi-Processor RealTime Systems, RTSS'01 (Real- Time Systems Symposium), London, England, Dec Source: Daniel Mosse (CS1651 at Univ. of Pittsburg)

I/O devices Much less work has been done compared to VS (voltage scaling) in real-time systems Swaminathan et al [72]  Power-aware I/O device scheduling for hard real-time systems  Tasks are independent but not periodic  A priori knowledge of task schedule & device usage list required

Power & energy analysis of RTOS Power consumption of μc-OS on Fujitsu SPARClite processor  μc-OS: Open-source embedded RT kernel introduced in an earlier lecture for project ideas  Evaluate power consumption by system calls [73] μc-OS, Ecnidna, NOS (baseline “bare-bones” scheduler) [74] RTOS overheads are two to four times higher than NOS Poorly design idele loops can double the energy consumption

Power & energy analysis of RTOS Acquaviva [75]  Increasing context switch frequency from 0Hz to 10Khz does not affect energy consumption -> Context switch mechanism in RTOS is energy efficient  More energy is consumed when cache flushing effect during context-switch is considered  I/O: CPU sends data bursts > output buffer -> Considerable energy consumption when buffer is full or when it polls a synchronization variable (similar to [74])

Distributed/Multiprocessor real- time systems Reminder  Tightly coupled multiprocessor system Multiple processors are connected at the bus level and share main memory Extreme: multicore with multiple processors on a chip  Loosely coupled multiprocessor system (e.g., cluster) Multiple, stand-alone processors connected via, e.g., Gigabit Ethernet

Distributed/Multiprocessor real- time systems Classic RT scheduling ≠ Power-aware one Example: a tightly coupled RT system with 2 processors, 2 memory banks, 1 ready queue  Apply EDF Assign a task to the first available processor  Put memory bank(s) into sleep mode if not used

Distributed/Multiprocessor real- time systems Task set Assume memory utilization is linearly dependent on exec time

Distributed/Multiprocessor real- time systems Classic Load Balancing (LB)  Try to balance memory bank utilization  Assign T 1 & T 2 to bank 1 (bank utilization 70%) & T 3 & T 4 to bank 2 (BU 54.1%) Power-Aware (PA)  Assign harmonically related tasks to the same bank  Tasks are simultaneously active more often  Assign T 1 & T 3 (BU 36.6%) to bank 1 & T 2 & T 4 to bank 2 (BU 87.5%)

Distributed/Multiprocessor real- time systems PA vs. LB Several variations possible: Another project idea!

Soft real-time systems [77] Hand-held, pocket computes – audio, video, GPS,... Power profile of a pocket computer shows more dynamic power profile than a laptop Using a single JVM is 25% more energy efficient than using one JVM per application Just-in-time compilation is power efficient

Soft real-time systems: Battery lifetime Energy-aware QoS tradeoff [79]  Energy-aware scheduling favoring low energy & critical tasks  Tunable toward extended battery life at the cost of perf  Battery life can be extended up to 100% with perf degradation of 40% Open & closed-loop approaches [80] Tight cooperation btwn OS and applications for energy savings [81]

Soft real-time systems: Web server Web workloads are bursty  1998 Nagano Winter Olympic  1840 hits/sec during peak time  Only 459 hits/sec in average Voltage scheduling & frequency scheduling during the predicted low activity time -> 23% - 36% energy savings Heat is also a critical factor in this kind of systems

Network Level Much less work has been done compared to RT scheduling & RTOS  QoS support for audio & video streaming, e.g., RSVP (Resource Reseravation Protocol), RTP, RTSP, is a different story  ATM: Constant Bit Ratio & Variable Bit Ratio Research issues  Limited hard RT support, e.g., CAN (Control Area Network)  Overlay networks?  Wireless networks?

Network Level Wireless communications: Relatively new technologies  WiFi (IEEE )  Energy-efficient MAC (Medium Access Control)  Example: S-MAC for Wireless Sensor Networks In WSNs, duty cycle ≤ 1%; too expensive Efficient sleep scheduling: If a node loses contention for the medium, it goes to sleep for the duration specified in each packet RTS/CTS for an entire message that can be multiple packets  Fairness in WSNs is not as important as other wireless ad hoc networks S-MAC consumes 2-6 times less energy than [96]

Above the MAC layer LEACH (Low-Energy Adaptive Clustering Hierarchy)  Cluster head/cluster can aggregate data  Randomly elect a cluster head RAP & SPEED  Real-time protocols in WSNs  To be discussed later in this class

Shortest path vs. max power reduction Balance timing & power constraints!

Questions?