low overhead dynamic qos optimization under variable task ... · i 240 randomly generated...
TRANSCRIPT
Low Overhead Dynamic QoS OptimizationUnder Variable Task Execution Times
Sergiu Rafiliu Petru Eles Zebo Peng
Department of Computer and Information Science,Linkoping University, Sweden
November 3, 2010
Low Overhead Dynamic QoS Optimization Under Variable Task Execution Times
Motivation
Large, unpredictable load variationsI Large
I Complex set of applicationsI Not all functionality runs at all times
I UnpredictableI Complex hardware platformI Software may change during the lifetime of the system
EfficiencyI Not waste resources (power, memory, CPU time, cost . . . )I Optimize some Quality-of-Service metric
Low Overhead Dynamic QoS Optimization Under Variable Task Execution Times
Motivation
Large, unpredictable load variationsI Large
I Complex set of applicationsI Not all functionality runs at all times
I UnpredictableI Complex hardware platformI Software may change during the lifetime of the system
EfficiencyI Not waste resources (power, memory, CPU time, cost . . . )I Optimize some Quality-of-Service metric
Low Overhead Dynamic QoS Optimization Under Variable Task Execution Times
Motivation
Low Overhead Dynamic QoS Optimization Under VariableTask Execution Times
LoadQoS
CPUρ1
ρ2
ρn
On-line approaches:I Keep a certain reference LoadI Optimize Quality-of-ServiceI Low Overhead
Low Overhead Dynamic QoS Optimization Under Variable Task Execution Times
Outline
System Model
Problem Formulation
SolutionsApproachesOverheadOther Problems
Experiments
Conclusions and Future Work
Low Overhead Dynamic QoS Optimization Under Variable Task Execution Times
System Model
System Model
QoS
CPU task (τ)
I Execution times vary in unknown waysI Task rates are decided by the QoS ControllerI Jobs are scheduled through EDF
Low Overhead Dynamic QoS Optimization Under Variable Task Execution Times
System Model
System Model
QoSτ
[time]
c ∈ [cmin, cmax]
1ρ ; ρ ∈ [ρmin, ρmax]
CPU task (τ)
I Execution times vary in unknown waysI Task rates are decided by the QoS ControllerI Jobs are scheduled through EDF
Low Overhead Dynamic QoS Optimization Under Variable Task Execution Times
System Model
System Model
QoS[time]
⇒ EDF
Low Overhead Dynamic QoS Optimization Under Variable Task Execution Times
System Model
Quality-of-ServiceEach task posseses an abstract quality degradation curve:
I functions of rate
I decreasing, strictly monotonic curves
I higher rates⇒ better quality⇒ lower quality degradation.
rate rate
qual
ity
deg
radat
ion
qual
ity
deg
radat
ionτ1
τ2
τ1τ2
Low Overhead Dynamic QoS Optimization Under Variable Task Execution Times
Problem Formulation
System Model
Problem Formulation
SolutionsApproachesOverheadOther Problems
Experiments
Conclusions and Future Work
Low Overhead Dynamic QoS Optimization Under Variable Task Execution Times
Problem Formulation
QoS Controller
1. Determines task rates:I Maximize overall Quality-of-ServiceI Keep a reference CPU load given by the designer
I determine execution timesI determine number of jobs to be executed
2. Determines its next activation time.
Low Overhead Dynamic QoS Optimization Under Variable Task Execution Times
Problem Formulation
QoS Controller
rate
qual
ity
deg
radat
ion c1
c2
load
qual
ity
deg
radat
ion Lrefτ1
τ2
L =∑
i ci · ρi
Low Overhead Dynamic QoS Optimization Under Variable Task Execution Times
Problem Formulation
QoS Controller
rate
qual
ity
deg
radat
ion c1
c2
load
qual
ity
deg
radat
ion Lref
c′1 < c1c′2 > c2
load
qual
ity
deg
radat
ion Lref
τ1τ2
L =∑
i ci · ρi
Low Overhead Dynamic QoS Optimization Under Variable Task Execution Times
Solutions
System Model
Problem Formulation
SolutionsApproachesOverheadOther Problems
Experiments
Conclusions and Future Work
Low Overhead Dynamic QoS Optimization Under Variable Task Execution Times
Solutions
Approaches
Approaches
On-line approaches (QoS controllers):I Constant BandwidthI Uniform QoSI QoS DerivativeI Corner Case
Low Overhead Dynamic QoS Optimization Under Variable Task Execution Times
Solutions
Approaches
Constant Bandwitdh
load
qual
ity
deg
radat
ion Lref
load
qual
ity
deg
radat
ion Lref
B1 B2
• B1, B2 – bandwidth
• ∑iB1 = Lref
ρ1
ρ2
L1
L2
B1
B2
c1
c2
CPU
QoS1
QoS2
Low Overhead Dynamic QoS Optimization Under Variable Task Execution Times
Solutions
Approaches
Constant Bandwitdh
load
qual
ity
deg
radat
ion Lref
load
qual
ity
deg
radat
ion Lref
B1 B2
• B1, B2 – bandwidth
• ∑iB1 = Lref
ρ1
ρ2
L1
L2
B1
B2
c1
c2
CPU
QoS1
QoS2
• Load kept
• Quality-of-Service notconsidered
Low Overhead Dynamic QoS Optimization Under Variable Task Execution Times
Solutions
Approaches
Uniform QoS
load
qual
ity
deg
radat
ion Lref
load
qual
ity
deg
radat
ion Lref
ρ1
ρ2
+Lref L
CPU
QoS
c1
c2
−1
+
Low Overhead Dynamic QoS Optimization Under Variable Task Execution Times
Solutions
Approaches
Uniform QoS
load
qual
ity
deg
radat
ion Lref
load
qual
ity
deg
radat
ion Lref
ρ1
ρ2
+Lref L
CPU
QoS
c1
c2
−1
+
• Load kept
• Quality-of-Service notoptimized
Low Overhead Dynamic QoS Optimization Under Variable Task Execution Times
Solutions
Approaches
QoS Derivative
load
qual
ity
deg
radat
ion
Low Overhead Dynamic QoS Optimization Under Variable Task Execution Times
Solutions
Approaches
QoS Derivative
load
qual
ity
deg
radat
ion
load
qual
ity
deg
radat
ion
Low Overhead Dynamic QoS Optimization Under Variable Task Execution Times
Solutions
Approaches
QoS Derivative
load
qual
ity
deg
radat
ion
L1
L2
Lref
I Optimum approach for convex quality degradation curvesI Convex optimization problem
Low Overhead Dynamic QoS Optimization Under Variable Task Execution Times
Solutions
Approaches
Corner Case
load
qual
ity
deg
radat
ion
L1
L2Lref
I For concave quality degradation curves, the optimum isone of the corner cases
Low Overhead Dynamic QoS Optimization Under Variable Task Execution Times
Solutions
Overhead
Overhead
I Active set of tasks (no. of tasks to be considered)I Complexity
Low Overhead Dynamic QoS Optimization Under Variable Task Execution Times
Solutions
Overhead
Active Set of Tasks
QoS[time]
Low Overhead Dynamic QoS Optimization Under Variable Task Execution Times
Solutions
Overhead
Active Set of Tasks
QoS[time]
Low Overhead Dynamic QoS Optimization Under Variable Task Execution Times
Solutions
Overhead
QoS Controller Complexity
QoS Controller ComplexityConstant Bandwidth n ·O(1)
Uniform QoS O(n ·O(q))QoS Derivative O(n ·O(q))
Corner Case O(n · log(n))
I n – number of tasks (in the active set)I O(q) – complexity of calling the quality degradation
function for a value
Low Overhead Dynamic QoS Optimization Under Variable Task Execution Times
Solutions
Other Problems
Other Problems
I Measure execution timesI Determine the number of jobs to execute (in the case of
overload)I Determine the QoS Controller’s next activation point
Low Overhead Dynamic QoS Optimization Under Variable Task Execution Times
Experiments
System Model
Problem Formulation
SolutionsApproachesOverheadOther Problems
Experiments
Conclusions and Future Work
Low Overhead Dynamic QoS Optimization Under Variable Task Execution Times
Experiments
Setting
I 240 randomly generated test-cases with convex orconcave quality degradation curves
I 5 to 100 tasksI execution times variation [cmin, cmax ] = [cmin, 100 · cmin]
I 3 different processors (low , medium, high)I 6 different overhead setting (P1 to P6)
Low Overhead Dynamic QoS Optimization Under Variable Task Execution Times
Experiments
On-line Approaches
Amount of Resources
Act
ual Q
ualit
y D
egra
datio
n Le
vel
0.00.20.40.60.81.0
Cor
ner−
case
QoS
der
ivat
ive
Con
stan
t ban
dwid
thU
nifo
rm Q
oS
lowconcave
Cor
ner−
case
QoS
der
ivat
ive
Con
stan
t ban
dwid
thU
nifo
rm Q
oS
mediumconcave
Cor
ner−
case
QoS
der
ivat
ive
Con
stan
t ban
dwid
thU
nifo
rm Q
oS
highconcave
lowconvex
mediumconvex
0.00.20.40.60.81.0
highconvex
Low Overhead Dynamic QoS Optimization Under Variable Task Execution Times
Experiments
Period Assignment
Period Assignment Policy
Act
ual Q
ualit
y D
egra
datio
n Le
vel
0.0
0.2
0.4
0.6
0.8
1.0
−ape
riodi
c−s
pora
dic
−min
−avg
−AVG
−max
−MAX
Corner−caseconcave
−ape
riodi
c−s
pora
dic
−min
−avg
−AVG
−max
−MAX
QoS derivativeconcave
−ape
riodi
c−s
pora
dic
−min
−avg
−AVG
−max
−MAX
Uniform QoSconcave
Corner−caseconvex
QoS derivativeconvex
0.0
0.2
0.4
0.6
0.8
1.0Uniform QoS
convex
Low Overhead Dynamic QoS Optimization Under Variable Task Execution Times
Experiments
Active Task Set and Overheads
Controller Overhead T(1)
Act
ual Q
ualit
y D
egra
datio
n Le
vel
0.00.20.40.60.81.0
Cor
ner−
case
QoS
der
ivat
ive
Con
stan
t ban
dwid
thU
nifo
rm Q
oS
P1concave
Cor
ner−
case
QoS
der
ivat
ive
Con
stan
t ban
dwid
thU
nifo
rm Q
oS
P2concave
Cor
ner−
case
QoS
der
ivat
ive
Con
stan
t ban
dwid
thU
nifo
rm Q
oS
P3concave
Cor
ner−
case
QoS
der
ivat
ive
Con
stan
t ban
dwid
thU
nifo
rm Q
oS
P4concave
Cor
ner−
case
QoS
der
ivat
ive
Con
stan
t ban
dwid
thU
nifo
rm Q
oS
P5concave
Cor
ner−
case
QoS
der
ivat
ive
Con
stan
t ban
dwid
thU
nifo
rm Q
oS
P6concave
P1convex
P2convex
P3convex
P4convex
P5convex
0.00.20.40.60.81.0
P6convex
Low Overhead Dynamic QoS Optimization Under Variable Task Execution Times
Conclusions and Future Work
Conclusions
I Solved the QoS problem for mono-processor systems withindependent tasks
I Proposed approaches for convex and concave qualitydegradation curves
I Determined Controller complexityI Considered overheadsI Considered other practical problems
Low Overhead Dynamic QoS Optimization Under Variable Task Execution Times
Conclusions and Future Work
Future Work
I More complex architecturesI Other types of resourcesI More optimization criteriaI Stability
Low Overhead Dynamic QoS Optimization Under Variable Task Execution Times
Conclusions and Future Work
Questions???