Log In Sign Up

High-Performance Parallel Graph Coloring with Strong Guarantees on Work, Depth, and Quality

by   Maciej Besta, et al.

We develop the first parallel graph coloring heuristics with strong theoretical guarantees on work and depth and coloring quality. The key idea is to design a relaxation of the vertex degeneracy order, a well-known graph theory concept, and to color vertices in the order dictated by this relaxation. This introduces a tunable amount of parallelism into the degeneracy ordering that is otherwise hard to parallelize. This simple idea enables significant benefits in several key aspects of graph coloring. For example, one of our algorithms ensures polylogarithmic depth and a bound on the number of used colors that is superior to all other parallelizable schemes, while maintaining work-efficiency. In addition to provable guarantees, the developed algorithms have competitive run-times for several real-world graphs, while almost always providing superior coloring quality. Our degeneracy ordering relaxation is of separate interest for algorithms outside the context of coloring.


page 15

page 17


Vertex Ordering Algorithms for Graph Coloring Problem

Graph coloring is a fundamental problem in combinatorics with many appli...

Two-Class (r,k)-Coloring: Coloring with Service Guarantees

This paper introduces the Two-Class (r,k)-Coloring problem: Given a fixe...

Coloring Big Graphs with AlphaGoZero

We show that recent innovations in deep reinforcement learning can effec...

ProbGraph: High-Performance and High-Accuracy Graph Mining with Probabilistic Set Representations

Important graph mining problems such as Clustering are computationally d...

Efficient global register allocation

In a compiler, an essential component is the register allocator. Two mai...

Relaxation in graph coloring and satisfiability problems

Using T=0 Monte Carlo simulation, we study the relaxation of graph color...

Efficiency Guarantees for Parallel Incremental Algorithms under Relaxed Schedulers

Several classic problems in graph processing and computational geometry ...