Skip to main content
QUICK REVIEW

[논문 리뷰] Parallel Algorithms for Counting Triangles in Networks with Large Degrees.

Shaikh Arifuzzaman, Maleq Khan|arXiv (Cornell University)|2014. 06. 22.
Complex Network Analysis Techniques참고 문헌 26인용 수 3
한 줄 요약

이 논문은 고도수 노드를 가진 대규모 네트워크에서 기존 방법이 과도한 중간 데이터 또는 불균형한 작업 분배로 인해 실패하는 상황에서, MPI 기반의 병렬 알고리즘 두 가지를 제안한다. 첫 번째 알고리즘은 메모리 효율성을 위해 겹치지 않는 분할을 사용하고, 두 번째 알고리즘은 메모리 내 네트워크에서 동적 로드 밸런싱을 적용하여 높은 프로세서 수에서도 강력한 확장성과 성능을 달성한다.

ABSTRACT

Finding the number of triangles in a network is an important problem in the analysis of complex networks. The number of triangles also has important applications in data mining. Existing distributed memory parallel algorithms for counting triangles are either Map-Reduce based or message passing interface (MPI) based and work with overlapping partitions of the given network. These algorithms are designed for very sparse networks and do not work well when the degrees of the nodes are relatively larger. For networks with larger degrees, Map-Reduce based algorithm generates prohibitively large intermediate data, and in MPI based algorithms with overlapping partitions, each partition can grow as large as the original network, wiping out the benefit of partitioning the network. In this paper, we present two efficient MPI-based parallel algorithms for counting triangles in massive networks with large degrees. The first algorithm is a space-efficient algorithm for networks that do not fit in the main memory of a single compute node. This algorithm divides the network into non-overlapping partitions. The second algorithm is for the case where the main memory of each node is large enough to contain the entire network. We observe that for such a case, computation load can be balanced dynamically and present a dynamic load balancing scheme which improves the performance significantly. Both of our algorithms scale well to large networks and to a large number of processors.

연구 동기 및 목표

  • 고도수 노드를 가진 네트워크에서 기존의 Map-Reduce 및 겹치는 분할을 사용하는 MPI 알고리즘의 확장성 한계를 해결한다.
  • 단일 노드의 주 메모리 용량을 초과하는 네트워크에서 공간 효율적인 삼각형 수 세기 알고리즘을 설계한다.
  • 메모리 내 네트워크에서 성능 향상과 프로세서 간 계산 균형을 확보하기 위해 동적 로드 밸런싱 기반의 전략을 개발한다.
  • 두 알고리즘이 대규모 네트워크와 대규모 프로세서 수에 대해 효과적으로 확장되도록 보장한다.
  • 기존 접근 방식의 단점인 과도한 중간 데이터 및 분할 크기 증가 문제를 해결한다.

제안 방법

  • 겹치는 분할을 사용하는 MPI 방법에서 발생하는 메모리 폭발 문제를 방지하기 위해 네트워크를 겹치지 않는 분할으로 나눈다.
  • MPI 기반의 통신 모델을 사용해 분산된 노드 간 삼각형 수 세기 작업을 조율한다.
  • 분할을 독립적으로 처리하고 부분 삼각형 수를 집계하는 공간 효율적인 알고리즘을 구현한다.
  • 메모리 내 네트워크의 경우, 실행 중에 작업을 재분배하여 프로세서 활용도를 유지하는 동적 로드 밸런싱 전략을 적용한다.
  • 네트워크의 고도수 구조를 활용해 데이터 분포를 최적화하고 중복 계산을 줄인다.
  • 분산 메모리 시스템에서 통신 오버헤드를 최소화하고 병렬 효율성을 극대화할 수 있도록 알고리즘을 설계한다.

실험 결과

연구 질문

  • RQ1겹치지 않는 분할 전략은 고도수 네트워크의 삼각형 수 세기에서 중간 데이터 및 메모리 압박을 효과적으로 줄일 수 있는가?
  • RQ2전체 네트워크가 주 메모리에 맞는 경우, 동적 로드 밸런싱은 성능 향상에 어떻게 기여하는가?
  • RQ3제안된 알고리즘이 네트워크 크기와 프로세서 수 증가에 따라 어느 정도 확장 가능한가?
  • RQ4Map-Reduce 및 겹치는 분할을 사용하는 MPI 방법과 비교해, 제안된 MPI 기반 알고리즘이 성능과 메모리 사용 측면에서 어떻게 우월한가?
  • RQ5노드의 도수 분포가 삼각형 수 세기 알고리즘의 효율성에 어떤 영향을 미치는가?

주요 결과

  • 겹치지 않는 분할 전략은 Map-Reduce 및 겹치는 분할을 사용하는 MPI 방법에 비해 중간 데이터 볼륨을 크게 줄였다.
  • 동적 로드 밸런싱 기반의 전략은 메모리 내 환경에서 높은 프로세서 활용도를 유지함으로써 성능을 향상시켰다.
  • 두 알고리즘이 대규모 네트워크와 대규모 프로세서 수에 대해 잘 확장되며, 강력한 확장성을 보였다.
  • 공간 효율적인 알고리즘 덕분에 단일 컴퓨팅 노드의 주 메모리 용량을 초과하는 네트워크에서도 삼각형 수 세기를 수행할 수 있었다.
  • 고도수 노드를 가진 네트워크에서 기존 방법에 비해 메모리 효율성과 런타임 측면에서 제안된 알고리즘이 뛰어났다.
  • 동적 로드 밸런싱 접근 방식은 유휴 시간과 통신 병목 현상을 줄여 대규모 그래프에서 더 빠른 수렴을 이끌어냈다.

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

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

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

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