an efficient decentralized algorithm for the distributed trigger counting problem (dtcp) venkatesan...

9
An Efficient Decentralized Algorithm for the Distributed Trigger Counting Problem (DTCP) Venkatesan Chakravarthy, IBM India Research Lab Anamitra R. Choudhury, IBM India Research Lab Vijay K. Garg, University of Texas at Austin Yogish Sabharwal, IBM India Research Lab Disc 2010

Upload: wilfred-rich

Post on 04-Jan-2016

212 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: An Efficient Decentralized Algorithm for the Distributed Trigger Counting Problem (DTCP) Venkatesan Chakravarthy, IBM India Research Lab Anamitra R. Choudhury,

An Efficient Decentralized Algorithm for the Distributed Trigger Counting

Problem (DTCP)

Venkatesan Chakravarthy, IBM India Research Lab Anamitra R. Choudhury, IBM India Research Lab Vijay K. Garg, University of Texas at AustinYogish Sabharwal, IBM India Research Lab

Disc 2010

Page 2: An Efficient Decentralized Algorithm for the Distributed Trigger Counting Problem (DTCP) Venkatesan Chakravarthy, IBM India Research Lab Anamitra R. Choudhury,

Distributed Trigger Counting Problem (DTCP)

Distributed system with n processors Each processor receives some triggers from an external

source Report to the user when the number of triggers received

equals w

.

Page 3: An Efficient Decentralized Algorithm for the Distributed Trigger Counting Problem (DTCP) Venkatesan Chakravarthy, IBM India Research Lab Anamitra R. Choudhury,

Applications of DTCP

Distributed monitoring traffic volume : raise an alarm if #vehicles on a highway

exceeds some threshold wildlife behavior: #sightings of a particular species in a

wildlife region exceeds a value.

Global Snapshots: the distributed system must determine if all in-transit

messages have been received to declare snapshot valid. This problem reduces to DTCP [Garg, Garg, Sabharwal 2006]

.

Page 4: An Efficient Decentralized Algorithm for the Distributed Trigger Counting Problem (DTCP) Venkatesan Chakravarthy, IBM India Research Lab Anamitra R. Choudhury,

Assumptions:

complete graph model, i.e., any processor can communicate with any other processor

asynchronous model of computation and messages. reliable message delivery and no faults in the processors.

Page 5: An Efficient Decentralized Algorithm for the Distributed Trigger Counting Problem (DTCP) Venkatesan Chakravarthy, IBM India Research Lab Anamitra R. Choudhury,

Objectives of the DTC Algorithm:

Low message complexity Low MaxLoad, i.e., the maximum number of

messages received by any processor in the system.

Page 6: An Efficient Decentralized Algorithm for the Distributed Trigger Counting Problem (DTCP) Venkatesan Chakravarthy, IBM India Research Lab Anamitra R. Choudhury,

Main Result:

LayeredRand, a decentralized randomized algorithm.

Theorem: For any trigger pattern, the message complexity of the LayeredRand algorithm is O(n log n log w). Also, there exists constants c,d > 1 such that

Pr[MaxLoad > c log n log w] < 1/nd

Algorithm Message Complexity

MaxLoad

Centralized [Garg et al]

O(n log w) O(n log w)

LayeredRand O(n log n log w) O(log n log w)

Open O(n log w) O(log n log w)

Page 7: An Efficient Decentralized Algorithm for the Distributed Trigger Counting Problem (DTCP) Venkatesan Chakravarthy, IBM India Research Lab Anamitra R. Choudhury,

LayeredRand Algorithm n = (2L -1) processors

arranged in L layers

lth layer has 2l processors, l=0 to L-1

)1log(24 n

wl

l

Algorithm proceeds in multiple rounds. w’: initial value of a round (number of triggers yet to be

received) Threshold for lth layer defined as

C(x): sum of triggers received by x and some processors in layers below.

Page 8: An Efficient Decentralized Algorithm for the Distributed Trigger Counting Problem (DTCP) Venkatesan Chakravarthy, IBM India Research Lab Anamitra R. Choudhury,

LayeredRand Algorithm (Contd.)

For non-root processor x at layer l If a trigger is received: C(x)++ ; If C(x)>= τ(l)

pick a processor y from level l-1 at random and send a coin to y. C(x) := C(x) - τ(l);

If a coin is received from level l+1: C(x) :=C(x)+ τ(l+1).

Root r maintains C(r) just like others. If C(r) > , initiate end-of-round procedure

gets total number of triggers received in this round broadcasts new value of w’ for next round.

2

w

Page 9: An Efficient Decentralized Algorithm for the Distributed Trigger Counting Problem (DTCP) Venkatesan Chakravarthy, IBM India Research Lab Anamitra R. Choudhury,

Example

System does not stall in the middle of a round, when all the triggers have been delivered.

thresholds => message complexity to O(n log n log w) Random selection of processors for sending coins

bounds the MaxLoad to O(log n log w)

2

1 1

11 1

w’ = 96

τ(1) = 4

τ(2) = 2

2

2 2

351

6

3

45

1 1

4

49 End of round w’ for next round

= 96- 53 = 43