performance of fair distributed mutual exclusion algorithms kandarp jani ajay d. kshemkalyani...
Post on 24-Feb-2016
46 Views
Preview:
DESCRIPTION
TRANSCRIPT
Performance of Fair Distributed Mutual Exclusion Algorithms
Kandarp Jani Ajay D. Kshemkalyani
University of Illinois at Chicago
Presentation Plan● Introduction to fair distributed mutual exclusion● Previous fair algorithms
1. Lamport ‘78: 3(n-1) msgs/CS2. Ricart-Agrawala (RA) ‘81: 2(n-1) msgs/CS3. Lodha-Kshemkalyani (LK) TPDS‘00: [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
Model and Metrics● Asynchronous distributed message-passing
system– d: time for a message hop
● Metrics for mutual exclusion algorithms1. number of messages/CS2. response time: Ω(2d+css)3. synchronization delay: Ω(d)4. waiting time: Ω(2d)5. throughput: 1/ response time6. fairness7.message size: O(1)
● Single request outstanding at a time
Relating CSS, λ, NCSS, wait time
Fair Mutual Exclusion
• Popular definition of fairness: requests must be answered in the order of their causality-based scalar clock values– If clk(Req1) < 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
Ricart-Agrawala Algorithm (1983)
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
LK Algorithm (concurrency set)
Message overhead: 2n - |Cset| msgs/CS• (n-1) REQUEST messages• n - |Cset| REPLY messages• 1 FLUSH message
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 i’s request in its LRQ ● i remembers j’s request in its LRQ● After j finishes CS, i will eventually get logical
permission from j via a chain of REPLY and FLUSH messages
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
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
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
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
Impact of λ on Msg. Ovhd (Expt 1, n=10)
Impact of λ on Msg. Ovhd (Expt 1, n=20)
Impact of λ on Msg. Ovhd (Expt 1, n=30)
Impact of λ on Msg. Ovhd (Expt 1, n=40)
Impact of n on Msg. Ovhd (Expt 2, CSS=0.1 microsec)
Impact of n on Msg. Ovhd (Expt 2, CSS=1 microsec)
Impact of n on Msg. Ovhd (Expt 2, CSS=0.1 ms)
Impact of n on Msg. Ovhd (Expt 2, CSS=1 ms)
Impact of n on Wait Time (Expt 3, CSS=1 microsec)
Impact of n on Wait Time (Expt 3, CSS=0.1 microsec)
Conclusions● LK is the best known fair mutex algorithm● LK outperforms Ricart-Agrawala i.t.o.
– Number of messages/CS– Waiting time/CSwithout compromising message size or any
other metric● Studied behaviour of LK using
simulations under a wide range of conditions
top related