-
Topology-induced Enhancement of Mappings
Authors:
Roland Glantz,
Maria Predari,
Henning Meyerhenke
Abstract:
In this paper we propose a new method to enhance a mapping $μ(\cdot)$ of a parallel application's computational tasks to the processing elements (PEs) of a parallel computer.
The idea behind our method \mswap is to enhance such a mapping by drawing on the observation that many topologies take the form of a partial cube.
This class of graphs includes all rectangular and cubic meshes, any such t…
▽ More
In this paper we propose a new method to enhance a mapping $μ(\cdot)$ of a parallel application's computational tasks to the processing elements (PEs) of a parallel computer.
The idea behind our method \mswap is to enhance such a mapping by drawing on the observation that many topologies take the form of a partial cube.
This class of graphs includes all rectangular and cubic meshes, any such torus with even extensions in each dimension, all hypercubes, and all trees.
Following previous work, we represent the parallel application and the parallel computer by graphs $G_a = (V_a, E_a)$ and $G_p = (V_p, E_p)$.
$G_p$ being a partial cube allows us to label its vertices, the PEs, by bitvectors such that the cost of exchanging one unit of information between two vertices $u_p$ and $v_p$ of $G_p$ amounts to the Hamming distance between the labels of $u_p$ and $v_p$.
By transferring these bitvectors from $V_p$ to $V_a$ via $μ^{-1}(\cdot)$ and extending them to be unique on $V_a$, we can enhance $μ(\cdot)$ by swapping labels of $V_a$ in a new way.
Pairs of swapped labels are local \wrt the PEs, but not \wrt $G_a$. Moreover, permutations of the bitvectors' entries give rise to a plethora of hierarchies on the PEs. Through these hierarchies we turn \mswap into a hierarchical method for improving $μ(\cdot)$ that is complementary to state-of-the-art methods for computing $μ(\cdot)$ in the first place.
In our experiments we use \mswap to enhance mappings of complex networks onto rectangular meshes and tori with 256 and 512 nodes, as well as hypercubes with 256 nodes. It turns out that common quality measures of mappings derived from state-of-the-art algorithms can be improved considerably.
△ Less
Submitted 19 April, 2018;
originally announced April 2018.
-
Many-to-many Correspondences between Partitions: Introducing a Cut-based Approach
Authors:
Roland Glantz,
Henning Meyerhenke
Abstract:
Let $\mathcal{P}$ and $\mathcal{P}'$ be finite partitions of the set $V$. Finding good correspondences between the parts of $\mathcal{P}$ and those of $\mathcal{P}'$ is helpful in classification, pattern recognition, and network analysis. Unlike common similarity measures for partitions that yield only a single value, we provide specifics on how $\mathcal{P}$ and $\mathcal{P'}$ correspond to each…
▽ More
Let $\mathcal{P}$ and $\mathcal{P}'$ be finite partitions of the set $V$. Finding good correspondences between the parts of $\mathcal{P}$ and those of $\mathcal{P}'$ is helpful in classification, pattern recognition, and network analysis. Unlike common similarity measures for partitions that yield only a single value, we provide specifics on how $\mathcal{P}$ and $\mathcal{P'}$ correspond to each other.
To this end, we first define natural collections of best correspondences under three constraints \cone, \ctwo, and \cthree. In case of \cone, the best correspondences form a minimum cut basis of a certain bipartite graph, whereas the other two lead to minimum cut bases of $\mathcal{P}$ \wrt $\mathcal{P}'$. We also introduce a constraint, \cfour, which tightens \cthree; both are useful for finding consensus partitions. We then develop branch-and-bound algorithms for finding minimum $P_s$-$P_t$ cuts of $\mathcal{P}$ and thus $\vert \mathcal{P} \vert -1$ best correspondences under \ctwo, \cthree, and \cfour, respectively.
In a case study, we use the correspondences to gain insight into a community detection algorithm. The results suggest, among others, that only very minor losses in the quality of the correspondences occur if the branch-and-bound algorithm is restricted to its greedy core. Thus, even for graphs with more than half a million nodes and hundreds of communities, we can find hundreds of best or almost best correspondences in less than a minute.
△ Less
Submitted 17 January, 2018; v1 submitted 15 March, 2016;
originally announced March 2016.
-
Algorithms for Mapping Parallel Processes onto Grid and Torus Architectures
Authors:
Roland Glantz,
Henning Meyerhenke,
Alexander Noe
Abstract:
Static mapping is the assignment of parallel processes to the processing elements (PEs) of a parallel system, where the assignment does not change during the application's lifetime. In our scenario we model an application's computations and their dependencies by an application graph. This graph is first partitioned into (nearly) equally sized blocks. These blocks need to communicate at block bound…
▽ More
Static mapping is the assignment of parallel processes to the processing elements (PEs) of a parallel system, where the assignment does not change during the application's lifetime. In our scenario we model an application's computations and their dependencies by an application graph. This graph is first partitioned into (nearly) equally sized blocks. These blocks need to communicate at block boundaries. To assign the processes to PEs, our goal is to compute a communication-efficient bijective mapping between the blocks and the PEs.
This approach of partitioning followed by bijective mapping has many degrees of freedom. Thus, users and developers of parallel applications need to know more about which choices work for which application graphs and which parallel architectures. To this end, we not only develop new mapping algorithms (derived from known greedy methods). We also perform extensive experiments involving different classes of application graphs (meshes and complex networks), architectures of parallel computers (grids and tori), as well as different partitioners and mapping algorithms. Surprisingly, the quality of the partitions, unless very poor, has little influence on the quality of the mapping.
More importantly, one of our new mapping algorithms always yields the best results in terms of the quality measure maximum congestion when the application graphs are complex networks. In case of meshes as application graphs, this mapping algorithm always leads in terms of maximum congestion AND maximum dilation, another common quality measure.
△ Less
Submitted 2 March, 2015; v1 submitted 4 November, 2014;
originally announced November 2014.
-
Tree-based Coarsening and Partitioning of Complex Networks
Authors:
Roland Glantz,
Henning Meyerhenke,
Christian Schulz
Abstract:
Many applications produce massive complex networks whose analysis would benefit from parallel processing. Parallel algorithms, in turn, often require a suitable network partition. For solving optimization tasks such as graph partitioning on large networks, multilevel methods are preferred in practice. Yet, complex networks pose challenges to established multilevel algorithms, in particular to thei…
▽ More
Many applications produce massive complex networks whose analysis would benefit from parallel processing. Parallel algorithms, in turn, often require a suitable network partition. For solving optimization tasks such as graph partitioning on large networks, multilevel methods are preferred in practice. Yet, complex networks pose challenges to established multilevel algorithms, in particular to their coarsening phase.
One way to specify a (recursive) coarsening of a graph is to rate its edges and then contract the edges as prioritized by the rating. In this paper we (i) define weights for the edges of a network that express the edges' importance for connectivity, (ii) compute a minimum weight spanning tree $T^m$ with respect to these weights, and (iii) rate the network edges based on the conductance values of $T^m$'s fundamental cuts. To this end, we also (iv) develop the first optimal linear-time algorithm to compute the conductance values of \emph{all} fundamental cuts of a given spanning tree. We integrate the new edge rating into a leading multilevel graph partitioner and equip the latter with a new greedy postprocessing for optimizing the maximum communication volume (MCV). Experiments on bipartitioning frequently used benchmark networks show that the postprocessing already reduces MCV by 11.3%. Our new edge rating further reduces MCV by 10.3% compared to the previously best rating with the postprocessing in place for both ratings. In total, with a modest increase in running time, our new approach reduces the MCV of complex network partitions by 20.4%.
△ Less
Submitted 13 February, 2014; v1 submitted 12 February, 2014;
originally announced February 2014.
-
Finding all Convex Cuts of a Plane Graph in Polynomial Time
Authors:
Roland Glantz,
Henning Meyerhenke
Abstract:
Convexity is a notion that has been defined for subsets of $\RR^n$ and for subsets of general graphs. A convex cut of a graph $G=(V, E)$ is a $2$-partition $V_1 \dot{\cup} V_2=V$ such that both $V_1$ and $V_2$ are convex, \ie shortest paths between vertices in $V_i$ never leave $V_i$, $i \in \{1, 2\}$. Finding convex cuts is $\mathcal{NP}$-hard for general graphs. To characterize convex cuts, we e…
▽ More
Convexity is a notion that has been defined for subsets of $\RR^n$ and for subsets of general graphs. A convex cut of a graph $G=(V, E)$ is a $2$-partition $V_1 \dot{\cup} V_2=V$ such that both $V_1$ and $V_2$ are convex, \ie shortest paths between vertices in $V_i$ never leave $V_i$, $i \in \{1, 2\}$. Finding convex cuts is $\mathcal{NP}$-hard for general graphs. To characterize convex cuts, we employ the Djokovic relation, a reflexive and symmetric relation on the edges of a graph that is based on shortest paths between the edges' end vertices.
It is known for a long time that, if $G$ is bipartite and the Djokovic relation is transitive on $G$, \ie $G$ is a partial cube, then the cut-sets of $G$'s convex cuts are precisely the equivalence classes of the Djokovic relation. In particular, any edge of $G$ is contained in the cut-set of exactly one convex cut. We first characterize a class of plane graphs that we call {\em well-arranged}. These graphs are not necessarily partial cubes, but any edge of a well-arranged graph is contained in the cut-set(s) of at least one convex cut. We also present an algorithm that uses the Djokovic relation for computing all convex cuts of a (not necessarily plane) bipartite graph in $\bigO(|E|^3)$ time. Specifically, a cut-set is the cut-set of a convex cut if and only if the Djokovic relation holds for any pair of edges in the cut-set.
We then characterize the cut-sets of the convex cuts of a general graph $H$ using two binary relations on edges: (i) the Djokovic relation on the edges of a subdivision of $H$, where any edge of $H$ is subdivided into exactly two edges and (ii) a relation on the edges of $H$ itself that is not the Djokovic relation. Finally, we use this characterization to present the first algorithm for finding all convex cuts of a plane graph in polynomial time.
△ Less
Submitted 16 January, 2014; v1 submitted 18 March, 2013;
originally announced March 2013.