Skip to main content
QUICK REVIEW

[논문 리뷰] Performance Modeling for Dense Linear Algebra

Elmar Peise, Paolo Bientinesi|arXiv (Cornell University)|2012. 09. 11.
Machine Learning and Data Classification참고 문헌 6인용 수 6
한 줄 요약

이 논문은 BLAS 및 LAPACK 커널의 통계적 모델을 생성하여 조밀한 선형 대수 알고리즘 루틴의 성능 모델링을 자동화하는 프레임워크를 제시한다. 이러한 모델을 평가하고 조합함으로써, 런타임 실행 없이도 알고리즘 변종을 정확히 순위 매기고 블록 크기 파rameter를 튜닝할 수 있으며, 단일 및 다중 코어 시스템 전반에서 높은 예측 정확도를 달성한다.

ABSTRACT

It is well known that the behavior of dense linear algebra algorithms is greatly influenced by factors like target architecture, underlying libraries and even problem size; because of this, the accurate prediction of their performance is a real challenge. In this article, we are not interested in creating accurate models for a given algorithm, but in correctly ranking a set of equivalent algorithms according to their performance. Aware of the hierarchical structure of dense linear algebra routines, we approach the problem by developing a framework for the automatic generation of statistical performance models for BLAS and LAPACK libraries. This allows us to obtain predictions through evaluating and combining such models. We demonstrate that our approach is successful in both single- and multi-core environments, not only in the ranking of algorithms but also in tuning their parameters.

연구 동기 및 목표

  • BLAS 및 LAPACK 커널의 정확한 성능 모델을 자동으로 생성하여 고수준 알고리즘의 구성 요소로 활용하는 것.
  • 실행하지 않고도 동일한 알고리즘 변종의 성능을 예측하고 순위를 매기는 것.
  • 실험적 벤치마킹 대신 모델 예측 기반으로 알고리즘 설정, 특히 블록 크기를 최적화하는 것.
  • 다양한 아키텍처와 문제 크기에서 가장 빠른 알고리즘과 최적의 파rameter를 효율적으로 선택할 수 있도록 하는 것.

제안 방법

  • BLAS 커널의 분석적 성능 모델을 자동으로 생성하는 도구인 Modeler를 개발한다.
  • 다양한 문제 크기와 블록 크기에서 측정된 데이터를 바탕으로 성능 지표(예: 효율성)에 대한 조각별 다항식 모델을 구축한다.
  • 재사용 및 평가가 가능한 영구 저장소에 생성된 모델을 저장한다.
  • 하위 BLAS 연산의 성능 모델을 평가하고 조합하여 고수준 알고리즘의 성능을 예측한다.
  • 모델 평가를 통해 알고리즘 변종을 순위 매기고 최적의 블록 크기 설정을 식별한다.
  • 사용 사례에 따라 속도 또는 정확도를 우선시하는 두 가지 모델링 전략을 적용한다.

실험 결과

연구 질문

  • RQ1BLAS 및 LAPACK 커널의 성능 모델을 충분한 정확도로 자동 생성하여 고수준 알고리즘 성능을 예측할 수 있는가?
  • RQ2런타임 실행 없이도 이러한 모델이 조밀한 선형 대수 연산의 여러 알고리즘 변종을 성능 기준으로 정확히 순위 매길 수 있는가?
  • RQ3해당 알고리즘과 아키텍처에 대해 최적의 블록 크기를 정확히 예측할 수 있는가?
  • RQ4단일 코어 및 다중 코어 시스템 전반에서 예측된 성능 순위가 실제 측정 결과와 얼마나 잘 일치하는가?

주요 결과

  • 성능 모델은 알고리즘 변종 간 상대적 효율성을 정확히 예측하여 다양한 문제 크기와 아키텍처에서 순위를 정확히 매긴다.
  • 하나의 하한 삼각행렬 역행렬 계산에서, 모델은 큰 행렬에 대해 변종 3이 가장 효율적임을 정확히 식별하며, 실험 결과와 일치한다.
  • 변종 1, 2, 3에 대해 모델은 블록 크기를 약 100에 가까운 값으로 예측하며, 관측된 성능 피크와 일치한다.
  • 다중 코어 환경에서는 모델이 변종 간 성능 전환점을 정확히 포착하며, 더 큰 행렬 크기에서 변종 1과 2가 변종 3보다 성능이 뛰어남을 예측한다.
  • 시르베스터 방정식 해법기의 경우, 모델은 16개의 변종을 고성능 및 저성능 그룹으로 정확히 분리하며, 상위 4개 성능 기여자(변종 1, 2, 5, 6)를 정확히 식별한다.
  • 개별 모델의 정확도에 일부 오차가 있음에도 불구하고, 통합 예측은 순위 매기기와 설정 최적화에 높은 예측 능력을 발휘하며, 효율성 예측 값은 실험 측정 결과와 매우 유사하게 일치한다.

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

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

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

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