Multiprocessor Real-Time Scheduling - PowerPoint PPT Presentation

About This Presentation
Title:

Multiprocessor Real-Time Scheduling

Description:

Multiprocessor Real-Time Scheduling Aaron Harris CSE 666 Prof. Ganesan Multiprocessor Scheduling As more systems incorporate multiple processors, interest in ... – PowerPoint PPT presentation

Number of Views:354
Avg rating:3.0/5.0
Slides: 15
Provided by: Aaron194
Category:

less

Transcript and Presenter's Notes

Title: Multiprocessor Real-Time Scheduling


1
Multiprocessor Real-Time Scheduling
  • Aaron Harris
  • CSE 666
  • Prof. Ganesan

2
Multiprocessor Scheduling
  • As more systems incorporate multiple processors,
    interest in scheduling algorithms increases.
  • Still relatively little research done (compared
    to uniprocessor scheduling).
  • Due to increased complexity, much research makes
    simplifications of their systems.

3
When and Where
  • Multiprocessor scheduling requires determining
    both which task to run at a given time and on
    which processor to run it on.
  • Added complexity as compared to scheduling in a
    uniprocessor environment.
  • Scheduling must account for not only the status
    of tasks, but the status of processors.

4
Schedule Management
  • In a standard system, the schedule is controlled
    by the processor.
  • Multiprocessor systems follow two general
    approaches master-slave and dedicated scheduler.
  • In master-slave, one processor handles all
    schedule processing and also processes normal
    tasks.
  • Dedicated scheduler systems allocate an entire
    processor to nothing but schedule processing.
    This can be more efficient in complex systems
    with many processors.

5
Algorithm Selection
  • In a single processor system, rate-monotonic (for
    static priorities) and earliest-deadline-first
    (for dynamic priorities) algorithms are the
    accepted best overall algorithms.
  • There is no agreed-upon best algorithm for
    multiprocessor systems (due to increased
    complexity of algorithms and lack of research).

6
Algorithm Categories
  • Most multiprocessor scheduling algorithms fall
    into one of two categories global scheduling and
    partitioned scheduling.

7
Partitioned Scheduling
  • All tasks are divided among the processors at
    compile time.
  • Each task can only execute on its assigned
    processor.
  • Advantages This turns each processor into a
    single processor system as far as scheduling is
    concerned. All research and theory of single
    processor scheduling then applies to each
    processor.
  • Disadvantages The process of assigning tasks to
    processors can be complicated and extremely
    inefficient if done poorly. This can lead to
    poor system performance.

8
Global Scheduling
  • All tasks are allowed to execute on all
    processors.
  • Tasks are scheduled from a global queue to
    individual processors.
  • Advantages This technique allows for better
    processor utilization and overall system
    performance.
  • Disadvantages The main disadvantage is
    migration. This is when a task is preempted on
    one processor and resumes execution on a
    different processor. This requires the context
    of the task to be moved from one processor to
    another, which can be costly.

9
Problems Dhalls Effect
  • Something interesting is the relation of
    ultization to scheduliblity.
  • One may think that to be schedulable, the
    utilization of a set of tasks on n processors
    should simply be n.
  • Dhall proved that the number must actually be
    between nln(2) and n (Dhalls Effect).

10
Problems Schedule Complexity
  • Many types of scheduling (e.g. dynamic
    priorities) that require extensive run-time
    calculations can become too complicated in a
    multiprocessor environment.
  • Due to this, most of the scheduling algorithms
    that have been researched use compile-time
    determined priorities.

11
Problems Resource Synchronization
  • Resource synchronization becomes a much larger
    issue in multiprocessor systems.
  • Even in a non-preemptive multiprocessor system,
    resource sharing can lead to task blocking.
  • More thought must be put into how and what
    resources are shared between tasks in a
    multiprocessor system.

12
Conclusions
  • Multiprocessor scheduling algorithms are more
    complex than uniprocessor systems.
  • There is still no decisively best multiprocessor
    scheduling algorithm.
  • Multiprocessor systems will continue to become
    more and more prevalent, and as a result,
    multiprocessor scheduling research and theory
    will have to continue to improve.

13
References
  • Khemka A., Shyamasundar R. K., "An Optimal
    Multiprocessor Real-Time Scheduling Algorithm",
    Journal of Parallel and Distributed Computing 43,
    37-45, 1997 http//citeseer.ist.psu.edu/khemka97op
    timal.html.
  • G. Manimaran, C. Siva Ram Murthy, "An Efficient
    Dynamic Scheduling Algorithm for Multiprocessor
    Real-Time Systems," IEEE Transactions on Parallel
    and Distributed Systems, Vol. 09, No. 3,  pp.
    312-319, March, 1998.
  • K. Ramamritham, J.A. Stankovic, P.F. Shiah,
    "Efficient Scheduling Algorithms for Real-Time
    Multiprocessor Systems," IEEE Transactions on
    Parallel and Distributed Systems,
    Vol. 01, No. 2,  pp. 184-194, April, 1990.
  • J. Carpenter et al., A Categorization of
    Real-Time Multiprocessor Scheduling Problems and
    Algorithms, http//www.cs.uga.edu/shelby/pubs/ca
    rpenterFHSAB2003.pdf.
  • S. K. Dhall, C. L. Liu, On a Real-Time
    Scheduling Problem, Operations Research, Vol.
    26, No. 1, Scheduling (Jan. Feb., 1978), pp.
    127-140.

14
Questions?
Write a Comment
User Comments (0)
About PowerShow.com