the complexity of 1 coloring in congested clique
play

The Complexity of ( +1) Coloring in Congested Clique, Massively - PowerPoint PPT Presentation

The Complexity of ( +1) Coloring in Congested Clique, Massively Parallel Computation, and Centralized Local Computation Yi-Jun Chang Manuela Fischer Mohsen Ghaffari Jara Uitto Yufan Zheng ( +1) Coloring Easy in the sequential


  1. The Complexity of ( Δ +1) Coloring in Congested Clique, Massively Parallel Computation, and Centralized Local Computation Yi-Jun Chang Manuela Fischer Mohsen Ghaffari Jara Uitto Yufan Zheng

  2. ( Δ +1) Coloring • Easy in the sequential setting. • A simple sequential greedy algorithm in linear time and space. • What about the distributed setting?

  3. Two Types of Distributed Models • Type 1: computer network = input graph • LOCAL, CONGEST With locality • Type 2: computer network ≠ input graph • CONGESTED-CLIQUE, MPC Without locality

  4. Distributed Models Can only communicate with neighbors. • LOCAL: Unbounded message size. Locality Can only communicate with neighbors. • CONGEST: 𝑃(log 𝑜) -bit message size. Bandwidth constraint Other features: Synchronous rounds & unbounded local computation power

  5. Distributed Models Can only communicate with neighbors. • LOCAL: Unbounded message size. Locality Can only communicate with neighbors. • CONGEST: 𝑃(log 𝑜) -bit message size. Bandwidth Allow all-to-all communication. • Congested Clique: constraint 𝑃(log 𝑜) -bit message size.

  6. Distributed Models • Alternative definition of CONGESTED-CLIQUE: • In each round each processor can send and receive up to 𝑃(𝑜) messages of 𝑃(log 𝑜) bits. • Number of processors = 𝑜 . • Initially each processor knows the set of neighbors of a vertex. (in view of Lenzen’s routing)

  7. Distributed Models • Alternative definition of CONGESTED-CLIQUE: • In each round each processor can send and receive up to 𝑃(𝑜) messages of 𝑃(log 𝑜) bits. • Number of processors = 𝑜 . • Initially each processor knows the set of neighbors of a vertex. • MPC (Massively Parallel Computation) model: • A scalable variant of CONGESTED-CLIQUE. • Memory per processor = 𝑇 = 𝑜 𝜀 for some 𝜀 = Θ(1) . • Number of processors = ෨ 𝑃(𝑛 / 𝑇) . • Input graph is distributed arbitrarily (can be sorted in O(1) rounds).

  8. (Δ+1) -coloring in the LOCAL Model • (Rand.) 𝑃(log 𝑜) Luby (STOC’85) and Alon, Babai and Itai (JALG’86) • (Det.) 2 𝑃( log 𝑜) Panconesi , Srinivasan (JALG’96) + 2 𝑃( log log 𝑜) • (Rand.) 𝑃 log Δ Barenboim, Elkin, Pettie, Schneider (FOCS 2012) + 2 𝑃( log log 𝑜) = 𝑃 • (Rand.) 𝑃 Harris, Schneider, Su (STOC 2016) log Δ log 𝑜 • (Rand.) 𝑃 log ∗ Δ + 2 𝑃( log log 𝑜) = 2 𝑃( log log 𝑜) Chang , Li, Pettie (STOC 2018) Pre-shattering Post-shattering (There are many more!)

  9. (Δ+1) -coloring in the LOCAL Model • (Rand.) 𝑃(log 𝑜) Luby (STOC’85) and Alon, Babai and Itai (JALG’86) • (Det.) 2 𝑃( log 𝑜) Panconesi , Srinivasan (JALG’96) + 2 𝑃( log log 𝑜) • (Rand.) 𝑃 log Δ Barenboim, Elkin, Pettie, Schneider (FOCS 2012) + 2 𝑃( log log 𝑜) = 𝑃 • (Rand.) 𝑃 Harris, Schneider, Su (STOC 2016) log Δ log 𝑜 • (Rand.) 𝑃 log ∗ Δ + 2 𝑃( log log 𝑜) = 2 𝑃( log log 𝑜) Chang , Li, Pettie (STOC 2018) Pre-shattering Post-shattering (There are many more!) What about MPC / CONGESTED-CLIUQUE?

  10. (Δ+1) Coloring in MPC • “Sublinear Algorithms for (Δ+1) Vertex Coloring” by Sepehr Assadi, Yu Chen, Sanjeev Khanna [SODA 2019] • Sample 𝑃(log 𝑜) colors for each vertex independently and uniformly at random from the ∆ + 1 colors. • With high probability, the graph is colorable using the selected colors. • This leads to an 𝑃(1) -round MPC algorithm.

  11. (Δ+1) Coloring in MPC • “Sublinear Algorithms for (Δ+1) Vertex Coloring” by Sepehr Assadi, Yu Chen, Sanjeev Khanna [SODA 2019] • Sample 𝑃(log 𝑜) colors for each vertex independently and uniformly at random from the ∆ + 1 colors. • With high probability, the graph is colorable using the selected colors. • This leads to an 𝑃(1) -round MPC algorithm. Two issues: (i) costs polylogarithmic rounds in CONGESTED CLIQUE. (ii) memory per processor must be ෩ 𝛁(𝒐) . We will later see that our approach does not have these issues.

  12. Our Results • 𝑃(1) -round CONGESTED-CLIQUE algorithm. • 𝑃( log log 𝑜) -round MPC algorithm in the small memory regime. • Our approach: transformation from Chang-Li-Pettie algorithm for (Δ+1) - coloring in the LOCAL Model LOCAL MPC CONGEST CONGESTED-CLIQUE

  13. (Δ+1) Coloring in CONGESTED-CLIQUE How to implement this algorithm in CONGESTED-CLIQUE? Chang , Li, Pettie (STOC 2018) • 𝑃 log ∗ Δ + 2 𝑃( log log 𝑜) = 2 𝑃( log log 𝑜) Pre-shattering Post-shattering At this stage, the remaining graph has O(n) edges, so we can send them to one processor. This part can be implemented in CONGESTED-CLIQUE in 𝑃(1) rounds. For this part, some node has to receive messages of size 𝑃(Δ 2 ) , so a naïve simulation works only when Δ < 𝑜 .

  14. Prior works • 𝑃(log log 𝑜) rounds • Merav Parter – “(Delta+1) Coloring in the Congested Clique Model” ICALP 2018 • (the cost for reducing the general case to the Δ < 𝑜 case) • 𝑃(log ∗ Δ) rounds • Merav Parter & Hsin-Hao Su – “(Delta+1) -Coloring in O(log* Delta) Congested- Clique Rounds” DISC 2018 • (modify the internal details of the CLP coloring algorithm to increase the 𝑜 to Δ < 𝑜 5/8 ) threshold from Δ <

  15. Our Approach (high-deg case) • A simple algorithm that deals with the case Δ > log 5 𝑜 in 𝑃(1) rounds. • Decompose the vertex set and the color set randomly into ∆ parts: 𝐶 1 , 𝐶 2 , …, 𝐶 ∆ . • Each part has 𝑃(𝑜/ ∆) vertices and max-deg O( ∆) . • Each part is associated with O( ∆) colors. • We want to color each part with its associated colors. • But there will be a gap of ≈ ∆ 1/4 between max-degree and # colors.

  16. Our Approach (high-deg case) • We want to color each part with its associated colors. • But there will be a gap of ≈ ∆ 1/4 between max-degree and # colors. • Solution: adjust the probabilities to decrease the max-deg of each part 𝐶 1 , 𝐶 2 , …, 𝐶 ∆ by ≈ ∆ 1/4 , and this leads to a new part 𝑀 whose size is ≈ 𝑜/∆ 1/4 with max-deg ≈ ∆ 3/4 • Now each of 𝐶 1 , 𝐶 2 , …, 𝐶 ∆ is colorable with their colors. After coloring them, we can recurse on 𝑀 .

  17. Our Approach (high-deg case) • Recall: each of 𝐶 1 , 𝐶 2 , …, 𝐶 ∆ has 𝑃(𝑜/ ∆) vertices and max-deg O ∆ , so they have 𝑃(𝑜) edges. We can send each of them to a processor to construct the coloring locally. This takes 𝑃(1) rounds in CONGESTED-CLIQUE. • A simple calculation shows that when Δ > log 5 𝑜 , after 𝑃(1) depth of recursions, the size of 𝑀 also decreases to 𝑃(𝑜) edges. • This gives us an 𝑃(1) -round CONGESTED-CLIQUE algorithm.

  18. Our Approach (low-deg case) • How about the case Δ < log 5 𝑜 ? Recall: • 𝑃 log ∗ Δ + 2 𝑃( log log 𝑜) = 2 𝑃( log log 𝑜) Chang , Li, Pettie (STOC 2018) Pre-shattering Post-shattering At this stage, the remaining graph has O(n) edges, so we can send them to one processor. This part can be implemented in CONGESTED-CLIQUE in 𝑃(1) rounds. For this part, some node has to receive messages of size 𝑃(Δ 2 ) , so a naïve simulation works only when Δ < 𝑜 .

  19. Our Approach (low-deg case) • How about the case Δ < log 5 𝑜 ? Recall: • 𝑃 log ∗ Δ + 2 𝑃( log log 𝑜) = 2 𝑃( log log 𝑜) Chang , Li, Pettie (STOC 2018) Pre-shattering Post-shattering 𝑃 log ∗ Δ + 𝑃 1 <- Straightforward simulation 𝑃 log log ∗ Δ + 𝑃 1 <- Graph exponentiation After the 𝑗 -th round, each vertex gathers all information within its radius 2 𝑗 neighborhood. We can do this because the degree is small.

  20. Our Approach (low-deg case) • Can we do better? • Let’s say we have a 𝑈 -round LOCAL algorithm that we wish to run in the CONGESTED CLIQUE. 𝑃 𝑈 <- Straightforward simulation (when degree and message size is sufficiently small) Graph exponentiation ( Δ 𝑈 < 𝑜 ) 𝑃 log 𝑈 <- 𝑃 1 Straightforward information gathering ( # edges = 𝑃(𝑜) ) <-

  21. Our Approach (low-deg case) • “Opportunistic” information gathering: • Each vertex 𝑤 sends its edges to random destinations, and it wishes that someone will gather enough information to simulate the algorithm at 𝑤 . • Pr[ 𝑓 is sent to 𝑣 ] = 𝑞 • Need 𝑞 = 1/Δ so that each node received only O(n) words. • Recall: # edges = 𝑃(𝑜Δ) . • Pr[ 𝑤 is successfully simulated by 𝑣 ] = 𝑞 Δ 𝑈 (need this to be ≫ 1/𝑜 ) This idea is implicit in: Tomasz Jurdzinski and Krzysztof Nowicki - “MST in O(1) rounds of congested clique” in SODA 2018.

  22. Our Approach (low-deg case) • For example, it works when 𝑈 = 𝑃(log ∗ 𝑜) and ∆ = poly log log 𝑜 . • We “ sparsify ” the pre -shattering phase of the CLP algorithm to reduce the effective degree from ∆ = 𝑃(log 5 𝑜) to ∆ = poly log log 𝑜 . • This leads to an 𝑃(1) -round algorithm in CONGESTED CLIQUE. The idea of sparsifying local algorithms to obtain better MPC / CONGESTED CLIQUE algorithms appears in: Mohsen Ghaffari and Jara Uitto – “ Sparsifying Distributed Algorithms with Ramifications in Massively Parallel Computation and Centralized Local Computation” in SODA 2019.

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend