170 likes | 183 Views
Explore the problem definition, algorithms, and experimental results of hypergraph partitioning for VLSI applications. Learn about coarsening, initial partitioning, and refinement phases crucial in achieving high-quality partitioning for VLSI domains.
E N D
Multilevel Hypergraph Partitioning Applications in VLSI Domain G. Karypis, R. Aggarwal, V. Kumar, and S. Shekhar Computer Science Department, U of MN
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
Global View Knowing where to bisect Local View The ability to fine-tune a bisection Overview of Partitioning Algorithms Effective partitioning algorithms must utilize both global as well as local information. A number of partitioning algorithms have been developed, utilizing global and local information to different degrees. Single-level Two-level Multi-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 Uncoarsening + Partition 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 2 2 1 • 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.
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?
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.
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.
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/metis