CS 633
Out Date :
In
date :
Lab 6
: Dynamic Scheduling in Distributed Systems
Object : To
implement dynamic scheduling in distributed systems using
3 methods :
sender initiated, receiver initiated and
symmetrically
initiated
Procedure : The nodes will be simulated by threads
communicating via
FIFOs and
managing buffer space by buffer pools as before.
A.
Sender Initiated
A.1. Implement the Sender Initiated
Scheduling algorithm
A.2. Provide 10 Solaris kernel threads
T1,T2,...,T10
A.3. Each
thread estimates its load l by randomly picking a number 0<l<n.
Assume int(n/2) is the threshold
value
A.4. Show that the algorithm works
A.5. Workout the finished schedluing times for various scenarios
B.
Repeat for Receiver initiated
C. Repeat for Symmetrically
initiated with threshold T1 = int(n/3)
and
threshold T2 = int(2n/3)
D
Repeat for a central load balancer that works as follows :
D.1. Each
node
-sends its load to a central
load balancer periodically
-waits for transfer command from
the central if HEAVY
-waits for receive command from
the central if LIGHT
-transfer happens from HEAVY
to LIGHT node
D.2. Central Node :
- Collect load info from all
nodes periodically
- Find HEAVY and LIGHT pairs
-
Send SEND command to HEAVY node and RECEIVE command
to LIGHT node