계층형 GPU 인터커넥트에서 트라이던트 파티셔닝을 이용한 통신 회피형 SpGEMM
초록
**
본 논문은 비구조적 희소 행렬의 곱셈인 SpGEMM을 위해, 노드 내부와 외부의 대역폭 차이를 활용한 계층형 2D 분산 알고리즘인 Trident를 제안한다. Trident는 2D‑1D 혼합 파티셔닝(노드 간 2D, 노드 내 1D)과 비동기 통신을 결합해 인터노드 전송을 최소화하고, 고대역폭 NVLink·Infinity Fabric을 통한 인트라노드 집합을 효율적으로 활용한다. 실험 결과 Perlmutter 슈퍼컴퓨터에서 비구조 행렬에 대해 기존 2D Sparse SUMMA 대비 최대 2.38배, 평균 1.54배 가속을 달성했으며, Markov Clustering에서도 2배 수준의 속도 향상을 보였다.
**
상세 분석
**
Trident는 현대 슈퍼컴퓨터가 갖는 다중 GPU‑노드 구조와 계층형 네트워크 특성을 명시적으로 모델링한다는 점에서 기존 2D SpGEMM 구현과 근본적으로 차별화된다. 기존 Sparse SUMMA는 √P 단계의 집단 통신을 사용해 인터노드 전송량을 O(√P)로 줄였지만, 각 단계마다 전역 동기화가 필요해 레이턴시 비용이 누적된다. Trident는 ‘2D‑1D 하이브리드’ 파티셔닝을 도입한다. 먼저 전체 프로세스 격자를 √P × √P 로 나눈 뒤, 각 노드 내부에서는 GPU 수 λ에 따라 1D 파티션을 적용한다. 이렇게 하면 노드 간 통신은 여전히 2D 방식으로 제한되지만, 노드 내부에서는 동일한 데이터를 여러 GPU가 공유할 필요가 없어 NVLink 기반의 NCCL 집합 연산으로 데이터를 집계·재사용한다.
통신 회피 전략은 두 단계로 구성된다. ① 인터노드 피어‑투‑피어 전송을 한 번만 수행해 필요한 A와 B의 타일을 각 노드에 전달한다. ② 전달된 타일을 노드 내부에서 NCCL AllGather/ReduceScatter 로 재배치하고, 로컬 GPU에서 KokkosKernels 기반의 희소 행렬 곱을 수행한다. 비동기 MPI_Isend·MPI_Irecv와 NCCL 비동기 집합을 겹쳐 파이프라인화함으로써 인터노드 레이턴시와 인트라노드 대역폭을 동시에 최적화한다.
알고리즘 복잡도 측면에서 Trident는 인터노드 전송량을 기존 2D 대비 최대 2배 감소시키고, 통신 단계 수를 √P에서 O(1) 수준으로 압축한다(실제 구현에서는 2단계만 사용). 메모리 사용량은 노드 내 1D 파티션으로 인해 약간 증가하지만, GPU 메모리 용량이 충분히 큰 최신 시스템에서는 문제가 되지 않는다. 또한, 비구조 행렬의 비정형 비밀도(distribution)에도 강인한 로드 밸런스를 유지한다.
실험에서는 NERSC Perlmutter(A100 × 4, NVLink, Slingshot‑11)에서 256 GPU(64노드)까지 확장했으며, 대표적인 비구조 행렬(예: protein‑similarity, genome‑assembly, MCL 입력)들을 대상으로 성능을 측정했다. 평균 1.54×, 최고 2.38× 가속을 기록했으며, 특히 인터노드 통신량이 2× 감소한 경우에 가장 큰 이득을 보였다. 1D Sparsity‑aware Trilinos 구현과 비교했을 때도 평균 2.96×, 최고 5.95×의 가속을 달성했다. Markov Clustering 워크로드에 Trident를 적용하면 전체 파이프라인이 2× 빨라져, 실제 과학 응용에서의 실용성을 입증했다.
이 논문은 계층형 네트워크를 고려한 SpGEMM 설계가 아직 초기 단계임을 보여주며, 향후 3D 파티셔닝, 동적 로드 밸런싱, 그리고 다양한 GPU‑CPU 이종 시스템에 대한 확장 가능성을 제시한다. 특히, NCCL·MPI 혼합 비동기 모델이 비정형 데이터 흐름을 효율적으로 처리할 수 있음을 실증함으로써, 차세대 대규모 그래프·행렬 연산 라이브러리 설계에 중요한 참고 자료가 될 것이다.
**
댓글 및 학술 토론
Loading comments...
의견 남기기