Skip to main content
QUICK REVIEW

[논문 리뷰] Evaluation of the RIKEN Post-K Processor Simulator

Yuetsu Kodama, Tetsuya Odajima|arXiv (Cornell University)|2019. 04. 13.
Parallel Computing and Optimization Techniques참고 문헌 2인용 수 10
한 줄 요약

이 논문은 A64FX 기반의 Post-K 슈퍼컴퓨터를 위한 조기 애플리케이션 개발을 가능하게 하기 위해 gem5 기반으로 구축된 RIKEN Post-K 프로세서 시뮬레이터를 제시한다. A64FX의 고유한 아키텍처—SVE 지원, 멀티코어 CMG 구성, 메모리 계층 구조—에 대한 순차적 정밀도의 순서어긋남 실행 모델링 및 세밀한 파rameter 조정을 통해 확장된 gem5를 통해 시뮬레이터는 실제 테스트 칩과 비교해 실행 사이클 추정 정확도가 90%에 도달했으며, 하드웨어가 가용해지기 전에 신뢰할 수 있는 애플리케이션 튜닝이 가능하다.

ABSTRACT

For the purpose of developing applications for Post-K at an early stage, RIKEN has developed a post-K processor simulator. This simulator is based on the general-purpose processor simulator gem5. It does not simulate the actual hardware of a post-K processor. However, we believe that sufficient simulation accuracy can be obtained since it simulates the instruction pipeline of out-of-order execution with cycle-level accuracy along with performing detailed parameter tuning of out-of-order resources and function expansion of cache/memory hierarchy. In this simulator, we aim to estimate the execution cycles of one node application on a post-K processor with accuracy that enables relative evaluation and application tuning. In this paper, we show the details of the implementation of this simulator and verify its accuracy compared with that of a post-K test chip.

연구 동기 및 목표

  • 실리콘 하드웨어가 가용해지기 전에 Post-K 슈퍼컴퓨터를 위한 조기 애플리케이션 개발을 가능하게 하기 위해.
  • A64FX 프로세서에서 단일 노드 애플리케이션의 사이클 수준 성능 추정을 정확히 제공하기 위해.
  • 일반적인 시뮬레이터의 한계를 극복하기 위해 SVE, 멀티코어 CMG 구성, 향상된 메모리 계층 구조 모델링 등의 A64FX 전용 기능을 gem5에 확장함으로써.
  • 상대적 성능 평가 및 애플리케이션 튜닝에 충분한 정확도를 확보한 시뮬레이션 정확도를 달성하기 위해.
  • RIST를 통해 보급을 확대하여 초기 프로젝트 사용자 외에도 널리 활용 가능하게 하기 위해.

제안 방법

  • Armv8.2-A SVE(확장 가능한 벡터 확장) 명령세트를 네이티브로 지원하도록 gem5의 O3 CPU 모델을 확장하여, 초기에는 커스텀 O3 모델을 구현한 후 Arm Research에서 제공하는 SVE O3 모델로 이관하였다.
  • 13코어 CMG, CMG당 8 MiB L2 캐시, HBM2 메모리(각 CMG당 8 GiB), 6.8 GB/s 네트워크 링크를 포함한 A64FX 프로세서의 세부 파라미터를 설정하여 시뮬레이터를 구성하였다.
  • CMG당 12개 스레드를 지원하는 다중 스레드 시뮬레이션 환경을 구현하였으며, A64FX의 네 가지 예약 스테이션(메모리, 산술, 분기)과 크로스바 인터커넥트를 모델링하였다.
  • L1/L2 캐시 및 메모리 서브시스템에는 gem5 클래식 메모리 모델을 사용하였으며, 성능는 A64FX 사양에 맞추어 조정하였다.
  • 실제 A64FX 테스트 칩 측정치와의 정확도를 검증하기 위해 28개의 커널 벤치마크와 Stream Triad 워크로드를 사용한 비교 평가를 수행하였다.
  • L2 하드웨어 프리패칭 및 스레드 스케줄링을 위한 공정성 메커니즘과 같은 누락된 기능을 식별하고 우선순위를 정하여 지속적으로 구현 중이다.

실험 결과

연구 질문

  • RQ1gem5 기반 시뮬레이터는 Post-K A64FX 프로세서의 상대적 성능 평가 및 애플리케이션 튜닝을 위해 충분한 정확도를 확보할 수 있는가?
  • RQ2다양한 워크로드에 걸쳐 시뮬레이터의 실행 사이클 추정치가 실제 A64FX 테스트 칩 측정치와 어떻게 비교되는가?
  • RQ3A64FX의 고유한 순서어긋남 파이프라인과 메모리 계층을 시뮬레이션할 때의 주요 아키텍처 모델링 과제는 무엇인가?
  • RQ4L2 하드웨어 프리패칭과 같은 누락된 기능은 다중 스레드 워크로드에서 시뮬레이션 정확도에 얼마나 큰 영향을 미치는가?
  • RQ5시뮬레이터는 다양한 스레드 수에서 확장 가능한 성능 평가를 지원할 수 있으며, 실제 하드웨어와 비교해 어떻게 성능을 보이는가?

주요 결과

  • 28개의 커널 프로그램 중 23개(82%)에서 시뮬레이터의 실행 사이클 추정치가 A64FX 테스트 칩과 10% 이내로 겹쳐져 상대적 성능 평가에 매우 높은 정확도를 보였다.
  • 다중 스레드 Stream Triad 벤치마크에서 시뮬레이터는 최대 12개 스레드까지 확장 가능한 메모리 스루풋을 달성하여 A64FX의 예상 동작과 일치하였다.
  • L2 크기의 데이터에서 스레드 수가 적을 경우(예: 1~2개 스레드) 시뮬레이터와 테스트 칩 간의 실행 시간 차이가 60%를 초과하는 것으로 나타났으며, 주로 L2 하드웨어 프리패칭 기능의 부재 때문이었다.
  • 시뮬레이터의 크로스바 인터커넥트 모델은 하나의 소스에서 동시에 여러 목적지로 전송을 지원하지 못함으로써 고스레드 환경에서 성능 스케일링에 제한을 받는다. 이는 A64FX의 기능과 다릅니다.
  • 시뮬레이터에서 관측된 메모리 스루풋(단일 CMG당 640 GB/s)은 이론적 최대치(830 GB/s)보다 낮았으며, 이는 원시 메모리 용량이 아닌 애플리케이션 수준의 대역폭을 반영한 것이다.
  • L2 하드웨어 프리패칭 및 스레드 스케줄링을 위한 공정성 메커니즘의 지속적인 구현으로, 특히 저스레드 수 워크로드에서 실행 시간 격차가 크게 줄어들 것으로 기대된다.

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

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

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

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