Big graphs (networks) arising in numerous application areas pose significant challenges for graph analysts as these graphs grow to billions of nodes and edges and are prohibitively large to fit in the main memory. Finding the number of triangles in a graph is an important problem in the mining and analysis of graphs. In this paper, we present two efficient MPI-based distributed memory parallel algorithms for counting triangles in big graphs. The first algorithm employs overlapping partitioning and efficient load balancing schemes to provide a very fast parallel algorithm. The algorithm scales well to networks with billions of nodes and can compute the exact number of triangles in a network with 10 billion edges in 16 minutes. The second algorithm divides the network into non-overlapping partitions leading to a space-efficient algorithm. Our results on both artificial and real-world networks demonstrate a significant space saving with this algorithm. We also present a novel approach that reduces communication cost drastically leading the algorithm to both a space- and runtime-efficient algorithm. Further, we demonstrate how our algorithms can be used to list all triangles in a graph and compute clustering coefficients of nodes. Our algorithm can also be adapted to a parallel approximation algorithm using an edge sparsification method.
聚类系数和传递率是网络分析中经常使用的概念,这就需要快速实用的算法来计算大型图中的三角形。以前的研究集中在顺序算法、MapReduce并行化和快速近似。本文提出了一种基于CUDA GPU的并行三角形计数算法。我们描述了实现高性能所需的实施细节,并提出了我们的方法的实验评估。我们的算法在CPU实现上实现了8到15倍的加速,并且能够在Nvidia Tesla C2050 GPU上在不到10秒的时间内在8900万个边图中找到38亿个三角形。
Distributed Detection of Cliques in Dynamic Networks
本文深入研究了分布式动态网络中寻找小子图的基本问题。虽然有些问题是平凡容易处理,如检测一个三角形出现后,边缘插入,我们表明,也许有点令人惊讶的是,其他问题表现出广泛的复杂性,在他们的轮和带宽的复杂性之间的权衡。在三角形的情况下,它只受直接邻域拓扑的影响,一些最终结果是:\begin{itemize} \item The bandwidth complexity of $1$-round dynamic triangle detection or listing is $Θ(1)$. \item The bandwidth complexity of $1$-round dynamic triangle membership listing is $Θ(1)$ for node/edge deletions, $Θ(n^{1/2})$ for edge insertions, and $Θ(n)$ for node insertions. \item The bandwidth complexity of $1$-round dynamic triangle membership detection is $Θ(1)$ for node/edge deletions, $O(\log n)$ for edge insertions, and $Θ(n)$ for node inser…
Stevens Institute of Technology(史蒂文斯理工学院);State Key Laboratory for Novel Software Technology, Nanjing University(南京大学软件新技术国家重点实验室);Huazhong University of Science and Technology(华中科技大学);Computational Research Division, Lawrence Berkeley National Laboratory(劳伦斯伯克利国家实验室计算研究部);Brookhaven National Laboratory(布鲁克海文国家实验室);Department of Computer Science & Engineering, University of Connecticut(康涅狄格大学计算机科学与工程系);Department of Electrical Engineering and Computer Science, University of California, Merced(加州大学默塞德分校电气与计算机工程系)
Massively Parallel Algorithms for Small Subgraph Counting
在过去的二十年中,分布式内存并行计算框架,如MapReduce,Hadoop,Spark和Dryad,随着大型网络数据集的日益普及而获得了极大的普及。大规模并行计算(MPC)模型是在理论上研究这些框架中的图算法的事实标准。子图计数是分析海量图的基本问题之一,主要的算法挑战集中在设计可扩展和准确的方法上。给定一个图$G=(V, E)$与$n$顶点,$m$边和$T$三角形,我们的第一个结果是一个算法,输出$(1+\varepsilon)$ -近似$T$,与渐近\emph{optimal round and total space complexity}提供任何$S \geq \max{(\sqrt m, n^2/m)}$空间每台机器,并假设$T=Ω(\sqrt{m/n})$。我们的结果给出了一个二次改进的$T$上的界限比以前的作品。我们还提供了一个简单的推广,我们的结果计数\emph{any}子图的$k$大小为常数$k \geq 1$。我们的第二个结果是一个$O_{\varepsilon}(\log \log n)$轮算法,用于精确计算三角形的数量,其总的空间使用由输入图的\emph{arboricity} $α$参数化。我们将这一结果扩展到精确计数$k$ -团为任何常数$k$。最后,我们证明了Bera,Pashanasangi和Seshadhri(ITCS 2020)最近的一个结果,…