[논문 리뷰] Design and implementation of self-adaptable parallel algorithms for scientific computing on highly heterogeneous HPC platforms
이 논문은 고도로 이질적인 HPC 플랫폼을 위한 새로운 유형의 자기적응형 병렬 알고리즘을 제안하며, 실행 중에 프로세서 속도 함수를 동적으로 추정함으로써 사전 계산된 모델에 의존하지 않는다. 낮은 계산 비용으로 부분적이고 정확한 속도 함수 추정치를 구성함으로써, 실행 시간이 최적화된 응용 프로그램의 총 실행 시간보다 수개월 이상 낮은 수준의 분포 시간을 확보하는 효율적이고 거의 최적에 가까운 작업 분배를 가능하게 하며, 자기적응형 시스템에 실현 가능하게 한다.
Traditional heterogeneous parallel algorithms, designed for heterogeneous clusters of workstations, are based on the assumption that the absolute speed of the processors does not depend on the size of the computational task. This assumption proved inaccurate for modern and perspective highly heterogeneous HPC platforms. New class of algorithms based on the functional performance model (FPM), representing the speed of the processor by a function of problem size, has been recently proposed. These algorithms cannot be however employed in self-adaptable applications because of very high cost of construction of the functional performance model. The paper presents a new class of parallel algorithms for highly heterogeneous HPC platforms. Like traditional FPM-based algorithms, these algorithms assume that the speed of the processors is characterized by speed functions rather than speed constants. Unlike the traditional algorithms, they do not assume the speed functions to be given. Instead, they estimate the speed functions of the processors for different problem sizes during their execution. These algorithms do not construct the full speed function for each processor but rather build and use their partial estimates sufficient for optimal distribution of computations with a given accuracy. The low execution cost of distribution of computations between heterogeneous processors in these algorithms make them suitable for employment in self-adaptable applications. Experiments with parallel matrix multiplication applications based on this approach are performed on local and global heterogeneous computational clusters. The results show that the execution time of optimal matrix distribution between processors is significantly less, by orders of magnitude, than the total execution time of the optimized application.
연구 동기 및 목표
- 문제 크기와 무관하게 일정한 프로세서 속도를 가정하는 전통적인 이질적 병렬 알고리즘의 한계를 해결하기 위해.
- 자기적응형 응용 프로그램에서 전체 기능 성능 모델(FPM)을 구성하는 데 높은 비용이 드는 문제를 해결하기 위해.
- 최적의 로드 밸런싱을 위해 프로세서 속도 함수의 필요한 부분만 추정하는 새로운 병렬 알고리즘 클래스를 설계하기 위해.
- 분포 결정의 런타임 오버헤드를 최소화하여 과학 계산에서 실시간 적응에 적합한 방법을 확보하기 위해.
- 지역 및 글로벌 이질적 클러스터에서 행렬 곱셈 워크로드을 대상으로 실험을 통해 접근법을 검증하기 위해.
제안 방법
- 응용 프로그램 실행 중에 부분적 함수 근사만을 사용하여 프로세서 속도 함수를 동적으로 추정하는 방법을 도입한다.
- 고정된 속도 상수에 의존하지 않고 문제 크기의 함수로 프로세서 성능을 모델링한다.
- 근사 최적의 로드 분포를 달성하기 위해 속도 함수의 최소한의 필수 세그먼트만 구성하고 사용한다.
- 관련 문제 크기와 런타임 측정치에 집중함으로써 전체 FPM 구축을 피한다.
- 낮은 비용의 분포 메커니즘에 이러한 부분 추정치를 통합하여 런타임 비용을 최소화한다.
- 이 방법은 이질적 클러스터에서의 병렬 행렬 곱셈을 사용하여 평가되며, 분포 비용을 총 응용 프로그램 실행 시간과 비교한다.
실험 결과
연구 질문
- RQ1실행 중에 부분적으로 추정된 프로세서 속도 함수는 고도로 이질적인 HPC 플랫폼에서 효율적인 로드 밸런싱을 가능하게 하는가?
- RQ2사전 계산된 FPM 대신 추정된 속도 함수를 사용할 경우 분포 결정의 런타임 비용은 얼마인가?
- RQ3분포 오버헤드는 최적화된 과학 응용 프로그램의 총 실행 시간에 비해 얼마나 되는가?
- RQ4적응 오버헤드가 최소한이어야 하는 자기적응형 응용 프로그램에서 제안된 방법이 효과적으로 사용될 수 있는가?
- RQ5부분 추정 접근법은 전체 FPM 기반 방법과 비교해 작업 분배 정확도를 어느 정도 유지하는가?
주요 결과
- 최적의 분포를 위한 실행 시간이 부분 속도 함수 추정치를 사용할 경우, 최적화된 응용 프로그램의 총 실행 시간보다 수개월 이상 낮게 나타나며, 뚜렷하게 낮아진다.
- 제안된 방법은 최소한의 런타임 비용으로 거의 최적의 로드 분포를 달성하여 자기적응형 시스템에 적합하다.
- 실행 중 속도 함수의 동적 추정은 전체 FPM 구축의 높은 비용을 피함으로써 실용적인 구현을 가능하게 한다.
- 지역 및 글로벌 이질적 클러스터에서의 실험을 통해 실세계 과학 계산 워크로드에서 이 방법의 효율성과 확장성을 확인하였다.
- 이 방법은 적응 오버헤드를 총 응용 프로그램 시간의 무시할 수 없는 비율로 줄여 과학 응용 프로그램에서 실시간 적응을 가능하게 한다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.