performance of fair distributed mutual exclusion algorithms kandarp jani ajay d. kshemkalyani...

Post on 24-Feb-2016

46 Views

Category:

Documents

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

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 Lamport ‘78: 3(n-1) msgs/CS - PowerPoint PPT Presentation

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