Best effort scheduling

advertisement
CprE 458/558: Real-Time Systems
Best Effort Scheduling
CprE 458/558: Real-Time Systems (G. Manimaran)
1
Best-Effort Scheduler
• No schedulability check
• Schedule construction – online
• Overload handling (handling timing faults)
– Value based scheduling
– Imprecise computation
– (m,k)-firm task scheduling
• Value based scheduling
– Task Ti : <Ci, Pi, Vi> where Vi is the value offered by Ti.
– If Ti finishes by di, it offers a value of Vi.
Else, it offers a value of 0 (sometimes a negative value).
CprE 458/558: Real-Time Systems (G. Manimaran)
2
Best-Effort Scheduler (Contd.)
• Deadline scheduler (eg., EDF) – good for
under/normal load
• Value-based scheduler (e.g., HVDF:
Highest Value Density First) – good for
overload
• Hybrid (Adaptive) scheduler --- good for all
loads
• Heuristics Hi = function(value, deadline).
• Several heuristics exist.
CprE 458/558: Real-Time Systems (G. Manimaran)
3
HVDF – Highest Value Density First
• Value density = Vi/Ci
(i.e., value per unit computation time).
• Higher the value density, higher the
importance and hence higher the priority.
• HDVF scheduler schedules tasks based on
“value density”
CprE 458/558: Real-Time Systems (G. Manimaran)
4
Competitive Analysis of BE scheduler
• The competitive factor, BA , of an on-line
scheduling algorithm is defined as
VA ( S )
 BA ,
VCA ( S )
for all S
Where
S: a given task set
VA(S): value produced by given scheduler A
VCA(S): value produced by clairvoyant scheduler, the
scheduler which knows complete knowledge of all
tasks at the beginning itself.
CprE 458/558: Real-Time Systems (G. Manimaran)
5
Competitive Analysis of BE scheduler (contd.)
• The upper bound on the competitive factor for
any on-line scheduling is
1
(  1  2  )
Where Y = highest value density / lowest value density
• When Y = 1 (i.e., Vi = Ci), the competitive factor
is 0.25 (for single processor, same as the
result discussed in chapter 2)
CprE 458/558: Real-Time Systems (G. Manimaran)
6
Download