Deep Multilevel Graph Partitioning

05/05/2021
by   Lars Gottesbüren, et al.
0

Partitioning a graph into blocks of "roughly equal" weight while cutting only few edges is a fundamental problem in computer science with a wide range of applications. In particular, the problem is a building block in applications that require parallel processing. While the amount of available cores in parallel architectures has significantly increased in recent years, state-of-the-art graph partitioning algorithms do not work well if the input needs to be partitioned into a large number of blocks. Often currently available algorithms compute highly imbalanced solutions, solutions of low quality, or have excessive running time for this case. This is because most high-quality general-purpose graph partitioners are multilevel algorithms which perform graph coarsening to build a hierarchy of graphs, initial partitioning to compute an initial solution, and local improvement to improve the solution throughout the hierarchy. However, for large number of blocks, the smallest graph in the hierarchy that is used for initial partitioning still has to be large. In this work, we substantially mitigate these problems by introducing deep multilevel graph partitioning and a shared-memory implementation thereof. Our scheme continues the multilevel approach deep into initial partitioning – integrating it into a framework where recursive bipartitioning and direct k-way partitioning are combined such that they can operate with high performance and quality. Our approach is stronger, more flexible, arguably more elegant, and reduces bottlenecks for parallelization compared to other multilevel approaches. For example, for large number of blocks our algorithm is on average an order of magnitude faster than competing algorithms while computing balanced partitions with comparable solution quality. For small number of blocks, our algorithms are the fastest among competing systems with comparable quality.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
03/02/2023

Distributed Deep Multilevel Graph Partitioning

We describe the engineering of the distributed-memory multilevel graph p...
research
01/20/2020

High-Quality Hierarchical Process Mapping

Partitioning graphs into blocks of roughly equal size such that few edge...
research
02/18/2021

Buffered Streaming Graph Partitioning

Partitioning graphs into blocks of roughly equal size is a widely used t...
research
09/07/2018

A general-purpose hierarchical mesh partitioning method with node balancing strategies for large-scale numerical simulations

Large-scale parallel numerical simulations are essential for a wide rang...
research
04/18/2014

Parallel Graph Partitioning for Complex Networks

Processing large complex networks like social networks or web graphs has...
research
02/20/2018

ILP-based Local Search for Graph Partitioning

Computing high-quality graph partitions is a challenging problem with nu...
research
03/13/2023

Multilevel Skeletonization Using Local Separators

In this paper we give a new, efficient algorithm for computing curve ske...

Please sign up or login with your details

Forgot password? Click here to reset