26
Dynamic Load Sharing and Balancing Sig Freund

Dynamic Load Sharing and Balancing Sig Freund. Outline Introduction Distributed vs. Traditional scheduling Process Interaction models Distributed Systems

Embed Size (px)

Citation preview

Page 1: Dynamic Load Sharing and Balancing Sig Freund. Outline Introduction Distributed vs. Traditional scheduling Process Interaction models Distributed Systems

Dynamic Load Sharing and Balancing

Sig Freund

Page 2: Dynamic Load Sharing and Balancing Sig Freund. Outline Introduction Distributed vs. Traditional scheduling Process Interaction models Distributed Systems

OutlineIntroductionDistributed vs. Traditional

schedulingProcess Interaction modelsDistributed SystemsResearch StudiesGuess about the Future?Questions

Page 3: Dynamic Load Sharing and Balancing Sig Freund. Outline Introduction Distributed vs. Traditional scheduling Process Interaction models Distributed Systems

IntroductionLoad SharingLoad BalancingStatic vs. Dynamic

Page 4: Dynamic Load Sharing and Balancing Sig Freund. Outline Introduction Distributed vs. Traditional scheduling Process Interaction models Distributed Systems

Distributed vs. Traditional scheduling differences

Communication overhead is non-negligible

Effects of underlying hardware cannot be ignored

Dynamic behavior of system must be addressed

Page 5: Dynamic Load Sharing and Balancing Sig Freund. Outline Introduction Distributed vs. Traditional scheduling Process Interaction models Distributed Systems

Process Interaction modelsPrecedence process model

Page 6: Dynamic Load Sharing and Balancing Sig Freund. Outline Introduction Distributed vs. Traditional scheduling Process Interaction models Distributed Systems

Static Process Scheduling

Page 7: Dynamic Load Sharing and Balancing Sig Freund. Outline Introduction Distributed vs. Traditional scheduling Process Interaction models Distributed Systems

Precedence Process SchedulingExtended List SchedulingEarliest Task First

Page 8: Dynamic Load Sharing and Balancing Sig Freund. Outline Introduction Distributed vs. Traditional scheduling Process Interaction models Distributed Systems

Process Interaction modelsCommunication process model

Page 9: Dynamic Load Sharing and Balancing Sig Freund. Outline Introduction Distributed vs. Traditional scheduling Process Interaction models Distributed Systems

Process Interaction modelsDisjoint process model

Page 10: Dynamic Load Sharing and Balancing Sig Freund. Outline Introduction Distributed vs. Traditional scheduling Process Interaction models Distributed Systems

Distributed System DifficultiesAssumption of prior knowledge

not realisticUse disjoint process model since

we don’t know how they interact

Page 11: Dynamic Load Sharing and Balancing Sig Freund. Outline Introduction Distributed vs. Traditional scheduling Process Interaction models Distributed Systems

Simple Heuristic StrategyCentral Controller ProcessMaintain queue size of each

processorProcess arrive and depart

asynchronouslyAssignment made to processor

with shortest queueAt completion, processor sends

queue info

Page 12: Dynamic Load Sharing and Balancing Sig Freund. Outline Introduction Distributed vs. Traditional scheduling Process Interaction models Distributed Systems

Process MigrationMonitors processors assigned to

processesSchedule is initiated by process

departure instead of arrivalMoves processes to achieve

fairnessTwo common models

◦Sender-initiated algorithm◦Receiver-initiated algorithm

Page 13: Dynamic Load Sharing and Balancing Sig Freund. Outline Introduction Distributed vs. Traditional scheduling Process Interaction models Distributed Systems

Sender-initiated AlgorithmProcess wishing to off-load

initiatesMigrates process from heavily

loaded processor to lightly loadedRequires three decisions

◦Transfer policy◦Selection policy◦Location policy

Page 14: Dynamic Load Sharing and Balancing Sig Freund. Outline Introduction Distributed vs. Traditional scheduling Process Interaction models Distributed Systems

Location PolicyRandom selection

◦May cause chain effect of transfersProbe for candidate

◦Probe limit◦Multicast

