120 likes | 361 Views
Message Complexity Analysis of Shavit-Francez Termination Detection Algorithm. By:- Rizwan Malik For Advanced OS Course 2007 Instructor: Dr. Mikhail Nesterenko. Overview. Introduction. Objective. Enviornment. Observations. Results. Coding Logic. Conclusion & Future Work. References.
E N D
Message Complexity Analysis of Shavit-Francez Termination Detection Algorithm By:- Rizwan Malik For Advanced OS Course 2007 Instructor: Dr. Mikhail Nesterenko
Overview • Introduction. • Objective. • Enviornment. • Observations. • Results. • Coding Logic. • Conclusion & Future Work. • References.
Introduction • Shavit-Francez Algorithm is used for Explicit Termination of De-centralized Distributed Systems(Systems with Multiple Initiators). • Every initiator maintains its own computation tree and when its own computation tree collapses it may participate in the computation tree of other initiators. • All processes participate in a Wave to detect the the termination of the Computation.
Objective • To analyze the message complexity of Shavit-Francez Algorithm. • To determine how to reduce the message complexity by analyzing different Waves.
Enviornment • Randomly Generated Trees were used for this project. • The Basic Computation was generated randomly. • Message Queue delays were introduced. • For the Wave, Echo and Tree algorithm were used. • Each data point value for the graph is based on an average of 10 values.
Observations • For a Basic computation with a Message complexity of M, the algorithm further introduces an increase of M(signals introduced by S-F Algo) + W(tokens generated by the Wave)+A(Stop messages sent by the Announce routine) messages. • The Shavit-Francez Algorithm always runs with worst case complexity. • Selection of the Wave Algorithm impacts the overall message complexity.
Results • The SF Algorithm with tree based wave has better message complexity than Echo based Wave. • Message Complexity – Echo=2E,Tree=N,Announce=2E.
Results(Continued) Since decide event takes place at all processes in a Tree based wave, if we halt every process after it decides, we can achieve a better message complexity for the algorithm.However, this observation is limited to tree graphs.
Result(Continued..) Fig1 Fig1– Data for Graph 1 Mcomplexity for Tree=N.Fig2- Mcomplexity = 2N-2=2E(for trees). Fig2
Coding Logic • Randomly Generated Computation:- • One message sent/received at a time. • Leaves are initiators. • A process can, at the maximum, send 5 messages. • Queue Delay:- • Delay simulated by Placing the message at index generated randomly between values 0 and Queue length. • Random Trees:- • Matrix(Double indexed array) of size NxN --- N is a user input value. • Value of pair(I,J)=1 denotes the presence of an Edge between I & J. • Recursively checks for cycles before adding an Edge to the tree. • Probability of an Node joining the tree is 50%.
Conclusion & Future Work • Conclusion:- • The Shavit-Francez component of the Algorithm always runs with worst-case message complexity i.e. it always generates number of messages equal to number of messages generated by the Basic algorithm. • The choice of wave algorithm to be run can effectively reduce the message complexity of the Algorithm as a whole. • For Tree networks the wave with best message complexity is Tree Algorithm based wave. • Future Work:- • Perform the same analysis on Arbitrary Graphs. • Find the optimal wave for different graph types. • To work towards genralize the technique of converting algorithm that work on diffusing Algorithms to those that work on non-diffusing Algorithms as suggested by N. Shavit, N. Francez in their paper titled “A New Approach to Detection of Locally Indicative Stability“.
References • Class notes for Advances Operating Systems 2007 by Dr. Mikhail Nesterenko. • Introduction to Distributed Algorithms By Gerard Tel. • Nir Shavit, Nissim Francez: A New Approach to Detection of Locally Indicative Stability.