cs240a-partitioning

cs240a-partitioning - CS 240A: Graph and hypergraph...

Info iconThis preview shows pages 1–9. Sign up to view the full content.

View Full Document Right Arrow Icon
CS 240A: Graph and hypergraph partitioning Thanks to Aydin Buluc, Umit Catalyurek, Alan Edelman, and Kathy Yelick for some of these slides.
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
CS 240A: Graph and hypergraph partitioning Motivation and definitions Motivation from parallel computing Theory of graph separators Heuristics for graph partitioning Iterative swapping Spectral Geometric Multilevel Beyond graphs Shortcomings of the graph partitioning model Hypergraph models of communication in MatVec Parallel methods for partitioning hypergraphs
Background image of page 2
CS 240A: Graph and hypergraph partitioning Motivation and definitions Motivation from parallel computing Theory of graph separators Heuristics for graph partitioning Iterative swapping Spectral Geometric Multilevel Beyond graphs Shortcomings of the graph partitioning model Hypergraph models of communication in MatVec Parallel methods for partitioning hypergraphs
Background image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Sparse Matrix Vector Multiplication
Background image of page 4
Definition of Graph Partitioning Given a graph G = (N, E, WN, WE) N = nodes (or vertices), E = edges WN = node weights WE = edge weights Often nodes are tasks, edges are communication, weights are costs Choose a partition N = N1 U N2 U … U NP such that Total weight of nodes in each part is “about the same” Total weight of edges connecting nodes in different parts is small Balance the work load, while minimizing communication Special case of N = N1 U N2: Graph Bisection 1 (2) 2 (2) 3 (1) 4 (3) 5 (1) 6 (2) 7 (3) 8 (1) 5 4 6 1 2 1 2 1 2 3
Background image of page 5

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Applications Telephone network design Original application, algorithm due to Kernighan Load Balancing while Minimizing Communication Sparse Matrix times Vector Multiplication Solving PDEs N = {1,…,n}, (j,k) in E if A(j,k) nonzero, W N (j) = #nonzeros in row j, W E (j,k) = 1 VLSI Layout N = {units on chip}, E = {wires}, W E (j,k) = wire length Sparse Gaussian Elimination Used to reorder rows and columns to increase parallelism, and to decrease “fill-in” Data mining and clustering Physical Mapping of DNA
Background image of page 6
Partitioning by Repeated Bisection To partition into 2k parts, bisect graph recursively k times
Background image of page 7

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
If G is a planar graph with n vertices, there exists a set of at most sqrt(6n) vertices whose removal leaves no connected component with more than 2n/3 vertices. (“Planar graphs have sqrt(n)-separators.”) “Well-shaped” finite element meshes in 3 dimensions have n 2/3 - separators. Also some others – trees, graphs of bounded genus, chordal graphs, bounded-excluded-minor graphs, … Mostly these theorems come with efficient algorithms, but they aren’t used much. “Random graphs” don’t have good separators.
Background image of page 8
Image of page 9
This is the end of the preview. Sign up to access the rest of the document.

This note was uploaded on 12/27/2011 for the course CMPSC 240A taught by Professor Gilbert during the Fall '09 term at UCSB.

Page1 / 60

cs240a-partitioning - CS 240A: Graph and hypergraph...

This preview shows document pages 1 - 9. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online