green: a framework for supporting energy-conscious programming using controlled approximation
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 PresentationTRANSCRIPT
Green: A Framework for Supporting Energy-Conscious Programming using Controlled Approximation
Woongki Baek Stanford UniversityTrishul M. Chilimbi Microsoft Research PLDI 2010
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
Green Framework Overview
Static and dynamic calibration QoS Model Language Extension
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
Overview
General Problem and Functionality System Design Green Implementation Benchmarks Evaluation Discussion
Green Framework Design
QoS Service Level Agreement (SLA) QoS_Compute QoS_Approx and QoS-ReCalibrate
Green Mechanisms
Loop Approximation
To be replaced
QoS_Compute Used in the Calibration
Phase
QoS_Lp_Approx
QoS Model for Loops
Calibration data goes to MATLAB program Automatically selects appropriate
approximation level Provides 2 interfaces:
Function 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
Experiments
Benchmarks: Bing Search Graphics: 252.eon (SPEC2000) Machine Learning: Cluster GA Signal Processing: Discrete Fourier Transform Finance: Blackscholes (PARSEC)
Results with Bing Search - Performance
Results with Bing Search - QoS
Results with 252.eon - Performance
Results with 252.eon - QoS
Results with 252.eon – Model Sensitivity
Results with DFT – Performance And Energy
Results with DFT – QoS
Discussion
Advantages: Performance and power efficiency
improvements Design flexibility Automatic QoS modeling Fine granularity: function and loop based
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