multilevel hypergraph partitioning g. karypis, r. aggarwal, v. kumar, and s. shekhar computer...
TRANSCRIPT
Multilevel Hypergraph Partitioning
G. Karypis, R. Aggarwal, V. Kumar, and S. Shekhar
Computer Science Department, U of MN
Applications in VLSI Domain
Overview
• Problem definition• Earlier work on partitioning• Multilevel graph partitioning algorithms• Multilevel hypergraph partitioning
algorithms• Experimental results• Conclusion
Problem Definition
• Given a hypergraph G = (V, E) we want to find a balanced bisection such that the number of hyperedges that are cut is minimized.
• Applications VLSI (packaging, synthesis, optimization, …) Numerical computations Transportation Data-mining
Overview of Partitioning Algorithms
Effective partitioning algorithms must utilize both global as well as local information.
Global View
Global View
Knowing where to bisectKnowing where to bisect
Local ViewLocal View The ability to fine-tune a bisectionThe ability to fine-tune a bisection
A number of partitioning algorithms have been developed, utilizing global and local information to different degrees.
Single-levelSingle-level Two-levelTwo-level Multi-levelMulti-level
Multilevel Partitioning Schemes
Originally developed for graphs (edges connecting 2 nodes) as opposed to netlists or hypergraphs in which edges or hyperedges connect >= 2 nodes)
Produce high-quality partitionings.
Incorporate both global and local information.
Outperforms everything else! They are extremely fast.
Eg: 1M-node graph takes 35s. They can be easily parallelized.
Eg: 1M-node graph takes 0.8s on 64 processors.
Coarsening
Uncoarse
ning
+ Partit
ion
Refinement
Initial Partitioning
Ingredients of Multilevel Partitioning
Coarsening Initial Partitioning Refinement
Successive coarse graphs must make it easier to find a good partition. Uniform vertex weights (node/vertex “sizes” should be as
uniform as possible). Exposed edge-weight must decrease rapidly.
The `how to coarsen’ computation must be fast. The size of successive coarse graphs must
decrease relatively fast less time spent in coarsening, less memory.
Ingredients of Multilevel Partitioning
Coarsening Initial Partitioning Refinement
This is the easiest of the three phases. Everything reasonable works fine.
Random+FM, spectral, region growing, etc. It requires very little time
Operates on small graphs (~100 vertices).
Ingredients of Multilevel Partitioning
Coarsening Initial Partitioning Refinement
Needs a local partitioning refinement algorithm. Any vertex-swapping algorithm can be used
KL, FM, etc. If coarsening is done correctly, simple refinement
algorithms work extremely well and this phase requires very little time.
Metis: Multilevel Graph Partitioning
Coarsening Maximal independent set of edges (matching). Preference to high weight edges: heavy-edge. Effective in reducing the exposed edge-weight!
Initial Partitioning A region-growing followed by FM
Refinement A simplified version of FM
Only up to 4 passes, Early exit Very fast refinement.
Metis is an extremely fast, robust, high-quality graph partitioning algorithm.
2
1
2
Going from Graphs to Hypergraphs
• Hypergraph partitioning is significantly more complicated than graph partitioning.
• Just look at the various refinement algorithms used in hypergraphs. Graphs: KL/FM Hypergraphs: KL/FM, LA, PROP, CLIP, etc.
Can we find proper coarsening schemes that will let us use simple and fast refinement schemes and get
good and robust performance?
Can we find proper coarsening schemes that will let us use simple and fast refinement schemes and get
good and robust performance?
Hypergraph Coarsening Schemes
• Edge-based coarsening schemes Pairs of connected vertices are collapsed together,
using the heavy-edge heuristic. Easy and fast to compute. Does not dramatically decrease the exposed
hyperedge weight. Cannot easily remove moderate-size hyperedges.
Requires a lot of refinement in order to obtain good partitionings Requires sophisticated refinement schemes
Can lead to good partitionings but very slow!
Hypergraph Coarsening Schemes
• Hyperedge-based coarsening schemes Collapses together all the vertices of an entire hyperedge. Preference is given to the heavier hyperedges. Easy and fast to compute. It dramatically decreases the exposed hyperedge weight. Leads to very good initial partitionings.
3600 as opposed to 6200 for golem3!
Requires very little refinement time. High-quality partitionings can be obtained with simple
refinement schemes.
hMetis: Multilevel Hypergraph Partitioning Algorithm
• Uses hyperedge-based coarsening.• Uses a simplified version of FM for refinement
Limits the number of passes, Early-exit
• Employs some new multilevel refinement techniques to further improve the quality.
hMetis is an extremely fast, robust, high-quality hypergraph partitioning algorithm.
hMetis is an extremely fast, robust, high-quality hypergraph partitioning algorithm.
Experimental Setup
• We used the ACM/SIGDA circuit partitioning benchmark.
• Experiments were performed on a MIPS R10000@200Mhz.
• Results represent a 45-55 balance condition.• Best out of 20 runs using EE-FM and
multilevel refinement.
Bisection Quality
2%
6%
7%
7%
9%
11%
22%
0% 5% 10% 15% 20% 25%
Improvement achieved by hMetis over other schemes
PARABOLI
Gmetis
GFM
PROP
CDIP-LA3
CLIP-PROP
Best
Bisection Runtime
8.1
7.9
2.9
36.2
1
24.2
0 10 20 30 40
Speedup of hMetis over other schemes
PARABOLI
Gmetis
GFM
PROP
CDIP-LA3
CLIP-PROP
Conclusions
• The multilevel paradigm with the right coarsening and refinement scheme works extremely well for hypergraphs.
• The quality of the partitionings can be further improved by running the algorithm multiple times.
• hMetis will be made available in the public domain by the end of June.
URL: http://www.cs.umn.edu/~karypis/metisURL: http://www.cs.umn.edu/~karypis/metis