Power Containers: An OS Facility for Fine-Grained Power and Energy Management on Multicore Servers Kai Shen, Arrvindh Shriraman, Sandhya Dwarkadas, Xiao.

Slides:



Advertisements
Similar presentations
1 Hardware Support for Isolation Krste Asanovic U.C. Berkeley MURI “DHOSA” Site Visit April 28, 2011.
Advertisements

Computer Abstractions and Technology
1 A Self-Tuning Cache Architecture for Embedded Systems Chuanjun Zhang*, Frank Vahid**, and Roman Lysecky *Dept. of Electrical Engineering Dept. of Computer.
Trace Analysis Chunxu Tang. The Mystery Machine: End-to-end performance analysis of large-scale Internet services.
Introduction CSCI 444/544 Operating Systems Fall 2008.
Techniques for Multicore Thermal Management Field Cady, Bin Fu and Kai Ren.
Green Cloud Computing Hadi Salimi Distributed Systems Lab, School of Computer Engineering, Iran University of Science and Technology,
SEDA: An Architecture for Well- Conditioned, Scalable Internet Services Matt Welsh, David Culler, and Eric Brewer Computer Science Division University.
CloudScale: Elastic Resource Scaling for Multi-Tenant Cloud Systems Zhiming Shen, Sethuraman Subbiah, Xiaohui Gu, John Wilkes.
Chapter 1 CSF 2009 Computer Performance. Defining Performance Which airplane has the best performance? Chapter 1 — Computer Abstractions and Technology.
SEDA: An Architecture for Well-Conditioned, Scalable Internet Services Matt Welsh, David Culler, and Eric Brewer Computer Science Division University of.
Disco: Running Commodity Operating Systems on Scalable Multiprocessors Bugnion et al. Presented by: Ahmed Wafa.
1: Operating Systems Overview
Energy Efficient Web Server Cluster Andrew Krioukov, Sara Alspaugh, Laura Keys, David Culler, Randy Katz.
Techniques for Efficient Processing in Runahead Execution Engines Onur Mutlu Hyesoon Kim Yale N. Patt.
A Characterization of Processor Performance in the VAX-11/780 From the ISCA Proceedings 1984 Emer & Clark.
Energy Model for Multiprocess Applications Texas Tech University.
New Challenges in Cloud Datacenter Monitoring and Management
FlashFQ: A Fair Queueing I/O Scheduler for Flash-Based SSDs Kai Shen and Stan Park University of Rochester USENIX-ATC
University of Karlsruhe, System Architecture Group Balancing Power Consumption in Multiprocessor Systems Andreas Merkel Frank Bellosa System Architecture.
Maxim Shevertalov Jay Kothari William M. Mongan
LOGO Multi-core Architecture GV: Nguyễn Tiến Dũng Sinh viên: Ngô Quang Thìn Nguyễn Trung Thành Trần Hoàng Điệp Lớp: KSTN-ĐTVT-K52.
LOGO OPERATING SYSTEM Dalia AL-Dabbagh
OPTIMAL SERVER PROVISIONING AND FREQUENCY ADJUSTMENT IN SERVER CLUSTERS Presented by: Xinying Zheng 09/13/ XINYING ZHENG, YU CAI MICHIGAN TECHNOLOGICAL.
November , 2009SERVICE COMPUTATION 2009 Analysis of Energy Efficiency in Clouds H. AbdelSalamK. Maly R. MukkamalaM. Zubair Department.
Profile Driven Component Placement for Cluster-based Online Services Christopher Stewart (University of Rochester) Kai Shen (University of Rochester) Sandhya.
Temperature Aware Load Balancing For Parallel Applications Osman Sarood Parallel Programming Lab (PPL) University of Illinois Urbana Champaign.
Critical Power Slope Understanding the Runtime Effects of Frequency Scaling Akihiko Miyoshi, Charles Lefurgy, Eric Van Hensbergen Ram Rajamony Raj Rajkumar.
Hadi Salimi Distributed Systems Lab, School of Computer Engineering, Iran University of Science and Technology, Fall 2010 Performance.
C OMPUTER O RGANIZATION AND D ESIGN The Hardware/Software Interface 5 th Edition Chapter 1 Computer Abstractions and Technology Sections 1.5 – 1.11.
(1) Scheduling for Multithreaded Chip Multiprocessors (Multithreaded CMPs)
Our work on virtualization Chen Haogang, Wang Xiaolin {hchen, Institute of Network and Information Systems School of Electrical Engineering.
1 Distributed Energy-Efficient Scheduling for Data-Intensive Applications with Deadline Constraints on Data Grids Cong Liu and Xiao Qin Auburn University.
1 Computation Spreading: Employing Hardware Migration to Specialize CMP Cores On-the-fly Koushik Chakraborty Philip Wells Gurindar Sohi
Power Containers: An OS Facility for Fine-Grained Power and Energy Management on Multicore Servers Kai Shen, Arrvindh Shriraman, Sandhya Dwarkadas, Xiao.
VGreen: A System for Energy Efficient Manager in Virtualized Environments G. Dhiman, G Marchetti, T Rosing ISLPED 2009.
1 Virtual Machine Memory Access Tracing With Hypervisor Exclusive Cache USENIX ‘07 Pin Lu & Kai Shen Department of Computer Science University of Rochester.
Next Generation Operating Systems Zeljko Susnjar, Cisco CTG June 2015.
Chapter 2 Processes and Threads Introduction 2.2 Processes A Process is the execution of a Program More specifically… – A process is a program.
An OBSM method for Real Time Embedded Systems Veronica Eyo Sharvari Joshi.
Operating System Principles And Multitasking
Embedded System Lab. 정범종 A_DRM: Architecture-aware Distributed Resource Management of Virtualized Clusters H. Wang et al. VEE, 2015.
Fault Tolerance Benchmarking. 2 Owerview What is Benchmarking? What is Dependability? What is Dependability Benchmarking? What is the relation between.
Rassul Ayani 1 Performance of parallel and distributed systems  What is the purpose of measurement?  To evaluate a system (or an architecture)  To compare.
June 30 - July 2, 2009AIMS 2009 Towards Energy Efficient Change Management in A Cloud Computing Environment: A Pro-Active Approach H. AbdelSalamK. Maly.
Embedded System Lab. 오명훈 Addressing Shared Resource Contention in Multicore Processors via Scheduling.
Lecture 27 Multiprocessor Scheduling. Last lecture: VMM Two old problems: CPU virtualization and memory virtualization I/O virtualization Today Issues.
Determining Optimal Processor Speeds for Periodic Real-Time Tasks with Different Power Characteristics H. Aydın, R. Melhem, D. Mossé, P.M. Alvarez University.
The CRISP Performance Model for Dynamic Voltage and Frequency Scaling in a GPGPU Rajib Nath, Dean Tullsen 1 Micro 2015.
1.3 Operating system services An operating system provide services to programs and to the users of the program. It provides an environment for the execution.
Rakesh Kumar Keith Farkas Norman P Jouppi,Partha Ranganathan,Dean M.Tullsen University of California, San Diego MICRO 2003 Speaker : Chun-Chung Chen Single-ISA.
Advanced Operating Systems CS6025 Spring 2016 Processes and Threads (Chapter 2)
Agile Paging: Exceeding the Best of Nested and Shadow Paging
Measuring Performance II and Logic Design
Introduction to threads
CS161 – Design and Architecture of Computer Systems
Jacob R. Lorch Microsoft Research
Green cloud computing 2 Cs 595 Lecture 15.
Resource Aware Scheduler – Initial Results
OPERATING SYSTEMS CS3502 Fall 2017
Effective Data-Race Detection for the Kernel
Morgan Kaufmann Publishers
PA an Coordinated Memory Caching for Parallel Jobs
Haishan Zhu, Mattan Erez
Energy Efficient Scheduling in IoT Networks
Operating Systems : Overview
Hardware Counter Driven On-the-Fly Request Signatures
CS510 - Portland State University
Request Behavior Variations
The University of Adelaide, School of Computer Science
Presentation transcript:

Power Containers: An OS Facility for Fine-Grained Power and Energy Management on Multicore Servers Kai Shen, Arrvindh Shriraman, Sandhya Dwarkadas, Xiao Zhang, and Zhuan Chen University of Rochester Shriraman is now at Simon Fraser University; Zhang is now at Google. ASPLOS 20131

Problem Overview ASPLOS  Power/energy are important for data centers and servers  Dynamic power usage on modern hardware  Power proportionality: 5% idle power on Intel SandyBridge  Workload dependency: 3:2 power ratio on same machine  A server runs many requests from users  Request is basic unit of user- initiated work  Carbon footprint of a web click?  Power viruses in cloud  Request is basic unit of load distribution  Motivations for per-request power accounting and control

Power Containers on Multicore Servers ASPLOS  Challenges:  Concurrenct, fine-grained request activities over multiple stages  Complex multicore power sharing; insufficient direct measurement  Approach:  Event-based power modeling + request tracking  Contributions on power modeling:  Account for multicore shared power  Use online measurement to mitigate power model inaccuracy  Contributions on request tracking:  Online request tracking and control  OS support transparent to applications

Multicore Power Attribution to Concurrent Tasks ASPLOS  Bellosa’s event-based power model  Assumes direct relationship between one’s physical activities (instructions, cache references, bus activities, …) and power  On a multicore, maintenance of shared resources consumes power when at least one core is active  Such shared power is not affected by one’s own physical activities, but rather depends on the level of multicore sharing  Our approach: evenly attribute to concurrently running requests  Implemented efficiently by local estimation of multicore sharing level (to avoid expensive global coordination and cross-core interrupts)

Measurement-Assisted Online Model Correction ASPLOS  Classic event-based power modeling is being questioned  [McCulough et al. 2011] shows pessimistic results  We find large model errors due to different characteristics between production and calibration workloads (worst for unusual workloads)  Our approach  Online power measurement can help re-calibrate power model  Measurement has delays, needs alignment with modeled power

Request Power Accounting ASPLOS  Request context tracking in a multi-stage server  Past techniques either require offline analysis, or at application level  Our approach  Track request propagation events (sockets, forks, …) at the OS  Attribute and control power at proper request context  Imperfect now: miss 1/3 of power in GoogleAppEngine

Online Overhead ASPLOS  Overhead depends on frequency of periodic activities; low overhead (<1%) for sufficiently frequent activities  Periodic maintenance of power containers  Reading hardware counters, power modeling, updating request stats  2948 cycles, 1656 instructions, 16 floating point ops, 3 LLC refs  1µsec, 10 µJs  Online model recalibration  Computation of least-square linear regression (16 µsecs for ~30 samples)

Request Power Accounting Results ASPLOS  Distribution of average request power  Distribution of request energy usage

Validation of Request Power Accounting ASPLOS  Challenge of validation:  Hard to know the ground truth – no way to directly measure request power or energy use on a multicore server  Validation approach #1:  Aggregate accounted request energy over a time duration to estimate total system energy usage; then match with measurement  No more than 9% error across six workloads on three machines  Validation approach #2:  Use accounted request energy to estimate system energy usage at hypothetical workload conditions (different mixes/rates of requests)  No more than 11% error for workloads with stable-behavior requests

Fair Request Power Conditioning ASPLOS  Control max power use of a server machine  Set equal per-request power budget for fairness  Power containers track request power usage, throttle high-power requests using core duty-cycle modulation  A case study of Google App Engine with power viruses  Keep max power at 40Watts  Power containers: 33% slowdown for power viruses; 2% slowdown for normal requests  Alternatively slow down all requests indiscriminately (13%) to lower the max power

Heterogeneity-Aware Request Distribution ASPLOS  Different workloads/requests exhibit different levels of machine preferences in energy efficiency  Energy usage on Intel SandyBridge over energy usage on Woodcrest  Power containers can capture fine-grained request energy profiles and distribute load in a server cluster for high efficiency  Case study shows 25% energy saving compared to alternatives

Conclusions ASPLOS  High-level messages:  Fine-grained power accounting and control are important for multicore server efficiency and dependability  Increasingly so on more power-proportional hardware and dynamic-behavior workloads (web 2.0, cloud computing, …)  Possible to support these at the OS (on today’s processor hardware, requiring no application assistance)  New techniques:  Enhanced modeling to account for multicore shared power  Use online measurement to mitigate power model inaccuracy  OS-level online request tracking and control