[논문 리뷰] Accurate runtime selection of optimal MPI collective algorithms using analytical performance modelling
이 논문은 알고리즘 코드에서 직접 분석 성능 모델을 유도하고 알고리즘 전용 통신 실험을 통해 매개변수를 추정하여 정확하고 효율적인 런타임에서 최적의 MPI 집합 알고리즘을 선택하는 모델 기반 접근법을 제안한다. 이 방법은 Open MPI의 브로드캐스트 및 게더 연산에서 100%의 선택 정확도를 달성하였으며, 종종 최적 알고리즘을 선택하지 못하는 경험적 결론 함수보다 뛰어난 성능을 보였다.
The performance of collective operations has been a critical issue since the advent of MPI. Many algorithms have been proposed for each MPI collective operation but none of them proved optimal in all situations. Different algorithms demonstrate superior performance depending on the platform, the message size, the number of processes, etc. MPI implementations perform the selection of the collective algorithm empirically, executing a simple runtime decision function. While efficient, this approach does not guarantee the optimal selection. As a more accurate but equally efficient alternative, the use of analytical performance models of collective algorithms for the selection process was proposed and studied. Unfortunately, the previous attempts in this direction have not been successful. We revisit the analytical model-based approach and propose two innovations that significantly improve the selective accuracy of analytical models: (1) We derive analytical models from the code implementing the algorithms rather than from their high-level mathematical definitions. This results in more detailed models. (2) We estimate model parameters separately for each collective algorithm and include the execution of this algorithm in the corresponding communication experiment. We experimentally demonstrate the accuracy and efficiency of our approach using Open MPI broadcast and gather algorithms and a Grid5000 cluster.
연구 동기 및 목표
- 다양한 플랫폼, 메시지 크기, 프로세스 수 간에 항상 최적의 MPI 집합 알고리즘 선택이 이루어지지 않는 문제를 해결하기 위해.
- 효율성은 높지만 최적 알고리즘 선택을 보장하지 못하는 기존의 경험적 결론 함수를 개선하기 위해.
- 이전에는 모델 정확도가 부족하여 실패했던 분석 성능 모델링 접근법을 부활하고 향상시키기 위해.
- 실제 MPI 구현 환경에 적합하게 높은 정확도와 낮은 런타임 오버헤드를 동시에 확보하는 방법을 개발하기 위해.
- 실제 클러스터에서 Open MPI의 브로드캐스트 및 게더 알고리즘을 대상으로 실험적으로 방법을 검증하기 위해.
제안 방법
- 고수준 수학적 추상화가 아닌, MPI 집합 알고리즘의 소스 코드에서 직접 분석 성능 모델을 유도하여 저수준 구현 세부 정보를 반영하기 위해.
- 대상 알고리즘이 실행 시간에 지배적인 영향을 미치도록 통신 실험을 설계하여 매개변수 추정의 정확도를 확보하기 위해.
- 측정된 실행 시간에 대해 Huber 회귀를 사용하여 각 알고리즘 별로 별도로 모델 매개변수(예: 지연 α 및 대역폭 β)를 추정하기 위해.
- 결과적으로 도출된 세밀한 분석 모델을 결론 함수에 활용하여 메시지 크기와 프로세스 수에 기반해 런타임에서 최적 알고리즘을 선택하기 위해.
- 메시지 크기 m에 대해 T = α + β × m 형태의 점대점 통신 모델을 사용하여 모델을 구성하고, 제어된 실험을 통해 매개변수를 校정하기 위해.
- 모델 기반 결론 함수를 MPI 루틴에 통합하여 효율적이고 정확하며 투명한 알고리즘 선택을 가능하게 하기 위해.
실험 결과
연구 질문
- RQ1소스 코드에서 유도된 분석 성능 모델은 고수준 수학적 정의에 기반한 모델보다 더 높은 정확도를 달성할 수 있는가?
- RQ2알고리즘 전용 실험을 통해 각 알고리즘 별로 별도로 매개변수를 추정하는 것이 선택 정확도를 상당히 향상시키는가?
- RQ3모델 기반 접근법은 경험적 결론 함수의 효율성과 동등한 수준이면서도 최적 알고리즘 선택을 보장할 수 있는가?
- RQ4점대점 통신 사용의 맥락이 집합 알고리즘 내에서 효과적인 통신 시간에 어떤 영향을 미치는가?
- RQ5제안된 방법은 다양한 메시지 크기와 프로세스 수 간에 일관되게 최적의 MPI 집합 알고리즘을 선택할 수 있는가?
주요 결과
- 제안된 방법은 테스트된 모든 구성에서 MPI_Bcast 및 MPI_Gather 알고리즘의 최적 선택에 대해 100%의 정확도를 달성하였으며, Open MPI의 기본 경험적 결론 함수를 뛰어넘었다.
- 코드 구현에서 유도된 분석 모델은 알고리즘 간 유사한 고수준 로직을 가진 경우에도 특정 구현 세부 정보를 반영하여 정확한 성능 비교를 가능하게 하였다.
- 알고리즘 지배 실험을 통한 매개변수 추정은 α 및 β에 대해 일관되고 정확한 값을 도출하였으며, 알고리즘 간 및 집합 연산 간에 뚜렷한 차이를 관찰할 수 있었다.
- Split-binary 및 Binary tree 브로드캐스트 알고리즘은 동일한 가상 토폴로지를 사용했음에도 불구하고 효과적인 통신 시간이 다름을 보였으며, 이는 병렬성 및 통신 패턴의 차이에 기인하였다.
- 모델 기반 결론 함수는 경험적 방법과 동일한 효율성을 확보하였으며, 최소한의 런타임 오버헤드를 기록하여 MPI 라이브러리의 생산적 사용에 적합하였다.
- 실험 결과는 구현 인지 모델과 목표 지향 실험을 통해 적절히 校정된 분석 모델링이 경험적 결론 함수를 신뢰성 있게 대체할 수 있음을 보여주었다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.