Alapfogalmak
GVE-Louvain은 Louvain 알고리즘의 가장 효율적인 멀티코어 구현체로, 기존 구현체들에 비해 최대 50배 빠른 성능을 보인다.
Kivonat
이 기술 보고서는 Louvain 알고리즘의 가장 효율적인 멀티코어 구현체인 GVE-Louvain을 소개한다.
GVE-Louvain은 다음과 같은 최적화 기법을 사용한다:
- 비동기 계산
- 병렬 prefix sum과 미리 할당된 CSR 데이터 구조를 사용하여 커뮤니티 정점 찾기와 super-vertex 그래프 저장
- 충돌 없는 스레드별 해시 테이블 사용
- OpenMP의 동적 루프 스케줄링, 최대 반복 횟수 제한, 임계값 스케일링 최적화, 정점 가지치기 등
이러한 최적화를 통해 GVE-Louvain은 기존 구현체들에 비해 최대 50배 빠른 성능을 보인다. 특히 3.8B 간선 그래프에 대해 560M 간선/초의 처리 속도를 달성한다. 또한 스레드 수가 2배 증가할 때마다 평균 1.6배 성능이 향상된다.
Statisztikák
3.8B 간선 그래프에 대해 560M 간선/초의 처리 속도 달성
스레드 수 2배 증가 시 평균 1.6배 성능 향상
Idézetek
"GVE-Louvain은 Louvain 알고리즘의 가장 효율적인 멀티코어 구현체로, 기존 구현체들에 비해 최대 50배 빠른 성능을 보인다."
"GVE-Louvain은 3.8B 간선 그래프에 대해 560M 간선/초의 처리 속도를 달성한다."
"GVE-Louvain은 스레드 수가 2배 증가할 때마다 평균 1.6배 성능이 향상된다."