20
A System Performance Model Distributed Process Scheduling

A System Performance Model Distributed Process Scheduling

Embed Size (px)

DESCRIPTION

For concurrent execution of interacting processes:- Communication and Synchronization between processes are the two essential system components Before processes can execute, they need to be:- Scheduled and Allocated with resources.

Citation preview

Page 1: A System Performance Model Distributed Process Scheduling

A System Performance Model

Distributed Process Scheduling

Page 2: A System Performance Model Distributed Process Scheduling

Outline

• Overview

• Process Interaction Models

• A System Performance Model

• Efficiency Loss

• Processor Pool and Workstation Queuing Models

• Comparison of Performance for Workload Sharing

• References

Page 3: A System Performance Model Distributed Process Scheduling

For concurrent execution of interacting processes:-• Communication and

• Synchronization between processes

are the two essential system components

Before processes can execute, they need to be:-

• Scheduled and

• Allocated with resources.

Page 4: A System Performance Model Distributed Process Scheduling

Why scheduling?

1.To enhance overall system performance metrices like:

• Process completion time and

• Processor utilization.

2. To achieve location and performance transparencies by distributed process scheduling.

Page 5: A System Performance Model Distributed Process Scheduling

Why scheduling in distributed systems is of special interestThis is so because of the issues that are different

from those in traditional multiprocessor systems: • The communication overhead is significant.

• The effect of underlying architecture cannot be ignored.

• And the dynamic behaviour of the system must be addressed.

Page 6: A System Performance Model Distributed Process Scheduling

Process Models(in brief)

1. Precedence Process Model

• Processes are represented by a DAG.

• Nodes- sequential processes

• Arcs- eg: i to j requires that process I completes before j can start executing.

Page 7: A System Performance Model Distributed Process Scheduling

Communication Process Model• Processes are created to coexist and

communicate synchronously.

• So we have undirected edges.

Page 8: A System Performance Model Distributed Process Scheduling

Disjoint Process Model

• We assume that processes can be run independently of each other.

• So order in which processes are executed is not important.

Page 9: A System Performance Model Distributed Process Scheduling

System Performance

• Speedup

• -What are the factors on which it depends

• How to calculate speedup when we apply these factors

Page 10: A System Performance Model Distributed Process Scheduling

Speedup depends on three factors• The design of the algorithm

• The efficiency of the scheduling algorithm

• The underlying system architecture.

• So if we take ‘S’ as the speedup factor then the above dependencies can be represented as

• S= F(Algorithm, System, Schedule)

Page 11: A System Performance Model Distributed Process Scheduling

• Where• OSPT= optimal sequential processing time; the

best time that can be achieved on a single processor using the best sequential algorithm.

• CPT= concurrent processing time; actual time achieved with the concurrent algorithm on an ideal n-processor system using an optimal scheduling policy.

• OCPTideal =optimal concurrent processing time on an ideal system;

• Si =ideal speedup obtained by using a multiple processor system over the best sequential time

• Sd = the degradation of the system due to actual implementation compared to an ideal system

Page 12: A System Performance Model Distributed Process Scheduling

Refined formula for speedup…..

• n – number of processors

• RP- Relative Processing requirement,

• RC- Relative Concurrency

Page 13: A System Performance Model Distributed Process Scheduling

…. Refined formula for speedup• Sd- degradation of parallelism due to algorithm

implementation.

Page 14: A System Performance Model Distributed Process Scheduling

Final formula for speedup

- Efficiency Loss, loss of parallelism when

implemented on a real machine. can be decomposed into two terms:

= sched + syst

Page 15: A System Performance Model Distributed Process Scheduling

Efficiency Loss

Page 16: A System Performance Model Distributed Process Scheduling

Efficiency Loss (Cont.)

'

)()()',(

)',(

schedsyst

ideal

idealideal

ideal

ideal

ideal

ideal

OCPTOCPTYCPT

OCPTYCPTYXCPT

OCPTOCPTYXCPT

'

)()(),(

),(

systsched

ideal

ideal

ideal

ideal

ideal

OCPTOCPTXOCPT

OCPTXOCPTZXCPT

OCPTOCPTZXCPT

Page 17: A System Performance Model Distributed Process Scheduling

Workload Distribution• Performance can be further improved by

workload distribution

• Load sharing: static workload distribution• Dispatch process to the idle processors

statically upon arrival• Corresponding to processor pool model

• Load balancing: dynamic workload distribution• Migrate processes dynamically from heavily

loaded processors to lightly loaded processors• Corresponding to migration workstation model

Page 18: A System Performance Model Distributed Process Scheduling

18

Processor-Pool and Workstation Queueing Models

Static Load SharingDynamic Load Balancing

M for Markovian distribution

Page 19: A System Performance Model Distributed Process Scheduling

Comparison of Performance for Workload Sharing

Page 20: A System Performance Model Distributed Process Scheduling

References• “Distributed Operating Systems and Algorithms”

by Randy Chow and Theodore Johnson

• “Operating System Concepts” by Silberschatz, Galvin and Gagne