Download presentation
Presentation is loading. Please wait.
1
Distributed Application Partitioning
ECE 556 Final Project Brad Colvin
2
Problem Overview Optimally allocating the components of a distributed program over several machines. Communication between machines is assumed to be the major factor in application performance Can be represented by a graph NP-hard for case of 3 or more terminals Can be thought of as a partitioning problem
3
Collapse the graph Given G = {N, E, M} N is the set of Nodes
E is the set of Edges M is the set of machine nodes
4
Dominant Edge Take node n and its heaviest edge e
Edges a1,a2,…ar with opposite end nodes not in M Edges b1,b2,…bk with opposite end nodes in M If w(e) >= Sum(w(ai)) + Max(w(b1),…,w(bk)) Then the min-cut does not contain e So e can be collapsed
5
Machine Cut Let machine cut Mi be the set of all edges between a machine mi and non-machine nodes N Let Wi be the sum of the weight of all edges in the machine cut Mi Wi’s are sorted so W1>=W2>=… Any edge that has a weight greater than W2 cannot be part of the min-cut
6
Zeroing Assume that node n has edges to each of the m machines in M with weights w1<=w2<=…<=wm Reducing the weights of each of the m edges from n to machines M by w1 doesn’t change the assignment of nodes for the min-cut It reduces the cost of the minimum cut by (m-1)w1
7
Order of Application If the previous 3 techniques are repeatedly applied on a graph until none of them are applicable Then the resulting reduced graph is independent of the order of application of the techniques
8
Output List of nodes collapsed into each of the machine nodes
Weight of edges connecting the machine nodes
9
Credits Main Paper: Graph Cutting Algorithms for Distributed Applications Partitioning Graphs from: Fast Optimally-Preserving Graph Reduction for Dynamics-Based Partitioning of Distributed Object Applications Authors: Karin Hogstedt, Doug Kimelman, VT Rajan, Tova Roth, and Mark Wegman
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.