Self-‑Construc.ve ¡High-‑Rate ¡System ¡Energy ¡Modeling ¡ for ¡Ba=ery-‑Powered ¡Mobile ¡Systems ¡ Mian ¡Dong ¡and ¡Lin ¡Zhong ¡
¡
¡
Rice ¡University ¡
Self-Construc.ve High-Rate System Energy Modeling for - - PowerPoint PPT Presentation
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 (
Self-‑Construc.ve ¡High-‑Rate ¡System ¡Energy ¡Modeling ¡ for ¡Ba=ery-‑Powered ¡Mobile ¡Systems ¡ Mian ¡Dong ¡and ¡Lin ¡Zhong ¡
¡
¡
Rice ¡University ¡
Response ¡y(t): ¡ ¡ Energy ¡consumed ¡ by ¡the ¡system ¡in ¡t
y(t) = f(x1(t), x2(t),…, xp(t))
Predictors ¡xi(t): ¡ ¡ System ¡status ¡ variables ¡in ¡t
0.01Hz ¡ 1Hz ¡ 100Hz ¡
is ¡needed ¡to ¡provide ¡an ¡energy ¡reading ¡ at ¡each ¡OS ¡scheduling ¡interval ¡
10ms ¡
Target System Data Acquisition Equipment Host PC
31,415,926
y(t1) ¡ x1(t1) x2(t1) … xp(t1) ¡ x1(t2) x2(t2) … xp(t2) ¡ x1(tn) x2(tn) … xp(tn) ¡ y(t2) ¡ y(tn) ¡ t=t1=t2=…=tn ¡
X(t) Y(t)
Regression
Target System Data Acquisition Equipment Host PC
31,415,926
t=t1=t2=…=tn ¡
y(t) = β0+β1x1(t)+…+ βpxp(t) β = argminβ(║Y(t)−[1 X(t)]β║2) ^ ¡
Linear ¡Model: ¡
Target System Data Acquisition Equipment Host PC
31,415,926
t=t1=t2=…=tn ¡
y(ti) − y(ti) err(ti) = y(ti) ¡ ^ ¡ ^ ¡ ^ ¡ ^ ¡ ^ ¡ y(t) = β0+β1x1(t)+…+ βpxp(t)
Linear ¡Model: ¡
Mean ¡Absolute ¡ ¡ Root-‑Mean-‑Square ¡
¡
¡ www.nokia.com ¡
¡
instances ¡of ¡the ¡same ¡plaKorm ¡
suggest ¡“personalized” ¡models ¡ be ¡constructed ¡for ¡a ¡mobile ¡system ¡ ¡ Dependencies ¡of ¡ system ¡energy ¡models ¡on ¡
System ¡Energy ¡Modeling ¡
External Devices Deep Knowledge Exclusive Model Fixed Model Battery Interface Statistical Learning
State-‑of-‑the-‑art ¡ba=ery ¡Interfaces ¡are ¡
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
High-‑Rate/Accurate ¡ ¡ System ¡Energy ¡Model ¡ ¡ Low-‑Rate/Inaccurate ¡ ¡ Ba=ery ¡Interface ¡ ¡
0% ¡ 10% ¡ 20% ¡ 30% ¡ 40% ¡ 50% ¡ 0.01 ¡ 0.1 ¡ 1 ¡ 10 ¡
RMS ¡of ¡RelaCve ¡Error ¡ Rate ¡(Hz) ¡
N900 ¡ T61 ¡ N85 ¡
have ¡
Higher Accuracy
but ¡
Even Lower Rate
y x
Time ¡
y(t) y(T) x(t) x(T)
Time ¡ High-‑rate ¡data ¡points ¡ Low-‑rate ¡data ¡points ¡
High-‑rate ¡data ¡points ¡ Low-‑rate ¡data ¡points ¡
Linear ¡models ¡are ¡
¡0.01Hz ¡ 1Hz ¡ 100Hz ¡ Y(tH) Y(tL) Y(tVL) X(tH) X(tVL) β ¡ ^ ¡ ^ ¡ β ¡ ^ ¡
0% ¡ 10% ¡ 20% ¡ 30% ¡ 0.01 ¡ 0.1 ¡ 1 ¡ 10 ¡ 100 ¡
RMS ¡of ¡RelaCve ¡Error ¡ Rate ¡(Hz) ¡
Ba=ery ¡ ¡ Interface ¡
0% ¡ 10% ¡ 20% ¡ 30% ¡ 0.01 ¡ 0.1 ¡ 1 ¡ 10 ¡ 100 ¡
RMS ¡of ¡RelaCve ¡Error ¡ Rate ¡(Hz) ¡
Model ¡Molding ¡improves ¡rate
Ba=ery ¡ ¡ Interface ¡ Molded ¡ Model ¡
x1(t), x2(t),…, xp(t) z1(t), z2(t),…, zL(t)
Principle ¡ ¡ Component ¡ ¡ Analysis ¡
L L ≤ p p
0% ¡ 10% ¡ 20% ¡ 30% ¡ 0.01 ¡ 0.1 ¡ 1 ¡ 10 ¡ 100 ¡
RMS ¡of ¡RelaCve ¡Error ¡ Rate ¡(Hz) ¡
PCA ¡improves ¡accuracy
Ba=ery ¡ ¡ Interface ¡ Molded ¡ Model ¡ Molded ¡ Model ¡+ ¡ PCA ¡
x y yj rj y=f(x)
Training data points
dj xj Δxj
0% ¡ 10% ¡ 20% ¡ 30% ¡ 0.01 ¡ 0.1 ¡ 1 ¡ 10 ¡ 100 ¡
RMS ¡of ¡RelaCve ¡Error ¡ Rate ¡(Hz) ¡
TLS ¡improves ¡accuracy ¡at ¡high ¡rate ¡
Ba=ery ¡ ¡ Interface ¡ Molded ¡ Model ¡ Molded ¡ Model ¡+ ¡ PCA ¡ Molded ¡ Model ¡+ ¡ PCA ¡+ ¡TLS ¡
Data ¡Collector
Sesame
Model ¡Constructor
Predictor ¡ transformation
Model
Model ¡Manager Operating ¡ System Bat ¡I/F STATS
Energy ¡ ¡readings ¡ Stats ¡readings ¡ Predictors Responses
Model ¡molding
Application ¡ specific ¡ predictors
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 ¡
0% ¡ 10% ¡ 20% ¡ 30% ¡ 7 ¡ 9 ¡ 11 ¡ 13 ¡ 15 ¡
Error ¡ Time ¡(hour) ¡
User ¡1 ¡ User ¡2 ¡ User ¡3 ¡ User ¡4 ¡ 0% ¡ 10% ¡ 20% ¡ 30% ¡ 1 ¡ 2 ¡ 3 ¡ 4 ¡
Error ¡ Laptop ¡User ¡
Sesame@1Hz ¡ Sesame@100Hz ¡
Sesame ¡is ¡close ¡to ¡State-‑of-‑the-‑Art ¡
without any external assistance
0% ¡ 5% ¡ 10% ¡ 15% ¡ 0.01 ¡ 0.1 ¡ 1 ¡ 10 ¡ 100 ¡ 1000 ¡
Average ¡Absolute ¡RelaCve ¡ Error ¡ Rate ¡(Hz) ¡
Sesame ¡ PowerTutor ¡ PowerBooter ¡ FSM ¡ (Eurosys’11) ¡ (CODES+ISSS’10) ¡ (CODES+ISSS’10) ¡
¡ ¡ ¡
Sesame ¡is ¡able ¡to ¡construct ¡models ¡
Sesame ¡is ¡a ¡high-‑rate/accurate ¡
and ¡creates ¡new ¡opportuni.es ¡in ¡
“Knob” ¡ provided ¡by ¡ ¡ target ¡soiware ¡
Sesame ¡can ¡be ¡also ¡used ¡for ¡
Conclusions ¡
changes ¡in ¡hardware ¡and ¡usage ¡
rate ¡/accurate ¡models ¡from ¡low-‑rate/ inaccurate ¡ba=ery ¡interfaces ¡
energy ¡op.miza.on ¡and ¡management ¡
Sesame ¡is ¡close ¡to ¡op.mal ¡
0% ¡ 5% ¡ 10% ¡ 15% ¡ 20% ¡ 0.01 ¡ 0.1 ¡ 1 ¡ 10 ¡ 100 ¡
RMS ¡of ¡RelaCve ¡Error ¡ Rate ¡(Hz) ¡
Bat ¡I/F ¡ Sesame ¡ External ¡
T61 ¡
0 ¡ 1 ¡ 2 ¡ 3 ¡ 4 ¡ 5 ¡
T61 ¡(original) ¡ T61 ¡(pca) ¡ T61 ¡(pca+syscall) ¡ N900 ¡(original) ¡ N900 ¡(pca) ¡ N900(pca+syscall) ¡
Latency ¡(ms) ¡
response ¡collec.on ¡ predictor ¡collec.on ¡ model ¡calcula.on ¡
Why ¡user ¡experience ¡is ¡good? ¡
15 ¡ 20 ¡ 25 ¡ 30 ¡ 35 ¡ 40 ¡ 0% ¡ 20% ¡ 40% ¡ 60% ¡ 80% ¡ 100% ¡
System ¡Power ¡(W) ¡ CPU ¡UClizaCon ¡
Player ¡ Developer ¡ Calibrater ¡
¡
Models ¡built ¡with ¡different ¡apps ¡ es.mate ¡differently ¡by ¡
Why ¡High ¡rate ¡is ¡hard? ¡
What ¡is ¡the ¡limita.on ¡of ¡linearity ¡
Why ¡Sesame ¡is ¡be=er ¡for ¡laptop ¡than ¡ smartphone? ¡