a system performance model distributed process scheduling
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.TRANSCRIPT
![Page 1: A System Performance Model Distributed Process Scheduling](https://reader035.vdocuments.us/reader035/viewer/2022070605/5a4d1aec7f8b9ab05997b534/html5/thumbnails/1.jpg)
A System Performance Model
Distributed Process Scheduling
![Page 2: A System Performance Model Distributed Process Scheduling](https://reader035.vdocuments.us/reader035/viewer/2022070605/5a4d1aec7f8b9ab05997b534/html5/thumbnails/2.jpg)
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](https://reader035.vdocuments.us/reader035/viewer/2022070605/5a4d1aec7f8b9ab05997b534/html5/thumbnails/3.jpg)
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](https://reader035.vdocuments.us/reader035/viewer/2022070605/5a4d1aec7f8b9ab05997b534/html5/thumbnails/4.jpg)
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](https://reader035.vdocuments.us/reader035/viewer/2022070605/5a4d1aec7f8b9ab05997b534/html5/thumbnails/5.jpg)
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](https://reader035.vdocuments.us/reader035/viewer/2022070605/5a4d1aec7f8b9ab05997b534/html5/thumbnails/6.jpg)
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](https://reader035.vdocuments.us/reader035/viewer/2022070605/5a4d1aec7f8b9ab05997b534/html5/thumbnails/7.jpg)
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](https://reader035.vdocuments.us/reader035/viewer/2022070605/5a4d1aec7f8b9ab05997b534/html5/thumbnails/8.jpg)
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](https://reader035.vdocuments.us/reader035/viewer/2022070605/5a4d1aec7f8b9ab05997b534/html5/thumbnails/9.jpg)
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](https://reader035.vdocuments.us/reader035/viewer/2022070605/5a4d1aec7f8b9ab05997b534/html5/thumbnails/10.jpg)
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](https://reader035.vdocuments.us/reader035/viewer/2022070605/5a4d1aec7f8b9ab05997b534/html5/thumbnails/11.jpg)
• 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](https://reader035.vdocuments.us/reader035/viewer/2022070605/5a4d1aec7f8b9ab05997b534/html5/thumbnails/12.jpg)
Refined formula for speedup…..
• n – number of processors
• RP- Relative Processing requirement,
• RC- Relative Concurrency
![Page 13: A System Performance Model Distributed Process Scheduling](https://reader035.vdocuments.us/reader035/viewer/2022070605/5a4d1aec7f8b9ab05997b534/html5/thumbnails/13.jpg)
…. Refined formula for speedup• Sd- degradation of parallelism due to algorithm
implementation.
![Page 14: A System Performance Model Distributed Process Scheduling](https://reader035.vdocuments.us/reader035/viewer/2022070605/5a4d1aec7f8b9ab05997b534/html5/thumbnails/14.jpg)
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](https://reader035.vdocuments.us/reader035/viewer/2022070605/5a4d1aec7f8b9ab05997b534/html5/thumbnails/15.jpg)
Efficiency Loss
![Page 16: A System Performance Model Distributed Process Scheduling](https://reader035.vdocuments.us/reader035/viewer/2022070605/5a4d1aec7f8b9ab05997b534/html5/thumbnails/16.jpg)
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](https://reader035.vdocuments.us/reader035/viewer/2022070605/5a4d1aec7f8b9ab05997b534/html5/thumbnails/17.jpg)
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](https://reader035.vdocuments.us/reader035/viewer/2022070605/5a4d1aec7f8b9ab05997b534/html5/thumbnails/18.jpg)
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](https://reader035.vdocuments.us/reader035/viewer/2022070605/5a4d1aec7f8b9ab05997b534/html5/thumbnails/19.jpg)
Comparison of Performance for Workload Sharing
![Page 20: A System Performance Model Distributed Process Scheduling](https://reader035.vdocuments.us/reader035/viewer/2022070605/5a4d1aec7f8b9ab05997b534/html5/thumbnails/20.jpg)
References• “Distributed Operating Systems and Algorithms”
by Randy Chow and Theodore Johnson
• “Operating System Concepts” by Silberschatz, Galvin and Gagne