230 likes | 298 Views
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
E N D
Green: A Framework for Supporting Energy-Conscious Programming using Controlled Approximation WoongkiBaekStanford University Trishul M. ChilimbiMicrosoft 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
Loop Approximation To be replaced
QoS_Compute Used in the Calibration Phase
QoS Model for Loops • Calibration data goes to MATLAB program • Automatically selects appropriate approximation level • Provides 2 interfaces:
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)
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 QoSmodelling