180 likes | 626 Views
Comparison between Suzuki Kasami’s and Raymond’s Tree Algorithm. -Sagar Panchariya. Introduction. Token Based Mutual Exclusion Algorithms A unique token is shared among all sites. A site is allowed to enter critical section if it possesses the token . Types of Token based algorithm:
E N D
Comparison between Suzuki Kasami’s and Raymond’s Tree Algorithm -Sagar Panchariya
Introduction • Token Based Mutual Exclusion Algorithms A unique token is shared among all sites. A site is allowed to enter critical section if it possesses the token. Types of Token based algorithm: • Broad Cast • Non BroadCast
Suzuki Kasami’s Algorithm • If a site needs to enter into critical section and if does not have a token it broad cast request to all the other site. • On receiving request if a site has token if the token is idle, i.e. site is not executing critical section it sends the PRIVILEDGE message containing the token the requesting site. • Each site contains a requesting site array R[requesting sequences]. Token maintains LN array[executed sequences] and token queue
Raymond’sTreeAlgorithm • Site does not broad cast it sends a request along the directed edge to its holder. • Site can send request along the directed edge only once. Every site maintains a request array of Processes requesting CS. • Token is released when the token is idle with the process and send with a PRIVILEDGE message along the edge. • If the sites id is top of its request Q then the site can enter critical section.
Performance Parameters for Mutual Exclusion Algorithm • Number of messages per CS entry • Synchronization delay: Time required when one site leaves CS and another enter CS. • Response Time: Is the time interval a site waits its CS execution to be over after request has been sent. • Throughput=1/(sd+E), where sd is average synchronization delay, E is average CS execution time
Parameters I kept as fixed while measurements: • Number of CS executions:100 • Message delay:1-9 • CS execution time:1-9 Parameters I varied: • Number of nodes 30,50,100 • load (number of process simultaneously requesting CS). 1p,1/2p,full load.
Raymond’s Staright-Line For a straight line when all the nodes are requesting simultaneously, for execution of all the critical section the number of messages required is 2N However if few number of nodes are requesting at different states the number of messages vary depending on the location of requesting nodes in the chain. For half load conditions it is like reducing load due to the random selector used for selecting requesting process.
Raymond’s Star For Full load condition 101 nodes require approx 400 messages for half load and other nodes testing like 51,31 this varies because of the setup and the random nature of selector. This goes for all the other tree topologies.
Conclusion • In Raymond's Tree algorithm under full load the number of messages exchanged per critical section is approximately 4. • In Suzuki Kasami’s Algorithm the number of messages requesting critical section linearly increases the number of messages. • Synchronization delay and throughput are dependent on the average executes critical section and average message delay
Future work • More research has to be done on Raymond's Tree topologies and their behavior around half load condition to find out the ideal topology.