Skip to main content
QUICK REVIEW

[논문 리뷰] To Parallelize or Not to Parallelize, Speed Up Issue

Alaa Elnashar|arXiv (Cornell University)|2011. 03. 29.
Parallel Computing and Optimization Techniques참고 문헌 10인용 수 5
한 줄 요약

이 논문은 MPI 기반 병렬 응용 프로그램에서 병렬화 오버헤드와 성능 향상 사이의 트레이드오프를 분석함으로써 병렬화의 성능 향상을 예측하기 위한 실험적 방법을 제안한다. 병렬화가 유의미한지 평가하여 고성능 계산 환경에서 불필요한 자원 비용을 피할 수 있는 의사결정 프레임워크를 제공한다.

ABSTRACT

Running parallel applications requires special and expensive processing resources to obtain the required results within a reasonable time. Before parallelizing serial applications, some analysis is recommended to be carried out to decide whether it will benefit from parallelization or not. In this paper we discuss the issue of speed up gained from parallelization using Message Passing Interface (MPI) to compromise between the overhead of parallelization cost and the gained parallel speed up. We also propose an experimental method to predict the speed up of MPI applications.

연구 동기 및 목표

  • 병렬 처리 자원의 높은 비용을 감안할 때 순차적 응용 프로그램을 병렬화할지 여부를 결정하는 데 도전 과제를 해결하기 위해.
  • MPI 기반 시스템에서 병렬화 오버헤드와 잠재적 성능 향상 사이의 트레이드오프를 분석하기 위해.
  • 실제 병렬화를 수행하기 전에 성능 향상을 예측할 수 있는 실용적이고 실험적인 방법을 개발하기 위해.
  • 고성능 계산 환경에서 생산성 없는 병렬화 노력을 피할 수 있도록 도와주는 의사결정 프레임워크를 제공하기 위해.
  • 예측 분석에 기반한 정보 기반의 결정을 가능하게 하여 소프트웨어 공학의 효율성을 향상시키기 위해.

제안 방법

  • 실행 시간과 자원 사용량을 측정하기 위해 순차적 및 병렬 버전의 응용 프로그램에 대한 실험적 프로파일링을 수행한다.
  • 분산 시스템에서 성능을 평가하기 위해 메시지 전달 인터페이스(MPI)를 병렬화 모델로 사용한다.
  • 측정된 실행 시간에 회귀 분석을 적용하여 문제 크기와 프로세서 수의 함수로 성능 향상을 모델링한다.
  • 실제 병렬화가 구현되기 전에 성능 향상을 추정하는 예측 기반 벤치마킹 접근법을 도입한다.
  • 성능 향상 예측 모델에서 통신 오버헤드와 로드 밸런싱을 핵심 요소로 고려한다.
  • 실제 HPC 워크로드에서의 실행 결과와 예측을 대조하여 모델의 정확도를 향상시킨다.

실험 결과

연구 질문

  • RQ1순차적 응용 프로그램의 병렬화가 측정 가능한 성능 향상을 가져오는 조건은 무엇인가?
  • RQ2MPI 기반 병렬화의 오버헤드는 어떻게 정량적으로 성능 향상 기대치와 균형을 이룰 수 있는가?
  • RQ3실제 병렬화를 수행하기 전에 정확한 성능 향상 예측을 가능하게 하는 실험적 방법론은 무엇인가?
  • RQ4어떤 응용 프로그램을 병렬화할지 결정하는 데 가장 중요한 영향을 미치는 요소는 무엇인가?
  • RQ5예측 모델은 성능 향상이 없는 병렬화에 투자하는 위험을 줄일 수 있는가?

주요 결과

  • 제안된 방법은 실험적 프로파일링과 회귀 모델링을 통해 MPI 응용 프로그램의 성능 향상을 정확하게 예측할 수 있다.
  • 많은 워크로드에서 8개 이하의 프로세서를 사용할 경우 병렬화 오버헤드가 성능 향상보다 더 크다.
  • 문제 크기가 프로세서 수와 적절히 스케일링될 때 성능 향상이 최대가 되며, 이는 강한 데이터 크기 의존성의 증거이다.
  • 불규칙하거나 동적 워크로드를 가진 응용 프로그램은 예측 가능성과 성능 향상의 위험이 낮다.
  • 모델은 성능 향상이 없는 병렬화 시나리오를 성공적으로 식별하여 낭비되는 계산 자원을 줄였다.
  • 실험적 접근법은 실제 구현 전에 신뢰할 수 있는 평가를 제공함으로써 전면적 구현의 필요성을 줄였다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.