1 / 24

Multiprocessor Scheduling

Multiprocessor Scheduling. “Global Multiprocessor Scheduling of Aperiodic Tasks using Time-Independent Priorities” Alexander Küchler. Agenda. Definitions Previous work Problems, assumptions and goals Results ‘Calculating’ U threshold Strategy for using the bound References.

carmand
Download Presentation

Multiprocessor Scheduling

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Multiprocessor Scheduling “Global Multiprocessor Scheduling of Aperiodic Tasks using Time-Independent Priorities” Alexander Küchler

  2. Agenda • Definitions • Previous work • Problems, assumptions and goals • Results • ‘Calculating’ Uthreshold • Strategy for using the bound • References Multiprocessor Scheduling Prof. Dr. Lars Lundberg, Prof. Dr. Andreas Polze

  3. Definitions I • Global/dynamic scheduling = a process can be migrate from one processor to another at run-time (assumption: no penalty for migration) • Aperiodic tasks = subgroup of periodic tasks, where no statements for arrival can be made • Time-independent priorities = assigned priority does not depend of its absolute arrival time • Preemptive scheduling = a task can be interrupted and continued later Multiprocessor Scheduling Prof. Dr. Lars Lundberg, Prof. Dr. Andreas Polze

  4. Definitions II • Multiprocessor with m processors and a set of n independent tasks • Each task Tn has • an arrival time An • a worst-case execution time Cn • a deadline Dn, • a synthetic utilization Un=Cn/Dn • a priority Pn • Total utilization U is the sum of all Un of tasks that have arrived but not yet reached their deadline Multiprocessor Scheduling Prof. Dr. Lars Lundberg, Prof. Dr. Andreas Polze

  5. Definitions III • V(t) is a task set with Ai≤t<Ai+Di • Synthetic utilization is Multiprocessor Scheduling Prof. Dr. Lars Lundberg, Prof. Dr. Andreas Polze

  6. Previous work I • (1) shows categorization of time-independent and non-time-independent scheduling policies for aperiodic tasks • (2) shows optimal utilization bound of for liquid tasks (Ci0 and Ci/Di0) on multiprocessor machines • (3) shows avoidance of Dhall’s effect for periodic tasks • by dividing tasks into two categories (UiUthreshold(m) = heavy; UiUthreshold (m) = light) Multiprocessor Scheduling Prof. Dr. Lars Lundberg, Prof. Dr. Andreas Polze

  7. Previous work I – Dhall’s effect Multiprocessor Scheduling Prof. Dr. Lars Lundberg, Prof. Dr. Andreas Polze

  8. Previous work II • (4) shows similar problem for periodic tasks with a result of ln(1+y)=(1-y)/(1+y) which is approx. 37,482% for m Multiprocessor Scheduling Prof. Dr. Lars Lundberg, Prof. Dr. Andreas Polze

  9. Problems, assumptions and goals • Problems: • Dhall’s effect shows that deadline monotonic priority assignment may lead to missed deadlines even if U is very low • Assumptions: • Preemptive scheduling is possible • Time-independent priorities for each task (depending on C and D, not A!) • Goals: • All tasks in the task set meet their deadlines Multiprocessor Scheduling Prof. Dr. Lars Lundberg, Prof. Dr. Andreas Polze

  10. Results I • Optimal utilization is a function of the number of processors m: with • Uthreshold has two meanings: • threshold for synthetic utilization in the admission control of incoming tasks: accept or reject • threshold for categorization of light and heavy tasks Multiprocessor Scheduling Prof. Dr. Lars Lundberg, Prof. Dr. Andreas Polze

  11. Results II • Uthreshold is an always valid bound (but not always optimal for all multiprocessors) • Generalize previous single-processor results [1] to multiprocessors • Extend previous multiprocessor results by considering not only liquid tasks [2] which are a special case of the generalized formulas Multiprocessor Scheduling Prof. Dr. Lars Lundberg, Prof. Dr. Andreas Polze

  12. ‘Calculating’ Uthreshold I • The idea behind the calculation is that one: • compute US(t) for a worst-case critically schedulable task pattern • this depends on the number of processors and is a function of x=Un=Cn/Dn • The calculation based upon one lemma and two theorem’s … Multiprocessor Scheduling Prof. Dr. Lars Lundberg, Prof. Dr. Andreas Polze

  13. ‘Calculating’ Uthreshold II • Lemma 1: A task Tx and a task pattern where each Ti that has higher priority than Tx has Ai≥Axcan be modified to a task pattern with same US(t) and block interference on Tx Multiprocessor Scheduling Prof. Dr. Lars Lundberg, Prof. Dr. Andreas Polze

  14. ‘Calculating’ Uthreshold II (Lemma 1) Multiprocessor Scheduling Prof. Dr. Lars Lundberg, Prof. Dr. Andreas Polze

  15. ‘Calculating’ Uthreshold II (Theorem 1) • Theorem 1: There is a worst-case critically schedulable task pattern, such that no task Ti in this task pattern has an arrival time Ai<An: that means that we can disregard all tasks with an early arrival, because they do not influence the block interference Multiprocessor Scheduling Prof. Dr. Lars Lundberg, Prof. Dr. Andreas Polze

  16. ‘Calculating’ Uthreshold II (Theorem 1) Multiprocessor Scheduling Prof. Dr. Lars Lundberg, Prof. Dr. Andreas Polze

  17. ‘Calculating’ Uthreshold II (Theorem 1) Multiprocessor Scheduling Prof. Dr. Lars Lundberg, Prof. Dr. Andreas Polze

  18. ‘Calculating’ Uthreshold II (Theorem 1) Multiprocessor Scheduling Prof. Dr. Lars Lundberg, Prof. Dr. Andreas Polze

  19. ‘Calculating’ Uthreshold II (Theorem 2) • Theorem 2: Create m copies of each task  disregarding Tn, the load on each processor is identical  reduce of the problem to a single-processor case Multiprocessor Scheduling Prof. Dr. Lars Lundberg, Prof. Dr. Andreas Polze

  20. ‘Calculating’ Uthreshold III • Important: by splitting each task into m new tasks block interference from high priority tasks occurs • [1] shows the worst-case how to handle the problem • An quadratic equation will be solved to get an optimal utilization bound for the single-processor case from [1] • Regard for the problem of heavy tasks: m heavy tasks with large D may lead to missed deadlines  priority assignment strategy to avoid Dhall’s effect: • 1. consider high utilization • 2. consider short deadline Multiprocessor Scheduling Prof. Dr. Lars Lundberg, Prof. Dr. Andreas Polze

  21. Strategy for using the bound I • Accept incoming tasks when current An accepted task Ti is light if • Use m: accept incoming tasks when current An accepted task Ti is light if Multiprocessor Scheduling Prof. Dr. Lars Lundberg, Prof. Dr. Andreas Polze

  22. Strategy for using the bound II • Keep track of among current tasks: accept incoming tasks if for liquid tasks: accept for [2] • In admission test: for very hard tasks with increase US(t) with only in the interval Ai≤t≤Ai+Di, so you reduce synthetic utilization and can accept more tasks Multiprocessor Scheduling Prof. Dr. Lars Lundberg, Prof. Dr. Andreas Polze

  23. References • “Schedulability Analysis and Utilization Bounds for Highly Scalable Real-Time Services”; Abdelzaher/Lu • “The Aperiodic Multiprocessor Utilization Bounds for Liquid Tasks”; Abdelzaher et.al • “Static-priority scheduling on multiprocessors”; Andersson/Baruah/Jonsson • “Analyzing Fixed-Priority Multiprocessor Scheduling”; Lundberg Multiprocessor Scheduling Prof. Dr. Lars Lundberg, Prof. Dr. Andreas Polze

  24. Questions? Thank you very much for your attention. Any questions left? Ask me! Multiprocessor Scheduling Prof. Dr. Lars Lundberg, Prof. Dr. Andreas Polze

More Related