Performance of Fair Distributed Mutual Exclusion Algorithms - PowerPoint PPT Presentation

About This Presentation
Title:

Performance of Fair Distributed Mutual Exclusion Algorithms

Description:

Metrics for mutual exclusion algorithms. number of messages/CS. response time: O(2d css) ... without compromising message size or any other metric ... – PowerPoint PPT presentation

Number of Views:119
Avg rating:3.0/5.0
Slides: 25
Provided by: csU89
Learn more at: https://www.cs.uic.edu
Category:

less

Transcript and Presenter's Notes

Title: Performance of Fair Distributed Mutual Exclusion Algorithms


1
Performance of Fair Distributed Mutual Exclusion
Algorithms Kandarp Jani Ajay D.
Kshemkalyani University of Illinois at Chicago
2
Presentation Plan
  • Introduction to fair distributed mutual exclusion
  • Previous fair algorithms
  • Lamport 78 3(n-1) msgs/CS
  • Ricart-Agrawala (RA) 81 2(n-1) msgs/CS
  • Lodha-Kshemkalyani (LK) TPDS00 n, 2n-1
    msgs/CS
  • Simulation expts study improvement of LK over RA
  • Conclusion LK has fewer messages, lower
    waiting time, w/o compromising message size or
    other metrics

3
Model and Metrics
  • Asynchronous distributed message-passing system
  • d time for a message hop
  • Metrics for mutual exclusion algorithms
  • number of messages/CS
  • response time O(2dcss)
  • synchronization delay O(d)
  • waiting time O(2d)
  • throughput 1/ response time
  • fairness
  • message size O(1)
  • Single request outstanding at a time

4
Relating CSS, ?, NCSS, wait time
5
Fair Mutual Exclusion
  • Popular definition of fairness requests must be
    answered in the order of their causality-based
    scalar clock values
  • If clk(Req1) lt clk(Req2)
  • Req1 has higher priority
  • If clk(Req1) clk(Req2)
  • Use requestors PIDs as tie-breaker (i.e., define
    a lexicographic order)
  • Only Lamport, RA, and LK algorithms are fair

6
Ricart-Agrawala Algorithm (1983)
7
LK Algorithm (messages)
  • REQUEST, REPLY, FLUSH messages
  • REQUEST contains timestamp of request
  • REPLY, FLUSH contain timestamp of last completed
    CS access by sender of message
  • Local Request Queue (LRQ) at each process, LRQ
    tracks concurrent requests

8
LK Algorithm (concurrency set)
  • Message overhead 2n - Cset msgs/CS
  • (n-1) REQUEST messages
  • n - Cset REPLY messages
  • 1 FLUSH message

9
LK algorithm (REQUEST)
  • Multiple uses of REQUEST
  • to seek permission to enter CS
  • if requesting concurrently, the REQUEST acts as
    a REPLY from the lower priority requestor (i) to
    the higher priority requester (j)
  • j remembers is request in its LRQ
  • i remembers js request in its LRQ
  • After j finishes CS, i will eventually get
    logical permission from j via a chain of REPLY
    and FLUSH messages

10
LK algorithm (REPLY)
  • REPLY message has timestamp of last completed CS
    request of sender of REPLY
  • Multiple uses of REPLY
  • Sender gives individual permission
  • Sender gives collective permission on behalf of
    all processes with higher priority requests
  • It acts as multiple logical reply messages

11
LK algorithm (FLUSH)
  • FLUSH sent after exiting CS, to the concurrently
    requesting process with the next highest priority
  • FLUSH timestamped w/timestamp of just completed
    CS request of sender of FLUSH
  • Multiple uses of FLUSH
  • Sender gives individual permission
  • Sender gives collective permission on behalf of
    all processes with higher priority requests
  • It acts as multiple logical reply messages

12
Simulation Parameters (on OPNET)
  • Input parameters
  • Number of processes n (10-40)
  • Inter-request time exp. Distributed, mean ?
  • (0.1 ms to 10 s)
  • Critical Section Sitting time exp. distributed,
    mean CSS (0.1 microsec to 10 millisec)
  • Propagation delay D, implicitly modeled in CSS
  • Output parameters
  • Normalized message complexity M
  • Waiting time T

13
Experiments
  • Experiment 1
  • M f(?), for multiple settings of (n, CSS)
  • Experiment 2
  • M f(n), for multiple settings of (CSS, ?)
  • Experiment 3
  • T f(n), for multiple settings of (CSS, ?)
  • compared LK and RA algorithms

14
Impact of ? on Msg. Ovhd (Expt 1, n10)
15
Impact of ? on Msg. Ovhd (Expt 1, n20)
16
Impact of ? on Msg. Ovhd (Expt 1, n30)
17
Impact of ? on Msg. Ovhd (Expt 1, n40)
18
Impact of n on Msg. Ovhd (Expt 2, CSS0.1
microsec)
19
Impact of n on Msg. Ovhd (Expt 2, CSS1 microsec)
20
Impact of n on Msg. Ovhd (Expt 2, CSS0.1 ms)
21
Impact of n on Msg. Ovhd (Expt 2, CSS1 ms)
22
Impact of n on Wait Time (Expt 3, CSS1 microsec)
23
Impact of n on Wait Time (Expt 3, CSS0.1
microsec)
24
Conclusions
  • LK is the best known fair mutex algorithm
  • LK outperforms Ricart-Agrawala i.t.o.
  • Number of messages/CS
  • Waiting time/CS
  • without compromising message size or any other
    metric
  • Studied behaviour of LK using simulations under a
    wide range of conditions
Write a Comment
User Comments (0)
About PowerShow.com