Page 15: Dynamic Load Sharing and Balancing Sig Freund. Outline Introduction Distributed vs. Traditional scheduling Process Interaction models Distributed Systems

Receiver-initiated AlgorithmLightly loaded processor requests

more workSame three decisions

◦Transfer policy◦Location policy◦Selection policy

Benefits◦More stable◦Perform better

Page 16: Dynamic Load Sharing and Balancing Sig Freund. Outline Introduction Distributed vs. Traditional scheduling Process Interaction models Distributed Systems

Research StudiesDynamic load balancing in

distributed computer systems with star topology[1995]

Performance of dynamic load balancing algorithm on cluster of workstations and PCs[2002]

Page 17: Dynamic Load Sharing and Balancing Sig Freund. Outline Introduction Distributed vs. Traditional scheduling Process Interaction models Distributed Systems

Sender-initiated AlgorithmCompare load balancing policies

for effective dynamic load balancing on the basis of decision strategy for job transfer and destination decision.◦FT◦RT◦ALBCI◦ALBCII

[1995]

Page 18: Dynamic Load Sharing and Balancing Sig Freund. Outline Introduction Distributed vs. Traditional scheduling Process Interaction models Distributed Systems

Sender-initiated Algorithm

Page 19: Dynamic Load Sharing and Balancing Sig Freund. Outline Introduction Distributed vs. Traditional scheduling Process Interaction models Distributed Systems

Sender-initiated Algorithm

Page 20: Dynamic Load Sharing and Balancing Sig Freund. Outline Introduction Distributed vs. Traditional scheduling Process Interaction models Distributed Systems

Hybrid Load Balancing AlgorithmCompare load balancing scheme

for parallel depth first search on two systems.◦6 Sun Workstations running Solaris◦10 PC’s running Linux

Round-robin work sharingCompletely distributed system

[2002]

Page 21: Dynamic Load Sharing and Balancing Sig Freund. Outline Introduction Distributed vs. Traditional scheduling Process Interaction models Distributed Systems

Hybrid Load Balancing Algorithm

Page 22: Dynamic Load Sharing and Balancing Sig Freund. Outline Introduction Distributed vs. Traditional scheduling Process Interaction models Distributed Systems

Hybrid Load Balancing Algorithm

Page 23: Dynamic Load Sharing and Balancing Sig Freund. Outline Introduction Distributed vs. Traditional scheduling Process Interaction models Distributed Systems

Current ChallengesHigh reliance on central nodeHigh load systems require most

communication resourcesHeterogeneous systems greatly

complicate load balancing

Page 24: Dynamic Load Sharing and Balancing Sig Freund. Outline Introduction Distributed vs. Traditional scheduling Process Interaction models Distributed Systems

Future System[2008]Board of Directors

◦Small group of controlling nodes◦Number is dynamic◦Capable of splitting or combining◦Maintain shared historical data for

better initial process assignmentWorker nodes

◦Specialized functions◦Reconfigurable (Time slice/Com

polling)

Page 25: Dynamic Load Sharing and Balancing Sig Freund. Outline Introduction Distributed vs. Traditional scheduling Process Interaction models Distributed Systems

References 1.Randy Chow and Theodore Johnson (1997),DISTRIBUTED

OPERATING SYSTEMS AND ALGORITHMS 2. Xinda, M. I. (2002). PERFORMANCE OF LOAD

BALANCING ALGORITHM ON CLUSTER OF WORKSTATIONA AND PCS. Algorithms and Architectures for Parallel Processing, 2002. Proceedings. Fifth International Conference on , (pp. 44-47).

3. Chong-Gun, L. K.-S. (1995). Dynamic load balancing in distributed computer systems with star topology. Distributed Computing Systems, 1995., Proceedings of the Fifth IEEE Computer Society Workshop on Future Trends of , (pp. 514-517).

4. Abraham Silberschatz, Peter Galvin, and Greg Gagne (2005) OPERATING SYSTEM CONCEPTS

5. Sig Freund (2008) FUTURE DISTRIBUTED OPERATING SYSTEM CONCEPT

Page 26: Dynamic Load Sharing and Balancing Sig Freund. Outline Introduction Distributed vs. Traditional scheduling Process Interaction models Distributed Systems

Questions?