Self-‑Construc.ve ¡High-‑Rate ¡System ¡Energy ¡Modeling ¡ for ¡Ba=ery-‑Powered ¡Mobile ¡Systems ¡ Mian ¡Dong ¡ and ¡Lin ¡Zhong ¡ ¡ ¡ Rice ¡University ¡
System Energy Model y ( t ) = f ( x 1 ( t ), x 2 ( t ),…, x p ( t )) Predictors ¡ x i ( t ): ¡ ¡ Response ¡ y ( t ): ¡ ¡ System ¡status ¡ Energy ¡consumed ¡ variables ¡in ¡ t by ¡the ¡system ¡in ¡ t
Rate ( 1 / t ) 0.01Hz ¡ 1Hz ¡ 100Hz ¡
A High-Rate Energy Model is ¡needed ¡to ¡provide ¡an ¡energy ¡reading ¡ at ¡each ¡OS ¡scheduling ¡interval ¡ 10ms ¡
Model Construction t=t 1 =t 2 =…=t n ¡ 31,415,926 Target Data Acquisition Host System Equipment PC y ( t 1 ) ¡ x 1 ( t 1 ) x 2 ( t 1 ) … x p ( t 1 ) ¡ Regression y ( t 2 ) ¡ x 1 ( t 2 ) x 2 ( t 2 ) … x p ( t 2 ) ¡ X ( t ) Y ( t ) y ( t n ) ¡ x 1 ( t n ) x 2 ( t n ) … x p ( t n ) ¡
Model Construction t=t 1 =t 2 =…=t n ¡ 31,415,926 Target Data Acquisition Host System Equipment PC Linear ¡Model: ¡ y ( t ) = β 0 + β 1 x 1 ( t )+…+ β p x p ( t ) ^ ¡ β = argmin β ( ║ Y ( t ) − [1 X ( t )] β ║ 2 )
Model Construction t=t 1 =t 2 =…=t n ¡ 31,415,926 Target Data Acquisition Host System Equipment PC Linear ¡Model: ¡ ^ ¡ ^ ¡ ^ ¡ ^ ¡ y ( t ) = β 0 + β 1 x 1 ( t )+…+ β p x p ( t ) ^ ¡ y ( t i ) − y ( t i ) Mean ¡Absolute ¡ ¡ err ( t i ) = Root-‑Mean-‑Square ¡ y ( t i ) ¡
What are the limitations?
External Devices for ¡energy ¡measurement ¡ ¡
Deep Knowledge for ¡predictor ¡collec.on ¡ ¡ www.nokia.com ¡
Exclusive Model for a specific platform ¡
Fixed Model for ¡all ¡ instances ¡of ¡the ¡same ¡plaKorm ¡
Dependencies ¡of ¡ system ¡energy ¡models ¡on ¡ Hardware & Usage suggest ¡“personalized” ¡models ¡ be ¡constructed ¡for ¡a ¡mobile ¡system ¡ ¡
Self-Constructive ¡ System ¡Energy ¡Modeling ¡
Battery Interface External Devices Statistical Learning Deep Knowledge Exclusive Model Personalized Model Fixed Model
Battery Interface
State-‑of-‑the-‑art ¡ba=ery ¡Interfaces ¡are ¡ Low-rate / Inaccurate N85 ¡ T61 ¡ N900 ¡ Max ¡Rate ¡ 4Hz ¡ 0.5Hz ¡ 0.1Hz ¡ Accuracy ¡ 67% ¡ 82% ¡ 58% ¡ Accuracy ¡= ¡100% ¡– ¡Root_Mean_Square(Instant_Rela.ve_Error) ¡
Errors ¡in ¡ba=ery ¡interface ¡readings ¡ are ¡ Non-Gaussian
Low-‑Rate/Inaccurate ¡ ¡ Ba=ery ¡Interface ¡ ¡ Statistical Learning High-‑Rate/Accurate ¡ ¡ System ¡Energy ¡Model ¡ ¡
Averaged ¡ ba=ery ¡interface ¡readings ¡ have ¡ 50% ¡ RMS ¡of ¡RelaCve ¡Error ¡ N900 ¡ Higher 40% ¡ T61 ¡ Accuracy N85 ¡ 30% ¡ but ¡ 20% ¡ Even Lower Rate 10% ¡ 0% ¡ 0.01 ¡ 0.1 ¡ 1 ¡ 10 ¡ Rate ¡(Hz) ¡
Linear ¡models ¡are ¡ Independent on Time ¡ High-‑rate ¡data ¡points ¡ y y ( t ) x ( t ) Time ¡ Low-‑rate ¡data ¡points ¡ y ( T ) High-‑rate ¡data ¡points ¡ x ( T ) Low-‑rate ¡data ¡points ¡ Time ¡ x
1. Model Molding ^ ¡ Y ( t VL ) Y ( t L ) Y ( t H ) X ( t VL ) X ( t H ) ^ ¡ ^ ¡ β ¡ β ¡ 0.01Hz ¡ 1Hz ¡ 100Hz ¡
30% ¡ RMS ¡of ¡RelaCve ¡Error ¡ Ba=ery ¡ ¡ Interface ¡ 20% ¡ 10% ¡ 0% ¡ 0.01 ¡ 0.1 ¡ 1 ¡ 10 ¡ 100 ¡ Rate ¡(Hz) ¡
Model ¡Molding ¡improves ¡rate 30% ¡ RMS ¡of ¡RelaCve ¡Error ¡ Ba=ery ¡ ¡ Interface ¡ Molded ¡ 20% ¡ Model ¡ 10% ¡ 0% ¡ 0.01 ¡ 0.1 ¡ 1 ¡ 10 ¡ 100 ¡ Rate ¡(Hz) ¡
2. Predictor Transformation x 1 ( t ), x 2 ( t ),…, x p ( t ) Principle ¡ ¡ Component ¡ ¡ Analysis ¡ z 1 ( t ), z 2 ( t ),…, z L ( t ) L L ≤ p p
PCA ¡improves ¡accuracy 30% ¡ RMS ¡of ¡RelaCve ¡Error ¡ Ba=ery ¡ ¡ Interface ¡ Molded ¡ 20% ¡ Model ¡ Molded ¡ Model ¡+ ¡ 10% ¡ PCA ¡ 0% ¡ 0.01 ¡ 0.1 ¡ 1 ¡ 10 ¡ 100 ¡ Rate ¡(Hz) ¡
3. Total-Least-Square y y=f ( x ) y j d j r j Training data points x j x Δ x j
TLS ¡improves ¡accuracy ¡at ¡high ¡rate ¡ 30% ¡ RMS ¡of ¡RelaCve ¡Error ¡ Ba=ery ¡ ¡ Interface ¡ Molded ¡ 20% ¡ Model ¡ Molded ¡ Model ¡+ ¡ 10% ¡ PCA ¡ Molded ¡ Model ¡+ ¡ 0% ¡ PCA ¡+ ¡TLS ¡ 0.01 ¡ 0.1 ¡ 1 ¡ 10 ¡ 100 ¡ Rate ¡(Hz) ¡
Model ¡Manager Sesame Model Model ¡Constructor Predictor ¡ Model ¡molding transformation Predictors Responses Application ¡ Data ¡Collector specific ¡ predictors Stats ¡readings ¡ Energy ¡ ¡readings ¡ Operating ¡ STATS Bat ¡I/F System
Implementa.on ¡ N900 ¡ T61 ¡
Sesame ¡is ¡able ¡to ¡ ¡generate ¡energy ¡ models ¡with ¡a ¡rate ¡up ¡to ¡ 100Hz T61 ¡ N900 ¡ 1Hz ¡ 95% ¡ 86% ¡ 100Hz ¡ 88% ¡ 82% ¡ Accuracy ¡= ¡100% ¡– ¡Root_Mean_Square(Instant_Rela.ve_Error) ¡
Field ¡Study ¡ Day ¡1-‑5: ¡ ¡ ¡Model ¡Construc.on ¡ Day ¡6: ¡ ¡ ¡ ¡Model ¡Evalua.on ¡
Models ¡were ¡generated ¡within ¡ 15 ¡hours ¡ 30% ¡ 30% ¡ Sesame@1Hz ¡ User ¡1 ¡ Sesame@100Hz ¡ User ¡2 ¡ User ¡3 ¡ 20% ¡ 20% ¡ Error ¡ Error ¡ User ¡4 ¡ 10% ¡ 10% ¡ 0% ¡ 0% ¡ 7 ¡ 9 ¡ 11 ¡ 13 ¡ 15 ¡ 1 ¡ 2 ¡ 3 ¡ 4 ¡ Time ¡(hour) ¡ Laptop ¡User ¡
Sesame ¡is ¡close ¡to ¡State-‑of-‑the-‑Art ¡ without any external assistance Average ¡Absolute ¡RelaCve ¡ 15% ¡ 10% ¡ Error ¡ Sesame ¡ 5% ¡ PowerTutor ¡ (CODES+ISSS’10) ¡ (CODES+ISSS’10) ¡ PowerBooter ¡ FSM ¡ (Eurosys’11) ¡ 0% ¡ 0.01 ¡ 0.1 ¡ 1 ¡ 10 ¡ 100 ¡ 1000 ¡ Rate ¡(Hz) ¡
Sesame ¡is ¡able ¡to ¡construct ¡models ¡ ¡ of ¡high ¡accuracy ¡because ¡of ¡ ¡ ¡ 1. Sophisticated Statistical Methods 2. Capability to Adapt Models
¡ ¡ ¡ Sesame ¡is ¡a ¡high-‑rate/accurate ¡ Virtual Power Meter
¡ ¡ ¡ and ¡creates ¡new ¡opportuni.es ¡in ¡ Energy Optimization & Management
Software Optimization y ( t ) = β 0 + β 1 x 1 ( t )+…+ β p x p ( t ) “Knob” ¡ provided ¡by ¡ ¡ target ¡soiware ¡
Energy Accounting y ( t ) = β 0 + β 1 x 1 ( t )+…+ β p x p ( t ) n Processes
Energy Accounting y ( t ) = β 0 + β 1 x 1 ( t )+…+ β p x p ( t ) x 1 ( t ) = x 1,1 ( t )+…+ x 1 ,n ( t ) x p ( t ) = x p ,1 ( t )+…+ x p,n ( t )
Energy Contribution by Process j y j ( t ) = β 1 x 1, j ( t )+…+ β p x p,j ( t )
¡ ¡ ¡ Sesame ¡can ¡be ¡also ¡used ¡for ¡ Servers and Workstations
Conclusions ¡ • Self-‑Modeling ¡is ¡necessary ¡to ¡adapt ¡to ¡the ¡ changes ¡in ¡hardware ¡and ¡usage ¡ • Sta.s.cal ¡methods ¡help ¡to ¡construct ¡high-‑ rate ¡/accurate ¡models ¡from ¡low-‑rate/ inaccurate ¡ba=ery ¡interfaces ¡ • Sesame ¡creates ¡new ¡opportuni.es ¡in ¡system ¡ energy ¡op.miza.on ¡and ¡management ¡
Sesame ¡is ¡close ¡to ¡op.mal ¡ 20% ¡ Bat ¡I/F ¡ T61 ¡ RMS ¡of ¡RelaCve ¡Error ¡ Sesame ¡ 15% ¡ External ¡ 10% ¡ 5% ¡ 0% ¡ 0.01 ¡ 0.1 ¡ 1 ¡ 10 ¡ 100 ¡ Rate ¡(Hz) ¡
Why ¡user ¡experience ¡is ¡good? ¡ N900(pca+syscall) ¡ N900 ¡(pca) ¡ N900 ¡(original) ¡ response ¡collec.on ¡ T61 ¡(pca+syscall) ¡ predictor ¡collec.on ¡ T61 ¡(pca) ¡ model ¡calcula.on ¡ T61 ¡(original) ¡ 0 ¡ 1 ¡ 2 ¡ 3 ¡ 4 ¡ 5 ¡ Latency ¡(ms) ¡
Models ¡built ¡with ¡different ¡apps ¡ 30% es.mate ¡differently ¡by ¡ 40 ¡ ¡ Player ¡ System ¡Power ¡(W) ¡ 35 ¡ Developer ¡ 30 ¡ Calibrater ¡ 25 ¡ 20 ¡ 15 ¡ 0% ¡ 20% ¡ 40% ¡ 60% ¡ 80% ¡ 100% ¡ CPU ¡UClizaCon ¡
Why ¡High ¡rate ¡is ¡hard? ¡
What ¡is ¡the ¡limita.on ¡of ¡linearity ¡ • USENIX ¡paper ¡
Why ¡Sesame ¡is ¡be=er ¡for ¡laptop ¡than ¡ smartphone? ¡
Recommend
More recommend