Sorting on Skip Chains Ajoy K. Datta, Lawrence L. Larmore, and Stéphane Devismes.

Slides:



Advertisements
Similar presentations
CS 603 Process Synchronization: The Colored Ticket Algorithm February 13, 2002.
Advertisements

Stefan Schmid & Christian Scheideler Dept. of Computer Science
Chapter 7 - Local Stabilization1 Chapter 7: roadmap 7.1 Super stabilization 7.2 Self-Stabilizing Fault-Containing Algorithms 7.3 Error-Detection Codes.
Efficiency of Algorithms
Snap-Stabilization in Message-Passing Systems Sylvie Delaët (LRI) Stéphane Devismes (CNRS, LRI) Mikhail Nesterenko (Kent State University) Sébastien Tixeuil.
Self Stabilizing Algorithms for Topology Management Presentation: Deniz Çokuslu.
Self-Stabilization in Distributed Systems Barath Raghavan Vikas Motwani Debashis Panigrahi.
Fast Leader (Full) Recovery despite Dynamic Faults Ajoy K. Datta Stéphane Devismes Lawrence L. Larmore Sébastien Tixeuil.
CSCE 668 DISTRIBUTED ALGORITHMS AND SYSTEMS Fall 2011 Prof. Jennifer Welch CSCE 668 Self Stabilization 1.
Introduction to Self-Stabilization Stéphane Devismes.
From Self- to Snap- Stabilization Alain Cournier, Stéphane Devismes, and Vincent Villain SSS’2006, November 17-19, Dallas (USA)
Self-Stabilization: An approach for Fault-Tolerance in Distributed Systems Stéphane Devismes 16/12/2013MAROC'2013.
CPSC 668Set 1: Introduction1 CPSC 668 Distributed Algorithms and Systems Fall 2006 Prof. Jennifer Welch.
CPSC 668Set 3: Leader Election in Rings1 CPSC 668 Distributed Algorithms and Systems Spring 2008 Prof. Jennifer Welch.
CPSC 668Set 9: Fault Tolerant Consensus1 CPSC 668 Distributed Algorithms and Systems Fall 2006 Prof. Jennifer Welch.
CPSC 668Set 9: Fault Tolerant Consensus1 CPSC 668 Distributed Algorithms and Systems Spring 2008 Prof. Jennifer Welch.
LSRP: Local Stabilization in Shortest Path Routing Hongwei Zhang and Anish Arora Presented by Aviv Zohar.
CPSC 668Self Stabilization1 CPSC 668 Distributed Algorithms and Systems Spring 2008 Prof. Jennifer Welch.
LSRP: Local Stabilization in Shortest Path Routing Anish Arora Hongwei Zhang.
CS294, YelickSelf Stabilizing, p1 CS Self-Stabilizing Systems
Outline Max Flow Algorithm Model of Computation Proposed Algorithm Self Stabilization Contribution 1 A self-stabilizing algorithm for the maximum flow.
Performance Comparison of Existing Leader Election Algorithms for Dynamic Networks Mobile Ad Hoc (Dynamic) Networks: Collection of potentially mobile computing.
Self-Stabilization An Introduction Aly Farahat Ph.D. Student Automatic Software Design Lab Computer Science Department Michigan Technological University.
On Probabilistic Snap-Stabilization Karine Altisen Stéphane Devismes University of Grenoble.
Selected topics in distributed computing Shmuel Zaks
Andreas Larsson, Philippas Tsigas SIROCCO Self-stabilizing (k,r)-Clustering in Clock Rate-limited Systems.
On Probabilistic Snap-Stabilization Karine Altisen Stéphane Devismes University of Grenoble.
Snap-Stabilizing PIF and Useless Computations Alain Cournier, Stéphane Devismes, and Vincent Villain ICPADS’2006, July , Minneapolis (USA)
Franck Petit INRIA, LIP Lab. Univ. / ENS of Lyon France Optimal Probabilistic Ring Exploration by Semi-Synchronous Oblivious Robots Joint work with Stéphane.
Brief Announcement: Sorting on Skip Chains Ajoy K. Datta, Lawrence L. Larmore, and Stéphane Devismes.
1 Maximal Independent Set. 2 Independent Set (IS): In a graph G=(V,E), |V|=n, |E|=m, any set of nodes that are not adjacent.
Energy-Efficient Shortest Path Self-Stabilizing Multicast Protocol for Mobile Ad Hoc Networks Ganesh Sridharan
The Complexity of Distributed Algorithms. Common measures Space complexity How much space is needed per process to run an algorithm? (measured in terms.
A Self-Stabilizing O(n)-Round k-Clustering Algorithm Stéphane Devismes, VERIMAG.
Autonomic distributed systems. 2 Think about this Human population x10 9 computer population.
Self-Stabilizing K-out-of-L Exclusion on Tree Networks Stéphane Devismes, VERIMAG Joint work with: – Ajoy K. Datta (Univ. Of Nevada) – Florian Horn (LIAFA)
Self-Stabilizing K-out-of-L Exclusion on Tree Networks Stéphane Devismes, VERIMAG Joint work with: – Ajoy K. Datta (Univ. Of Nevada) – Florian Horn (LIAFA)
Weak vs. Self vs. Probabilistic Stabilization Stéphane Devismes (CNRS, LRI, France) Sébastien Tixeuil (LIP6-CNRS & INRIA, France) Masafumi Yamashita (Kyushu.
Fault Management in Mobile Ad-Hoc Networks by Tridib Mukherjee.
Self-stabilization. What is Self-stabilization? Technique for spontaneous healing after transient failure or perturbation. Non-masking tolerance (Forward.
Snap-Stabilization in Message-Passing Systems Sylvie Delaët (LRI) Stéphane Devismes (CNRS, LRI) Mikhail Nesterenko (Kent State University) Sébastien Tixeuil.
CS 542: Topics in Distributed Systems Self-Stabilization.
Self-stabilizing energy-efficient multicast for MANETs.
CSCE 668 DISTRIBUTED ALGORITHMS AND SYSTEMS Spring 2014 Prof. Jennifer Welch CSCE 668 Set 3: Leader Election in Rings 1.
Self-stabilization. Technique for spontaneous healing after transient failure or perturbation. Non-masking tolerance (Forward error recovery). Guarantees.
Self-Stabilizing Algorithm with Safe Convergence building an (f,g)-Alliance Fabienne Carrier Ajoy K. Datta Stéphane Devismes Lawrence L. Larmore Yvan Rivierre.
Hwajung Lee.  Technique for spontaneous healing.  Forward error recovery.  Guarantees eventual safety following failures. Feasibility demonstrated.
DISTRIBUTED ALGORITHMS Spring 2014 Prof. Jennifer Welch Set 9: Fault Tolerant Consensus 1.
Fault tolerance and related issues in distributed computing Shmuel Zaks GSSI - Feb
Snap-Stabilization in Message-Passing Systems Sylvie Delaët (LRI) Stéphane Devismes (CNRS, LRI) Mikhail Nesterenko (Kent State University) Sébastien Tixeuil.
Superstabilizing Protocols for Dynamic Distributed Systems Authors: Shlomi Dolev, Ted Herman Presented by: Vikas Motwani CSE 291: Wireless Sensor Networks.
ITEC452 Distributed Computing Lecture 15 Self-stabilization Hwajung Lee.
Self-stabilizing (f,g)-Alliances with Safe Convergence Fabienne Carrier Ajoy K. Datta Stéphane Devismes Lawrence L. Larmore Yvan Rivierre.
Snap-Stabilizing Depth-First Search on Arbitrary Networks Alain Cournier, Stéphane Devismes, Franck Petit, and Vincent Villain OPODIS 2004, December
Self-stabilizing Overlay Networks Sukumar Ghosh University of Iowa Work in progress. Jointly with Andrew Berns and Sriram Pemmaraju (Talk at Michigan Technological.
Competitive Self-Stabilizing k-Clustering
Model and complexity Many measures Space complexity Time complexity
第1部: 自己安定の緩和 すてふぁん どぅゔぃむ ポスドク パリ第11大学 LRI CNRS あどばいざ: せばすちゃ てぃくそい
DATA STRUCTURES AND OBJECT ORIENTED PROGRAMMING IN C++
New Variants of Self-Stabilization
CSCE 668 DISTRIBUTED ALGORITHMS AND SYSTEMS
Fault-tolerant Consensus in Directed Networks Lewis Tseng Boston College Oct. 13, 2017 (joint work with Nitin H. Vaidya)
CS60002: Distributed Systems
A Snap-Stabilizing DFS with a Lower Space Requirement
Robust Stabilizing Leader Election
CSCE 668 DISTRIBUTED ALGORITHMS AND SYSTEMS
Introduction to Self-Stabilization
Heaps By JJ Shepherd.
Snap-Stabilization in Message-Passing Systems
Presentation transcript:

Sorting on Skip Chains Ajoy K. Datta, Lawrence L. Larmore, and Stéphane Devismes

Skip Chain December 2, 2011PDAA'2011, Osaka Left Right Major nodes Relay nodes

Skip Chain Sorting December 2, 2011PDAA'2011, Osaka 3 6 2

Skip Chain Sorting December 2, 2011PDAA'2011, Osaka

Contribution Skip Chain Sorting Algorithm – Self-stabilizing – Silent – Locally shared memory model Unfair demon O(b) space, b = number of bits to encode a value O(md) rounds – m : number of major nodes – d : maximum number of relay between two major nodes – md = O(n) if the spacing between major processes is roughtly equal December 2, 2011PDAA'2011, Osaka

December 2, 2011PDAA'2011, Osaka Self-Stabilization: Closure + Convergence

December 2, 2011PDAA'2011, Osaka Self-Stabilization: Closure + Convergence States of the System

December 2, 2011PDAA'2011, Osaka Self-Stabilization: Closure + Convergence States of the System Illegitimate States Legitimate States

December 2, 2011PDAA'2011, Osaka Self-Stabilization: Closure + Convergence States of the System Closure

December 2, 2011PDAA'2011, Osaka Self-Stabilization: Closure + Convergence States of the System Closure

December 2, 2011PDAA'2011, Osaka Self-Stabilization: Closure + Convergence States of the System Closure

December 2, 2011PDAA'2011, Osaka Self-Stabilization: Closure + Convergence States of the System Convergence

December 2, 2011PDAA'2011, Osaka Self-Stabilization: Closure + Convergence States of the System Convergence

December 2, 2011PDAA'2011, Osaka Self-Stabilization: Closure + Convergence States of the System Convergence

December 2, 2011PDAA'2011, Osaka Tolerate Transient Faults E.g., any finite number of memory or message corruptions, or topological changes

December 2, 2011PDAA'2011, Osaka Tolerate Transient Faults E.g., any finite number of memory or message corruptions, or topological changes

Silence “The system eventually reaches a terminal configuration where the values of the variables are fixed” [Dolev et al, 1996] December 2, 2011PDAA'2011, Osaka

Related Work New problem A generalization of the sorting problem – Oriented chain [Bein et al, 2008] Self-stabilizing O(n) round, O(b) space December 2, 2011PDAA'2011, Osaka

Overview December 2, 2011PDAA'2011, Osaka

Overview Idea : distributed bubble sort December 2, 2011PDAA'2011, Osaka

Overview Idea : distributed bubble sort December 2, 2011PDAA'2011, Osaka Arbitrary Configurations

Overview Idea : distributed bubble sort December 2, 2011PDAA'2011, Osaka Arbitrary Configurations Normal Configurations Error Correction

Overview Idea : distributed bubble sort December 2, 2011PDAA'2011, Osaka Arbitrary Configurations Normal Configurations Legitimate Configurations Error Correction Sorting

Data Structure December 2, 2011PDAA'2011, Osaka 3 6 2

Swap December 2, 2011PDAA'2011, Osaka 6 2

Swap December 2, 2011PDAA'2011, Osaka

Swap December 2, 2011PDAA'2011, Osaka

Swap December 2, 2011PDAA'2011, Osaka Synchronization between swaps : 4 colors

Colors A value moves to the left at the crest of wave 0 A value moves to the right at the crest of wave 1 Colors 2 and 3 to avoid ambiguïty and to synchronize Color E: error color December 2, 2011PDAA'2011, Osaka

Example December 2, 2011PDAA'2011, Osaka X YZ Compare and swap V(y)V(x)

Example December 2, 2011PDAA'2011, Osaka X YZ V(y)’V(x)’ , V(x)’1, V(y)’

Example December 2, 2011PDAA'2011, Osaka X YZ V(y)’V(x)’ Compare and swap V(y)’V(u) V(x)’

Example December 2, 2011PDAA'2011, Osaka X YZ V(y)’V(x)’ V(y)’V(u)’ V(x)’’ 2 1, V(x)’’

Example December 2, 2011PDAA'2011, Osaka X YZ V(y)’V(x)’’ V(y)’V(u)’ V(x)’’

Example December 2, 2011PDAA'2011, Osaka X YZ V(y)’V(x)’’ V(y)’V(u)’ V(x)’’ 2 3

Example December 2, 2011PDAA'2011, Osaka X YZ V(y)’V(x)’’ V(y)’V(u)’ V(x)’’ 0, V(z) 1, V(u)’’

Example December 2, 2011PDAA'2011, Osaka X YZ V(y)’V(x)’’ V(y)’ V(z)V(u)’’ V(x)’’ Compare and swap

Example December 2, 2011PDAA'2011, Osaka X YZ V(y)’V(x)’’ V(y)’’ V(z)’V(u)’’ V(x)’’ 0, V(y)’’ 3

Example December 2, 2011PDAA'2011, Osaka X YZ V(y)’’V(x)’’ V(y)’’ V(z)’V(u)’’ V(x)’’ 3 2

Example December 2, 2011PDAA'2011, Osaka X YZ V(y)’’V(x)’’ V(y)’’ V(z)’V(u)’’ V(x)’’

Error correction December 2, 2011PDAA'2011, Osaka

Error correction December 2, 2011PDAA'2011, Osaka

Error correction December 2, 2011PDAA'2011, Osaka

Error correction December 2, 2011PDAA'2011, Osaka

Error correction December 2, 2011PDAA'2011, Osaka

Uncorrect swap December 2, 2011PDAA'2011, Osaka X YZ Compare and swap bc a c c abbbb

Uncorrect swap December 2, 2011PDAA'2011, Osaka X YZ , b1, c Bad swap cb a c c abbbb

Uncorrect swap December 2, 2011PDAA'2011, Osaka X YZ , b1, c cb a c c abbbb a Error correction

Uncorrect swap December 2, 2011PDAA'2011, Osaka X YZ , c cb a a a accbb a Error correction

Uncorrect swap December 2, 2011PDAA'2011, Osaka X YZ , c cb a a a accbb a Error correction To undo the swap, we should remember that we do a swap! Status : S or U S

Uncorrect swap December 2, 2011PDAA'2011, Osaka X YZ , c ba a a a accbb b Error correction To undo the swap, we should remember that we do a swap! Status : S or U S

Silence December 2, 2011PDAA'2011, Osaka An additional Boolean variable : Done Done => Stop initiating wave color

Silence December 2, 2011PDAA'2011, Osaka An additional Boolean variable : Done Done => Stop initiating wave color

Silence December 2, 2011PDAA'2011, Osaka An additional Boolean variable : Done Done => Stop initiating wave color ≤6 & Color=3 → Done<-True; Color<-0

Silence December 2, 2011PDAA'2011, Osaka Color=3 & R.color=0 & R.done → Done<-True; Color<-0 Value<-R.Value

Silence December 2, 2011PDAA'2011, Osaka Color=3 & R.color=0 & R.done & Value≤R.Value → Done<-True; Color<-0

Silence December 2, 2011PDAA'2011, Osaka At the end, for all node: - Color = 0 - Done = true No enabled action

Perspective Can we enhance the round complexity to O(n) rounds ? Step complexity ? December 2, 2011PDAA'2011, Osaka

Thank you December 2, 2011PDAA'2011, Osaka

Min-Max Search Tree December 2, 2011PDAA'2011, Osaka <= 4 4 min max