maekawa: quorum size research

26
Maekawa: Quorum Size Research Jeremy Miller Kent State University November 28 th , 2011 1

Upload: honey

Post on 07-Jan-2016

58 views

Category:

Documents


0 download

DESCRIPTION

Maekawa: Quorum Size Research. Jeremy Miller Kent State University November 28 th , 2011. Outline. Overview of Maekawa Quorum Creation Experimental Setup Results Future Work Conclusions. Outline. Overview of Maekawa Quorum Creation Experimental Setup Results Future Work - PowerPoint PPT Presentation

TRANSCRIPT

Maekawa: Quorum Size Research

Jeremy MillerKent State UniversityNovember 28th, 2011

1

Outline

•Overview of Maekawa•Quorum Creation•Experimental Setup•Results•Future Work•Conclusions

2

Outline

•Overview of Maekawa•Quorum Creation•Experimental Setup•Results•Future Work•Conclusions

3

Overview of Maekawa•Permission based DMX solution•Each process has a quorum•Each process only has one permission to give•Process is granted access to the critical

section if it receives permission from its entire quorum

•6 Message types:▫Request, Permission, Release

Message Complexity: 3√N▫Failure, Inquire, Yield (Deadlock Messages)

Message Complexity: 6√N

4

Outline

•Overview of Maekawa•Quorum Creation•Experimental Setup•Results•Future Work•Conclusions

5

Billiards Algorithm

1st Path2nd Path 3rd Path

1st Path 2nd Path3rd Path

Where to start

Where to start

Quorums:Quorum[0]= { }Quorum[1]= { }Quorum[2]= { }Quorum[3]= { }

6

Billiards Algorithm

1st Path2nd Path 3rd Path

1st Path 2nd Path3rd Path

Where to start

Where to start

Quorums:Quorum[0]= {0, 1, 2}Quorum[1]= { }Quorum[2]= { }Quorum[3]= { }

7

Billiards Algorithm

1st Path2nd Path 3rd Path

1st Path 2nd Path3rd Path

Where to start

Where to start

Quorums:Quorum[0]= {0, 1, 2}Quorum[1]= {1, 2, 3}Quorum[2]= { }Quorum[3]= { }

8

Billiards Algorithm

1st Path2nd Path 3rd Path

1st Path 2nd Path3rd Path

Where to start

Where to start

Quorums:Quorum[0]= {0, 1, 2}Quorum[1]= {1, 2, 3}Quorum[2]= {0, 2, 3}Quorum[3]= { }

9

Billiards Algorithm

1st Path2nd Path 3rd Path

1st Path 2nd Path3rd Path

Where to start

Where to start

Quorums:Quorum[0]= {0, 1, 2}Quorum[1]= {1, 2, 3}Quorum[2]= {0, 2, 3}Quorum[3]= {0, 1, 3}

10

Non-Billiards Algorithm•Make a matrix

counting upwards

•Find the process

•Draw two lines, add all of the processes hit to the quorum.

0 1

2 3

Quorums:Quorum[0]= { }Quorum[1]= { }Quorum[2]= { }Quorum[3]= { }

11

Non-Billiards Algorithm•Make a matrix

counting upwards

•Find the process

•Draw two lines, add all of the processes hit to the quorum.

0 1

2 3

Quorums:Quorum[0]= {0, 1, 2}Quorum[1]= { }Quorum[2]= { }Quorum[3]= { }

12

Non-Billiards Algorithm•Make a matrix

counting upwards

•Find the process

•Draw two lines, add all of the processes hit to the quorum.

0 1

2 3

Quorums:Quorum[0]= {0, 1, 2}Quorum[1]= {0, 1, 3}Quorum[2]= { }Quorum[3]= { }

13

Non-Billiards Algorithm•Make a matrix

counting upwards

•Find the process

•Draw two lines, add all of the processes hit to the quorum.

0 1

2 3

Quorums:Quorum[0]= {0, 1, 2}Quorum[1]= {0, 1, 3}Quorum[2]= {0, 2, 3}Quorum[3]= { }

14

Non-Billiards Algorithm•Make a matrix

counting upwards

•Find the process

•Draw two lines, add all of the processes hit to the quorum.

0 1

2 3

Quorums:Quorum[0]= {0, 1, 2}Quorum[1]= {0, 1, 3}Quorum[2]= {0, 2, 3}Quorum[3]= {1, 2, 3}

15

Outline

•Overview of Maekawa•Quorum Creation•Experimental Setup•Results•Future Work•Conclusions

16

Billiards vs. Non-Billiards•Testing 2 parameters: Message Complexity and

Correctness in critical section entry.•Hypothesis: Billiards will have smaller message

complexity but a worse correctness in CS entry.•Methods:

▫Set up 2 fixed quorums for each type. Run increasingly large sample sizes of CS entry. Run each test 10 times and average the results.

▫Billiards: 24 Processes, 7 Quorum Size.▫Non-Billiards: 25 Processes, 9 Quorum Size

17

Outline

•Overview of Maekawa•Quorum Creation•Experimental Setup•Results•Future Work•Conclusions

18

Results

19

Results (Cont.)

20

Results (Cont.)

•On all tests done the correctness of CS entry was 100% for both Billiards and Non-Billiards

•Not once was there incorrect order in entry.

•Expected a wrong entry in the first 1-3 entries every once in a while.

21

Outline

•Overview of Maekawa•Quorum Creation•Experimental Setup•Results•Future Work•Conclusions

22

Future Work

•Test different sizes of quorums, not only 2 fixed sizes.

•Force the algorithms into out-of-order situations initially and see if there is any difference in correctness between the two algorithms.

23

Outline

•Overview of Maekawa•Quorum Creation•Experimental Setup•Results•Future Work•Conclusions

24

Conclusions

•Billiards algorithm is the all-around best algorithm for quorum creation

•Both algorithms level off in messages sent around 500 critical section entries

•No advantage to use anything other than billiards quorum creation

25

References

•Agrawal, D. "Billiard Quorums on the Grid." Information Processing Letters 64.1 (1997): 9-16. Print.

•Code Defense Link: Code Defense•Thank you.•Questions?

26