Skip to main content
QUICK REVIEW

[논문 리뷰] Parallel Batch-Dynamic $k$-Clique Counting

Laxman Dhulipala, Quanquan C. Liu|arXiv (Cornell University)|2020. 03. 30.
Complexity and Algorithms in Graphs인용 수 4
한 줄 요약

이 논문은 병렬 빠른 행렬 곱셈과 조합적 순열을 활용하여 작업 효율적이고 병렬적인 배치 동적 알고리즘을 제안하며, $k$-클리크 수를 세는 데 있어 다항로그 심도와 낮은 평균 작업량을 달성한다. 밀도 높은 그래프에서 기존 방법보다 뛰어나며, 72코어 시스템에서 최대 74.73배의 성능 향상을 달성한 새로운 삼각형 수 세기 알고리즘을 도입한다. 이 알고리즘은 $O(\Delta\sqrt{\Delta+m})$의 평균 작업량과 $O(\log^*(\Delta+m))$의 심도를 가지며, 밀도 높은 그래프에서 뛰어난 성능을 발휘한다.

ABSTRACT

In this paper, we study new batch-dynamic algorithms for the $k$-clique counting problem, which are dynamic algorithms where the updates are batches of edge insertions and deletions. We study this problem in the parallel setting, where the goal is to obtain algorithms with low (polylogarithmic) depth. Our first result is a new parallel batch-dynamic triangle counting algorithm with $O(Δ\sqrt{Δ+m})$ amortized work and $O(\log^* (Δ+m))$ depth with high probability, and $O(Δ+m)$ space for a batch of $Δ$ edge insertions or deletions. Our second result is an algebraic algorithm based on parallel fast matrix multiplication. Assuming that a parallel fast matrix multiplication algorithm exists with parallel matrix multiplication constant $ω_p$, the same algorithm solves dynamic $k$-clique counting with $O\left(\min\left(Δm^{\frac{(2k - 1)ω_p}{3(ω_p + 1)}}, (Δ+m)^{\frac{2(k + 1)ω_p}{3(ω_p + 1)}} ight) ight)$ amortized work and $O(\log (Δ+m))$ depth with high probability, and $O\left((Δ+m)^{\frac{2(k + 1)ω_p}{3(ω_p + 1)}} ight)$ space. Using a recently developed parallel $k$-clique counting algorithm, we also obtain a simple batch-dynamic algorithm for $k$-clique counting on graphs with arboricity $α$ running in $O(Δ(m+Δ)α^{k-4})$ expected work and $O(\log^{k-2} n)$ depth with high probability, and $O(m + Δ)$ space. Finally, we present a multicore CPU implementation of our parallel batch-dynamic triangle counting algorithm. On a 72-core machine with two-way hyper-threading, our implementation achieves 36.54--74.73x parallel speedup, and in certain cases achieves significant speedups over existing parallel algorithms for the problem, which are not theoretically-efficient.

연구 동기 및 목표

  • 현대 다코어 아키텍처에서 효율적으로 확장 가능한 병렬 배치 동적 알고리즘을 설계하여 $k$-클리크 수를 세는 데 목적이 있다.
  • 특히 큰 배치의 간선 삽입 및 삭제에 대해 낮은 평균 작업량과 다항로그 심도를 달성하기 위한 동적 업데이트를 위한 알고리즘을 개발한다.
  • 기존의 동적 접근 방식보다 밀도 높은 그래프에서 뛰어난 성능을 발휘하는 이론적으로 효율적인 알고리즘을 개발한다. 이 알고리즘은 병렬 빠른 행렬 곱셈 기반이다.
  • 제안된 알고리즘을 실제 및 합성 워크로드에서 구현하고 평가하여, 기존의 이론적으로 최적화되지 않은 방법들보다 실용적으로 뛰어난 성능을 입증한다.
  • 고속 동적 그래프 워크로드에서 순차적 및 단일 업데이트 동적 알고리즘의 한계를 극복하기 위해 배치 처리와 병렬성을 지원한다.

