green: a framework for supporting energy-conscious programming using controlled approximation

23
Green: A Framework for Supporting Energy- Conscious Programming using Controlled Approximation Woongki Baek Stanford University Trishul M. Chilimbi Microsoft Research PLDI 2010

Upload: tricia

Post on 25-Feb-2016

34 views

Category:

Documents


1 download

DESCRIPTION

Green: A Framework for Supporting Energy-Conscious Programming using Controlled Approximation. Woongki Baek Stanford University Trishul M. Chilimbi Microsoft Research PLDI 2010. General Problem. Tradeoff between Quality of Service ( QoS ) and Performance + Energy Consumption - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Green: A Framework for Supporting Energy-Conscious Programming using Controlled Approximation

Green: A Framework for Supporting Energy-Conscious Programming using Controlled Approximation

Woongki Baek Stanford UniversityTrishul M. Chilimbi Microsoft Research PLDI 2010

Page 2: Green: A Framework for Supporting Energy-Conscious Programming using Controlled Approximation

General Problem

Tradeoff between Quality of Service (QoS) and Performance + Energy Consumption

Why is it critical? Datacenters: Amazon, Google, Microsoft Existence of acceptable domains: Machine Learning,

Image/Video Processing Programmers do this anyway, but in an ad-hoc manner

and no QoS guarantees Green Framework was built to address these issues

Page 3: Green: A Framework for Supporting Energy-Conscious Programming using Controlled Approximation

Green Framework Overview

Static and dynamic calibration QoS Model Language Extension

Page 4: Green: A Framework for Supporting Energy-Conscious Programming using Controlled Approximation

Functionality Input provided by programmer:

QoS loss (maximum acceptable) i.e. 2% QoS computation function through language extension Optionally:

approximate version(s) of a function or a loop calibration mechanism

Output by Green system: New version of a program that is tuned to be more

efficient (both performance and power) QoS guarantees to be in the acceptable range Dynamic re-calibration (adaptation) if needed at run-time

Page 5: Green: A Framework for Supporting Energy-Conscious Programming using Controlled Approximation

Overview

General Problem and Functionality System Design Green Implementation Benchmarks Evaluation Discussion

Page 6: Green: A Framework for Supporting Energy-Conscious Programming using Controlled Approximation

Green Framework Design

QoS Service Level Agreement (SLA) QoS_Compute QoS_Approx and QoS-ReCalibrate

Page 7: Green: A Framework for Supporting Energy-Conscious Programming using Controlled Approximation

Green Mechanisms

Page 8: Green: A Framework for Supporting Energy-Conscious Programming using Controlled Approximation

Loop Approximation

To be replaced

Page 9: Green: A Framework for Supporting Energy-Conscious Programming using Controlled Approximation

QoS_Compute Used in the Calibration

Phase

Page 10: Green: A Framework for Supporting Energy-Conscious Programming using Controlled Approximation

QoS_Lp_Approx

Page 11: Green: A Framework for Supporting Energy-Conscious Programming using Controlled Approximation

QoS Model for Loops

Calibration data goes to MATLAB program Automatically selects appropriate

approximation level Provides 2 interfaces:

Page 12: Green: A Framework for Supporting Energy-Conscious Programming using Controlled Approximation

Function Approximation

Page 13: Green: A Framework for Supporting Energy-Conscious Programming using Controlled Approximation

Approximation Modeling

For each function and loop individually Then extensive search space exploration to

combine them and still fulfill QoS SLA Global recalibration based on

QoS_Loss/Performance_Gain Exponential backoff scheme to avoid non-

linear effects if any

Page 14: Green: A Framework for Supporting Energy-Conscious Programming using Controlled Approximation

Experiments

Benchmarks: Bing Search Graphics: 252.eon (SPEC2000) Machine Learning: Cluster GA Signal Processing: Discrete Fourier Transform Finance: Blackscholes (PARSEC)

Page 15: Green: A Framework for Supporting Energy-Conscious Programming using Controlled Approximation

Results with Bing Search - Performance

Page 16: Green: A Framework for Supporting Energy-Conscious Programming using Controlled Approximation

Results with Bing Search - QoS

Page 17: Green: A Framework for Supporting Energy-Conscious Programming using Controlled Approximation

Results with 252.eon - Performance

Page 18: Green: A Framework for Supporting Energy-Conscious Programming using Controlled Approximation

Results with 252.eon - QoS

Page 19: Green: A Framework for Supporting Energy-Conscious Programming using Controlled Approximation

Results with 252.eon – Model Sensitivity

Page 20: Green: A Framework for Supporting Energy-Conscious Programming using Controlled Approximation

Results with DFT – Performance And Energy

Page 21: Green: A Framework for Supporting Energy-Conscious Programming using Controlled Approximation

Results with DFT – QoS

Page 22: Green: A Framework for Supporting Energy-Conscious Programming using Controlled Approximation

Discussion

Advantages: Performance and power efficiency

improvements Design flexibility Automatic QoS modeling Fine granularity: function and loop based

Page 23: Green: A Framework for Supporting Energy-Conscious Programming using Controlled Approximation

Discussion

Disadvantages: Limited scope of application: sin, cos, log, exp Complexity for programmer: QoS_Compute,

approx_loop extensions Semi-automatical Limited QoS approach Only numerical data as input, no structures in

QoS modelling