[논문 리뷰] FastSV: A Distributed-Memory Connected Component Algorithm with Fast Convergence
FastSV는 대규모 무방향 그래프의 연결 요소를 계산하기 위한 고성능이고 확장 가능한 분산 메모리 알고리즘으로, GraphBLAS에서 유도된 간소화된 선형 대수 연산과 새로운 후크 전략을 활용하여 수렴 속도를 가속화한다. Cray XC40에서 262,144개의 코어를 사용하여 1340억 개 간선을 가진 하이퍼링크 그래프를 30초 만에 처리하며, 이전 최고 성능 알고리즘인 LACC보다 평균 2.21배 빠른 성능을 기록한다.
This paper presents a new distributed-memory algorithm called FastSV for finding connected components in an undirected graph. Our algorithm simplifies the classic Shiloach-Vishkin algorithm and employs several novel and efficient hooking strategies for faster convergence. We map different steps of FastSV to linear algebraic operations and implement them with the help of scalable graph libraries. FastSV uses sparse operations to avoid redundant work and optimized MPI communication to avoid bottlenecks. The resultant algorithm shows high-performance and scalability as it can find the connected components of a hyperlink graph with over 134B edges in 30 seconds using 262K cores on a Cray XC40 supercomputer. FastSV outperforms the state-of-the-art algorithm by an average speedup of 2.21x (max 4.27x) on a variety of real-world graphs.
연구 동기 및 목표
- 대규모 그래프에서 연결 요소를 더 빠르고 확장 가능한 분산 메모리 알고리즘을 설계한다.
- Shiloach-Vishkin 알고리즘을 간소화하여 여분의 단계를 제거하면서도 수렴 속도를 유지한다.
- 희소 연산의 동적 사용과 효율적인 MPI 통신을 통해 성능을 최적화한다.
- 수백만 개의 코어를 갖춘 슈퍼컴퓨터 플랫폼에서 높은 확장성을 달성한다.
- LACC 및 ParConnect와 같은 기존 최고 수준의 알고리즘보다 런타임과 확장성 면에서 뛰어난 성능을 확보한다.
제안 방법
- FastSV는 조건부 트리 후크 및 단축 기법이라는 두 가지 핵심 단계만 유지하여 Shiloach-Vishkin 알고리즘을 단순화한다.
- 이러한 단계들을 GraphBLAS 연산에 매핑하여 효율성을 확보한다. 주로 희소 행렬-벡터 곱셈(SpMV)과 희소 행렬-희소 벡터 곱셈(SpMSpV)을 사용한다.
- 부모의 부모 벡터 변화를 기반으로 SpMV와 SpMSpV 사이에서 동적으로 선택하여 불필요한 계산을 줄인다.
- 분산 메모리 실행에서의 병목 현상을 방지하기 위해 최적화된 MPI 통신 패tern을 적용한다.
- 수렴 속도를 가속화하기 위해 새로운 후크 전략을 도입하여 반복 횟수를 감소시킨다.
- 분산 메모리 플랫폼을 위해 CombBLAS를 사용하고, 공유 메모리 지원을 위해 SuiteSparse:GraphBLAS와 통합한다.
실험 결과
연구 질문
- RQ1Shiloach-Vishkin 알고리즘의 단순화된 버전이 분산 메모리 시스템에서 더 빠른 수렴과 향상된 성능을 달성할 수 있는가?
- RQ2GraphBLAS 연산을 어떻게 효과적으로 활용하여 대규모 스케일에서 연결 요소 알고리즘을 표현하고 최적화할 수 있는가?
- RQ3동적 연산 선택(SpMV 대비 SpMSpV)과 통신 최적화가 대규모 그래프에서 성능에 미치는 영향은 무엇인가?
- RQ4새로운 후크 전략은 정확성과 확장성에 영향을 주지 않으면서 반복 횟수를 줄일 수 있는가?
- RQ5실제 및 합성 그래프에서 FastSV는 실제 최고 수준의 LACC 알고리즘과 비교해 성능와 확장성 면에서 어떻게 성과를 내는가?
주요 결과
- FastSV는 Cray XC40 슈퍼컴퓨터에서 262,144개 코어를 사용하여 1340억 개 간선을 가진 하이퍼링크 그래프의 연결 요소를 단 30초 만에 계산한다.
- 다양한 실세계 그래프에서 이전 최고 수준의 LACC 알고리즘보다 평균 2.21배(최대 4.27배) 빠른 성능을 기록한다.
- 동적 SpMV/SpMSpV 선택 전략을 사용함으로써 특히 고밀도 그래프에서 후반 반복에서 런타임이 크게 감소한다.
- 단순화된 논리와 최적화된 통신 덕분에 FastSV는 불필요한 후크를 제거함으로써 더 많은 반복 횟수를 요구하지만 LACC를 초월하는 확장성과 성능을 확보한다.
- 이 알고리즘은 일반적이고 이식 가능하며, 분산 메모리(CombBLAS)와 공유 메모리(SuiteSparse:GraphBLAS) 플랫폼을 모두 지원한다.
- FastSV는 최대 32.7억 개 정점과 1249억 개 간선을 가진 그래프에서도 뛰어난 성능을 보이며, 엑사스케일 데이터 워크로드에 대응할 준비가 되어 있음을 확인한다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.