제안 방법

  • 정점의 차수 기반 작업 분배와 배치 인식형 인접 리스트 업데이트를 활용하여 중복 계산을 최소화하는 병렬 배치 동적 삼각형 수 세기 알고리즘을 제안한다.
  • 공통 이웃의 변화를 추적하고 클리크 수를 점진적으로 업데이트하는 방식으로, 간선 업데이트를 배치 단위로 처리하는 작업 효율적인 전략을 도입한다.
  • 병렬 빠른 행렬 곱셈 기반의 대수적 접근을 제안하며, $k$-클리크 수 세기의 평균 작업량은 $O(\min(\Delta m^{(2k-1)\omega_p/(3(\omega_p+1))}, (\Delta+m)^{2(k+1)\omega_p/(3(\omega_p+1))}))$로 유계된다.
  • 산림성 $\alpha$를 가진 그래프에 대해 저차수 방향성 할당을 사용하여, $O(\Delta(m+\Delta)\alpha^{k-4})$의 기대 작업량과 $O(\log^{k-2}n)$의 심도를 가지는 단순한 순열 기반의 배치 동적 $k$-클리크 알고리즘을 설계한다.
  • 72코어 CPU에 삼각형 수 세기 알고리즘을 구현하여, 메모리 액세스 패턴과 코어 간 로드 밸런싱 최적화를 수행한다.
  • 삽입-삭제 쌍과 같은 중복 업데이트를 배치 내에서 탐지하고 제거하는 하이브리드 접근 방식을 사용하여 불필요한 계산을 줄인다.

실험 결과

연구 질문

  • RQ1$k$-클리크 수 세기의 병렬 배치 동적 알고리즘이 낮은 평균 작업량을 유지하면서도 다항로그 심도를 달성할 수 있는가?
  • RQ2그래프의 밀도와 배치 크기가 증가함에 따라 행렬 곱셈 기반 접근 방식의 성능은 어떻게 변화하는가?
  • RQ3조합적 순열 기반 알고리즘이 실제 그래프에서 이론적 효율성과 실용적 성능 향상을 동시에 달성할 수 있는가?
  • RQ4특히 고차수 정점과 밀도 높은 그래프에서, 제안된 알고리즘은 기존의 이론적으로 최적화되지 않은 병렬 알고리즘보다 어떻게 비교되는가?
  • RQ5배치 크기와 그래프의 밀도가 배치 동적 삼각형 수 세기 알고리즘의 성능에 어떤 영향을 미치는가?

주요 결과

  • 제안된 병렬 배치 동적 삼각형 수 세기 알고리즘은 높은 확률로 $O(\Delta\sqrt{\Delta+m})$의 평균 작업량과 $O(\log^*(\Delta+m))$의 심도를 달성하여 기존의 병렬 배치 동적 방법보다 크게 향상된다.
  • 하이퍼스레딩 기능이 있는 72코어 머신에서, 구현은 모든 배치 크기에서 트위터 그래프에서 기존의 이론적으로 효율적이지 않은 알고리즘보다 36.54~74.73배의 병렬 성능 향상을 달성한다.
  • rMAT 합성 그래프에서, 작은 배치와 더 높은 밀도에서 Makkar 등 [MBG17]의 방법보다 최대 3.31배 빠른 성능을 기록한다. 이는 고차수 정점 업데이트로 인해 그들의 방법이 성능 저하를 겪기 때문이다.
  • 행렬 곱셈 기반 알고리즘은 기존의 동적 접근 방식보다 밀도 높은 그래프에서 점 渐진적으로 더 빠른 작업량 유계를 달성한다. 이는 병렬 빠른 행렬 곱셈 알고리즘이 상수 $\omega_p$를 가진다고 가정할 때 성립한다.
  • 오르쿠트 그래프에서는 Makkar 등이 낮은 차수 정점 덕분에 더 나은 성능을 보이지만, 고차수 정점이 포함된 트위터 그래프에서는 제안된 알고리즘이 여전히 경쟁력 있고 훨씬 더 빠른 성능을 발휘한다.
  • 제안된 알고리즘은 그래프 밀도 증가에 대해 안정적인 성능을 유지하는 반면, Makkar 등은 차수에 의존하는 업데이트 오버헤드로 인해 성능 저하를 보이며, 이는 제안된 접근 방식의 강건성을 입증한다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.