36,923 research outputs found
Dynamic Balanced Graph Partitioning
This paper initiates the study of the classic balanced graph partitioning
problem from an online perspective: Given an arbitrary sequence of pairwise
communication requests between nodes, with patterns that may change over
time, the objective is to service these requests efficiently by partitioning
the nodes into clusters, each of size , such that frequently
communicating nodes are located in the same cluster. The partitioning can be
updated dynamically by migrating nodes between clusters. The goal is to devise
online algorithms which jointly minimize the amount of inter-cluster
communication and migration cost.
The problem features interesting connections to other well-known online
problems. For example, scenarios with generalize online paging, and
scenarios with constitute a novel online variant of maximum matching. We
present several lower bounds and algorithms for settings both with and without
cluster-size augmentation. In particular, we prove that any deterministic
online algorithm has a competitive ratio of at least , even with significant
augmentation. Our main algorithmic contributions are an -competitive deterministic algorithm for the general setting with
constant augmentation, and a constant competitive algorithm for the maximum
matching variant
Window-based Streaming Graph Partitioning Algorithm
In the recent years, the scale of graph datasets has increased to such a
degree that a single machine is not capable of efficiently processing large
graphs. Thereby, efficient graph partitioning is necessary for those large
graph applications. Traditional graph partitioning generally loads the whole
graph data into the memory before performing partitioning; this is not only a
time consuming task but it also creates memory bottlenecks. These issues of
memory limitation and enormous time complexity can be resolved using
stream-based graph partitioning. A streaming graph partitioning algorithm reads
vertices once and assigns that vertex to a partition accordingly. This is also
called an one-pass algorithm. This paper proposes an efficient window-based
streaming graph partitioning algorithm called WStream. The WStream algorithm is
an edge-cut partitioning algorithm, which distributes a vertex among the
partitions. Our results suggest that the WStream algorithm is able to partition
large graph data efficiently while keeping the load balanced across different
partitions, and communication to a minimum. Evaluation results with real
workloads also prove the effectiveness of our proposed algorithm, and it
achieves a significant reduction in load imbalance and edge-cut with different
ranges of dataset
Recent Advances in Graph Partitioning
We survey recent trends in practical algorithms for balanced graph
partitioning together with applications and future research directions
Yet Another Graph Partitioning Problem is NP-Hard
Recently a large number of graph separator problems have been proven to be
\textsc{NP-Hard}. Amazingly we have found that
-Subgraph-Balanced-Vertex-Separator, an important variant, has been
overlooked. In this work ``Yet Another Graph Partitioning Problem is NP-Hard"
we present the surprising result that
-Subgraph-Balanced-Vertex-Separator is -Hard. This is despite the
fact that the constraints of our new problem are harder to satisfy than the
original problem
Adaptive Partitioning for Large-Scale Dynamic Graphs
AbstractâIn the last years, large-scale graph processing has gained increasing attention, with most recent systems placing particular emphasis on latency. One possible technique to improve runtime performance in a distributed graph processing system is to reduce network communication. The most notable way to achieve this goal is to partition the graph by minimizing the num-ber of edges that connect vertices assigned to different machines, while keeping the load balanced. However, real-world graphs are highly dynamic, with vertices and edges being constantly added and removed. Carefully updating the partitioning of the graph to reflect these changes is necessary to avoid the introduction of an extensive number of cut edges, which would gradually worsen computation performance. In this paper we show that performance degradation in dynamic graph processing systems can be avoided by adapting continuously the graph partitions as the graph changes. We present a novel highly scalable adaptive partitioning strategy, and show a number of refinements that make it work under the constraints of a large-scale distributed system. The partitioning strategy is based on iterative vertex migrations, relying only on local information. We have implemented the technique in a graph processing system, and we show through three real-world scenarios how adapting graph partitioning reduces execution time by over 50 % when compared to commonly used hash-partitioning. I
- âŠ