4,664 research outputs found
Dynamic Graphs on the GPU
We present a fast dynamic graph data structure for the GPU. Our dynamic graph structure uses one hash table per vertex to store adjacency lists and achieves 3.4â14.8x faster insertion rates over the state of the art across a diverse set of large datasets, as well as deletion speedups up to 7.8x. The data structure supports queries and dynamic updates through both edge and vertex insertion and deletion. In addition, we define a comprehensive evaluation strategy based on operations, workloads, and applications that we believe better characterize and evaluate dynamic graph data structures
Dynamic Planar Embeddings of Dynamic Graphs
We present an algorithm to support the dynamic embedding in the plane of a
dynamic graph. An edge can be inserted across a face between two vertices on
the face boundary (we call such a vertex pair linkable), and edges can be
deleted. The planar embedding can also be changed locally by flipping
components that are connected to the rest of the graph by at most two vertices.
Given vertices , linkable decides whether and are
linkable in the current embedding, and if so, returns a list of suggestions for
the placement of in the embedding. For non-linkable vertices , we
define a new query, one-flip-linkable providing a suggestion for a flip
that will make them linkable if one exists. We support all updates and queries
in O(log) time. Our time bounds match those of Italiano et al. for a
static (flipless) embedding of a dynamic graph.
Our new algorithm is simpler, exploiting that the complement of a spanning
tree of a connected plane graph is a spanning tree of the dual graph. The
primal and dual trees are interpreted as having the same Euler tour, and a main
idea of the new algorithm is an elegant interaction between top trees over the
two trees via their common Euler tour.Comment: Announced at STACS'1
Distributed Community Detection in Dynamic Graphs
Inspired by the increasing interest in self-organizing social opportunistic
networks, we investigate the problem of distributed detection of unknown
communities in dynamic random graphs. As a formal framework, we consider the
dynamic version of the well-studied \emph{Planted Bisection Model}
\sdG(n,p,q) where the node set of the network is partitioned into two
unknown communities and, at every time step, each possible edge is
active with probability if both nodes belong to the same community, while
it is active with probability (with ) otherwise. We also consider a
time-Markovian generalization of this model.
We propose a distributed protocol based on the popular \emph{Label
Propagation Algorithm} and prove that, when the ratio is larger than
(for an arbitrarily small constant ), the protocol finds the right
"planted" partition in time even when the snapshots of the dynamic
graph are sparse and disconnected (i.e. in the case ).Comment: Version I
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
- âŠ