中文

并行批动态 $k$-团计数

数据结构与算法 2020-12-15 v2 分布式、并行与集群计算

摘要

本文研究 kk-团计数问题的新批动态算法,这类动态算法的更新为边插入与删除的批次。我们在并行设定下研究该问题,目标是获得具有低(多对数)深度的算法。我们的第一个结果是一个新的并行批动态三角形计数算法,对于一批 Δ\Delta 条边插入或删除,其摊还工作量为 O(ΔΔ+m)O(\Delta\sqrt{\Delta+m})、高概率下深度为 O(log(Δ+m))O(\log^* (\Delta+m))、空间为 O(Δ+m)O(\Delta+m)。我们的第二个结果是一个基于并行快速矩阵乘法的代数算法。假设存在并行矩阵乘法常数为 ωp\omega_p 的并行快速矩阵乘法算法,同一算法以高概率求解动态 kk-团计数,摊还工作量为 O(min(Δm(2k1)ωp3(ωp+1),(Δ+m)2(k+1)ωp3(ωp+1)))O\left(\min\left(\Delta m^{\frac{(2k - 1)\omega_p}{3(\omega_p + 1)}}, (\Delta+m)^{\frac{2(k + 1)\omega_p}{3(\omega_p + 1)}}\right)\right)、深度为 O(log(Δ+m))O(\log (\Delta+m))、空间为 O((Δ+m)2(k+1)ωp3(ωp+1))O\left((\Delta+m)^{\frac{2(k + 1)\omega_p}{3(\omega_p + 1)}}\right)。利用近期开发的并行 kk-团计数算法,我们还获得了一个在 Arboricity 为 α\alpha 的图上运行于 O(Δ(m+Δ)αk4)O(\Delta(m+\Delta)\alpha^{k-4}) 期望工作量、高概率下深度 O(logk2n)O(\log^{k-2} n)、空间 O(m+Δ)O(m + \Delta) 的简单批动态 kk-团计数算法。最后,我们给出了并行批动态三角形计数算法的多核 CPU 实现。在具有双路超线程的 72 核机器上,我们的实现取得了 36.54--74.73 倍的并行加速比,且在某些情况下相比现有非理论高效的该问题并行算法取得了显著加速。

关键词

引用

@article{arxiv.2003.13585,
  title  = {Parallel Batch-Dynamic $k$-Clique Counting},
  author = {Laxman Dhulipala and Quanquan C. Liu and Julian Shun and Shangdi Yu},
  journal= {arXiv preprint arXiv:2003.13585},
  year   = {2020}
}