Priority Enhanced Stride Scheduling - PowerPoint PPT Presentation

1 / 22
About This Presentation
Title:

Priority Enhanced Stride Scheduling

Description:

Priority Enhanced Stride Scheduling. Damien Le Moal, Mineyoshi Masuda, Masahiro Goshima, ... Classically. Over process life time. Recently used share ... – PowerPoint PPT presentation

Number of Views:76
Avg rating:3.0/5.0
Slides: 23
Provided by: griffi
Category:

less

Transcript and Presenter's Notes

Title: Priority Enhanced Stride Scheduling


1
Priority Enhanced Stride Scheduling
  • Damien Le Moal, Mineyoshi Masuda, Masahiro
    Goshima,
  • Shin-ichiro Mori, Yasuhiko Kitamura,
  • Toshiaki Kitamura and Shinji Tomita

Graduate School of Informatics, Kyoto University
2
Overview
  • Introduction
  • context and objectives
  • Background
  • Priority based scheduling
  • Fair-share scheduling Stride scheduling
  • Colonia local scheduling
  • Priority enhanced stride scheduling
  • Evaluation results
  • Conclusion and future work

3
Introduction Context
  • Computer Colony a cluster of workstations
  • High-bandwidth, low-latency communications
  • hardware support for cache coherent shared
    distributed memory
  • User level communications
  • Colonia distributed operating system
  • Implement a massively parallel computer
  • Fine-grain parallelism support
  • Dynamic preemptive process migration

4
Introduction Objectives
  • In such environment
  • Various workload execution
  • User interactive, I/O bound and compute bound
    processes
  • Parallel applications
  • More users execute applications on a single node

5
Introduction Objectives
  • As a result, process scheduling needs
  • Support for a wide range of applications
  • In particular user interactive processes
  • Fair-share allocation of CPU time
  • Among users and processes
  • System wide
  • But
  • Adaptive to the current workload on highly
    loaded nodes only

6
Colonia Distributed Scheduling
  • Approach
  • Local and global scheduling
  • Fair-share scheduling locally to each node
  • Load balancing implements global fairness

Global fair-share scheduling
7
Priority Scheduling
  • UNIX systems
  • Priority scheduling
  • General
  • Simple to implement, small overhead
  • Dynamic priority calculation efficient execution
    of a wide range of applications
  • CPU time allocation to users depends on the
    number of processes
  • CPU starvation problem

8
Fair-share Scheduling
  • Fair-share scheduling
  • Share calculated with a currency (tickets)
  • Hierarchical fair-share share defined for users
    and processes
  • Priority-based fair-share scheduling
  • Use existing method
  • Priority calculation method difficult
  • Tuning not easy
  • Fairness realized over long periods

9
Stride Scheduling
  • Proportional-share scheduling methods
  • Execute processes depending only on their share
    (tickets)
  • Stride scheduling

At each quanta, the process with the smallest
pass is chosen
10
Stride Scheduling
  • Stride scheduling problems
  • Simple algorithm
  • Fairness realized over short intervals
  • Overhead depends on the number of processes
  • Basic implementation degrade response time
  • Process behavior not considered
  • Not preemptive

11
Colonia Local Scheduling
  • Solution
  • Combination of two methods
  • Priority scheduling to control process execution
    order
  • Stride scheduling to implement simply overall
    fairness

Policy needed to decide on the use of either
priority or stride scheduling
12
Enhanced Stride Scheduling
  • Stride scheduling implementation
  • Avoiding sorting the ready queue in pass order
  • Idea replacing pass with an array index
  • Processes are chosen from the head list

13
Priority Enhanced Stride Scheduling
  • Priority and Stride scheduling combination use
  • New processes or processes waking up
  • Scheduled first with their priority
  • Temporary unfair CPU time allocation tolerated
  • Depending on share and CPU usage
  • Stride scheduling used

14
Priority Enhanced Stride Scheduling
  • Priority and stride scheduling use

CPU time allocation
Share
Time
15
Priority Enhanced Stride Scheduling
  • Control CPU usage accounting
  • Classically
  • Over process life time
  • Recently used share
  • Over a smaller time interval (few seconds)

16
Priority Enhanced Stride Scheduling
  • Ready queue
  • Multi-level feedback queue
  • Stride queue assigned a fixed priority
  • Priority calculation
  • Control stride queue usage
  • Classical priority/time quantum calculation (SJF)

17
Evaluation results
  • Compute bound processes

? Process 3 (500)
? Process 2 (300)
? Process 1 (200)
18
Evaluation results
  • Mix of load

? User C (200)
? User B (300)
? User A (500)
19
Conclusion
  • Flexible fair-share scheduling
  • Precise Allocation of CPU time
  • Response time minimized
  • Scheme flexible adaptive to the load
  • On lightly loaded systems only priority
    scheduling
  • Future work
  • Tuning
  • System wide extension of fairness

20
Evaluation results
  • Stride scheduling overhead

? Simple get
? Colonia get
? Simple put
? Colonia put
21
Evaluation results
  • Scheduling overhead

? stride scheduling only
? priority scheduling only
22
Evaluation results
  • Basic behavior

Allocated share
? Process 2 (500)
Time (sec)
Write a Comment
User Comments (0)
About PowerShow.com