[논문 리뷰] Message-Combining Algorithms for Isomorphic, Sparse Collective Communication
이 논문은 d차원 토러스와 같은 정규적인 토폴로지에서 동형이며 희소한 집합적 통신을 위한 국소적으로 계산 가능한 메시지 결합 알고리즘을 제안한다. 이로 인해 s개의 프로세스 이웃에 대한 통신 라운드 수가 s에서 최대 Nd로 감소한다. 이 방법은 최대 6배 적은 라운드 수를 달성하며(예: 27점 스텐실에서 26→6), 소형 메시지(최대 1 kB)의 경우 지연 시간을 크게 낮춘다. 기존 MPI 이웃 집합적 통신과 난이한 방법보다 성능이 뛰어나며, 0복사, 파생 데이터형 기반 스케줄링을 통해 달성된다.
Isomorphic (sparse) collective communication is a form of collective communication in which all involved processes communicate in small, identically structured neighborhoods of other processes. Isomorphic neighborhoods are defined via an embedding of the processes in a regularly structured topology, e.g., $d$-dimensional torus, which may correspond to the physical communication network of the underlying system. Isomorphic collective communication is useful for implementing stencil and other regular, sparse distributed computations, where the assumption that all processes behave (almost) symmetrically is justified. In this paper, we show how efficient message-combining communication schedules for isomorphic, sparse collective communication can easily and efficiently be computed by purely local computations. We give schemes for \emph{isomorphic \alltoall} and \emph{\allgather} communication that reduce the number of communication rounds and thereby the communication latency from $s$ to at most $Nd$, for neighborhoods consisting of $s$ processes with the (small) factor $N$ depending on the structure of the neighborhood and the capabilities of the communication system. Using these schedules, we give \emph{zero-copy implementations} of the isomorphic collectives using MPI and its derived datatypes to eliminate explicit, process-local copy operations. By benchmarking the collective communication algorithms against straightforward implementations and against the corresponding MPI neighborhood collectives, we document significant latency improvements of our implementations for block sizes of up to a few kilobytes. We discuss further optimizations for computing even better schedules, some of which have been implemented and benchmarked.
연구 동기 및 목표
- 스텐실 계산에서 흔히 발생하는 동형이며 희소한 통신 패턴을 처리하는 데 있어 표준 MPI 이웃 집합적 통신의 비효율성을 해결하기 위해.
- 프로세스 이웃의 전역적인 규칙성 구조를 국소적 계산을 통해 활용하여 저지연 집합적 통신을 가능하게 하기 위해.
- 중복 데이터 복사 없이 0복사 구현을 가능하게 하는 MPI 파생 데이터형 기반의 지속 가능한 인터페이스 설계를 위해.
- 메시지 결합 스케줄링이 국소적으로 계산 가능하며, 기존 MPI 및 난이한 방법 대비 측정 가능한 성능 향상을 이끌 수 있음을 입증하기 위해.
- 만약 동형성 외부적으로 선언된다면, 이러한 최적화가 MPI 라이브러리에 통합될 수 있는지 탐색하기 위해.
제안 방법
- d차원 토러스 토폴로지에서 동일한 상대 오프셋 벡터를 통해 동형 이웃을 정의함으로써, 모든 프로세스에서 대칭적인 통신 패턴을 가능하게 한다.
- 다수의 이웃으로 향하는 메시지를 단일의 더 큰 메시지로 통합하여, 토러스 차원 방향으로만 전송하는 메시지 결합 스케줄링을 구성함으로써 통신 라운드 수를 s에서 Nd로 감소시킨다.
- MPI 파생 데이터형을 사용하여 0복사 통신을 구현함으로써 명시적 로컬 버퍼 복사 없이 오버헤드를 줄인다.
- 사전에 계산된 스케줄링을 사용한 지속 가능한 인터페이스를 구현하여, 특히 반복적인 작업에서 설정 비용을 분할한다.
- 두 가지 변종을 설계함: 하나는 라운드 수를 최적화하는(중간 점프를 허용함), 다른 하나는 라운드 수와 전송량을 균형 잡는(직접 통신 허용함).
- 다양한 아키텍처(예: ARCHER, 토러스가 아닌 시스템)에서 메시지 크기와 프로세스 수가 다양할 때, 난이한 방법 및 MPI 이웃 집합적 통신과의 벤치마크를 실시한다.
실험 결과
연구 질문
- RQ1이웃 구조의 국소적 지식만을 사용하여, 동형 전이-전체 및 전집합 통신에 대해 효율적이고 死록이 없는 메시지 결합 스케줄링을 계산할 수 있는가?
- RQ2메시지 결합이 난이한 방법 또는 표준 MPI 방법 대비 희소하고 동형적인 집합적 통신에서 통신 라운드 수와 지연 시간을 얼마나 줄일 수 있는가?
- RQ3메시지 크기, 이웃 구조, 기반 네트워크 토폴로지(예: 토러스 대비 비토러스)에 따라 성능 향상은 어떻게 달라지는가?
- RQ4만약 동형성이 외부적으로 선언된다면, 제안된 알고리즘이 기존 MPI 라이브러리에 효과적으로 통합될 수 있는가?
- RQ5동형 메시지 결합 스케줄링에서 통신 라운드 수와 총 전송량 사이의 상충 관계는 무엇인가?
주요 결과
- 제안된 메시지 결합 알고리즘은 통신 라운드 수를 s에서 최대 Nd로 줄여, 1포트 시스템에서 27점 스텐실에 대해 6배의 라운드 감소(26→6)를 달성한다.
- 1 kB 이하의 메시지 크기에서는 최적화된 구현이 표준 MPI 이웃 집합적 통신 및 난이한 방법보다 뚜렷한 성능 우위를 보이며, 특히 지연 시간에 민감한 워크로드에서 두각을 나타낸다.
- ARCHER 시스템에서는 MPI의 내장 집합적 통신이 더 나은 피ipel라인 처리 및 다중 포트 네트워크 지원 덕분에 더 뛰어난 성능을 보였지만, 메시지 결합 방법은 여전히 난이한 알고리즘 대비 큰 요소로 향상되었다.
- MPI 파생 데이터형 기반의 0복사 접근 방식은 프로세스 내 로컬 복사 작업을 제거하여 지연 시간 감소와 성능 향상에 기여했다.
- 메시지 크기가 커지면서 통신 볼륨 증가와 노드당 프로세스 수 증가로 인해 성능 향상은 감소한다. 특히 분산 구성에서는 더욱 두드러진다.
- 이 연구는 동형 이웃을 식별할 수 있음이, 현재 표준 MPI 구현에서 활용되지 않는 다수의 최적화 기회를 제공함을 확인한다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.