You are on page 1of 14

Multi-Processor

Scheduling
Presented by:
Arooba Kainat
Roll No:04
BS(CS)5th
Content
 Basics of Multi-Processor Scheduling.
 Approaches to Multi-Processor Scheduling.
 Asymmetric Multi-processing
 Symmetric Multi-processing
 Processor Affinity.
 Types of Affinity
 Load Balancing.
 Approaches to Load Balancing.
 Push Migration
 Pull Migration
Basics Of Multi-Processor Scheduling

Multi-Processor Systems:
 Multiple CPU’s are Available.

 Load Sharing becomes possible.

 Processors are HOMOGENEOUS


(we can use any processor available to run any process in the queue).

Multi-Processor Scheduling:
 The order of execution of processes is deciding in Multi-Processor Scheduling.
Approaches To Multi-processor
Scheduling

 Asymmetric Multi-Processing

 Symmetric Multi-Processing
Asymmetric Multi-Processing

Asymmetric Multi-Processor includes:

 Master Server
(single processor which handle scheduling decisions and I/O Processing).

 Slaves

(other processors which executes only the user code).

 Simple & Reduces the need of data sharing.


Asymmetric Multi-Processing

Example:

Slave Master Slave Slave

P1 P2 P3 P4
Symmetric Multi-Processing

In Symmetric Multi-Processing:
Each Processor has
 its own shared memory
 And its own private queue
For the execution of task.
While executing, the scheduler will take the charge for the scheduling of
different processes.
symmetric Multi-processing

Example:

CPU 1 CPU 2 CPU 3 CPU 4

Shared Memory

P1 P2 P3 P4
Processor Affinity
Systems try to

 Avoid migration of processes

 Keep a process running on same processor

Known as PROCESSOR AFFINITY.

Two Types of Processor Affinity:


 Soft affinity
 Hard affinity
Types of processor affinity

Soft Affinity
 When an operating system has a policy of attempting to keep a process running
on the same processor but not guaranteeing it will do so, this situation is called
soft affinity.

Hard Affinity
 Allows a process to specify a subset of processors on which it may run.
Load Balancing

 Phenomena which keeps the workload equally Distributed across


all processors in SMP Systems.

 It is necessary only on systems where each processor has its own


private queue of process which are eligible to execute.
Approaches to Load Balancing
There are two approaches to load balancing
Push Migration:
In Push Migration
 A task routinely checks the load on processor.
 If it find an imbalance then it evenly distributes load on each processors.
 By moving the processes from overloaded to idle or less busy processors.

Pull Migration:
Pull Migration occur when
 An idle processor pulls a waiting task from a busy processor for its execution.
Thank You!

Any Questions??

You might also like