실제 PIM 시스템을 활용한 고성능 그래프 처리와 선형대수 분석
초록
본 논문은 상용 PIM 칩인 UPMEM을 기반으로 그래프 알고리즘을 선형대수 형태로 구현하고, 다양한 압축 행렬 포맷·파티셔닝 전략을 평가한다. SpMV 대신 희소벡터를 이용한 SpMSpV를 도입해 데이터 전송 비용을 크게 감소시켰으며, BFS·SSSP·PPR에서 CPU·GPU 대비 2.6×~10.4×의 속도 향상을 달성했다. 또한 현재 PIM 아키텍처의 연산·메모리·통신 병목을 규명하고, 파이프라인 구조 개선, 비블로킹 DMA, DPUs 간 직접 네트워크 구축 등을 제안한다.
상세 분석
ALPHA‑PIM은 그래프 알고리즘을 선형대수 연산으로 재구성함으로써 메모리‑바운드 특성을 PIM 환경에 최적화한다. 기존 연구가 주로 가상·맞춤형 PIM 설계를 제시한 반면, 본 연구는 상용 UPMEM DRAM‑Processing Unit(DPU) 2 560개를 실제 시스템에 배치해 실험을 진행했다. 핵심은 희소 행렬·희소 벡터 곱(SpMSpV) 구현이다. CSR, CSC, COO 등 세 가지 압축 포맷을 1D(행)·1D(열)·2D 파티셔닝으로 조합해 18가지 변형을 구현했으며, 입력 벡터의 희소도에 따라 SpMV와 SpMSpV를 동적으로 선택하는 비용 모델을 제시했다. 실험 결과, 최적 파티셔닝(예: CSR‑2D)에서는 동일 알고리즘이 최악 파티셔닝 대비 25배 빠른 실행 시간을 보였다.
성능 병목은 크게 세 축으로 구분된다. 첫째, 연산 측면에서는 DPU 내부 14‑stage 파이프라인의 구조적 해저드와 레지스터 파일의 짝수·홀수 구분으로 인해 연속 명령어 발행 간 11 사이클 간격이 강제돼 ILP가 제한된다. 둘째, 메모리 측면에서는 MRAM→WRAM DMA 전송이 블로킹 방식이며, 입력 벡터 로드·결과 회수에 소요되는 대기 시간이 전체 사이클의 30~50%를 차지한다. 셋째, 통신 측면에서는 현재 DPU 간 직접 연결이 없고, 모든 데이터 교환이 호스트 CPU를 거치기 때문에 파티션 간 합병(Merge) 단계에서 심각한 오버헤드가 발생한다.
이에 대한 개선 방안으로는 (1) 파이프라인에 포워딩 및 다중 발행 지원을 추가해 구조적 해저드 해소, (2) 비블로킹 DMA와 다중 채널 전송 파이프라인 도입으로 메모리 대기 최소화, (3) DPU‑DPU 간 라우팅 네트워크 혹은 스위치 기반 인터커넥트를 구현해 합병 비용을 현장(local)에서 처리하도록 설계하는 것이 제시된다. 이러한 하드웨어 개선과 함께 소프트웨어 레벨에서는 스파스 벡터 압축 포맷을 동적으로 선택하고, 파티션 크기를 그래프의 degree 분포에 맞춰 조정하는 자동 튜닝 기법이 필요하다.
댓글 및 학술 토론
Loading comments...
의견 남기기