The core numbers of vertices in a graph are one of the most well-studied cohesive subgraph models because of the linear running time. In practice, many data graphs are dynamic graphs that are continuously changing by inserting or removing edges. The core numbers are updated in dynamic graphs with edge insertions and deletions, which is called core maintenance. When a burst of a large number of inserted or removed edges come in, we have to handle these edges on time to keep up with the data stream. There are two main sequential algorithms for core maintenance, \textsc{Traversal} and \textsc{Order}. It is proved that the \textsc{Order} algorithm significantly outperforms the \alg{Traversal} algorithm over all tested graphs with up to 2,083 times speedups. To the best of our knowledge, all existing parallel approaches are based on the \alg{Traversal} algorithm; also, their parallelism exists only for affected vertices with different core numbers, which will reduce to sequential when all vertices have the same core numbers. In this paper, we propose a new parallel core maintenance algorithm based on the \alg{Order} algorithm. Importantly, our new approach always has parallelism, even for the graphs where all vertices have the same core numbers. Extensive experiments are conducted over real-world, temporal, and synthetic graphs on a 64-core machine. The results show that for inserting and removing 100,000 edges using 16-worker, our method achieves up to 289x and 10x times speedups compared with the most efficient existing method, respectively.
翻译:图形中脊椎的核心数字是因线性运行时间而研究最精密的具有凝聚力的亚表模型之一。 在实践中, 许多数据图表是动态图表, 这些动态图表通过插入或删除边缘而不断变化。 核心数字在动态图形中更新, 带有边缘插入和删除, 称之为核心维护。 当大量插入或删除边缘的爆发进入时, 我们必须及时处理这些边缘, 以跟上数据流。 有两种主要的亚化逻辑, 用于核心维护, \ textsc{ traversal} 和\ textscrsc{ Order} 。 事实证明,\ textscrc{ Order} 的算法大大优于所有测试过的图表中的 \ alg{ translate 。 根据我们的知识, 所有现有的平行方法都基于 \ alg{ traversals} 算法。 此外, 它们的平行算法只存在于有不同核心数字的受影响的直系, 包括不同核心数字的递解 { true_ ral- true 。 当我们所有运行时, 都以新的 10 和不断 算法 。