Skip to main content
QUICK REVIEW

[论文解读] Evaluation of the RIKEN Post-K Processor Simulator

Yuetsu Kodama, Tetsuya Odajima|arXiv (Cornell University)|Apr 13, 2019
Parallel Computing and Optimization Techniques参考文献 2被引用 10
一句话总结

本文介绍了基于gem5的理化学研究所Post-K处理器仿真器,旨在为基于A64FX的Post-K超算系统提供早期应用开发支持。通过在gem5中扩展支持周期精确的乱序执行建模,并针对A64FX的独特架构(包括SVE支持、多核CMG配置和内存层次结构)进行详细参数调优,该仿真器在执行周期估计方面与真实测试芯片相比达到了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处理器上的单节点应用提供精确的周期级性能估计。
  • 通过扩展gem5以支持A64FX特有的功能(如SVE、多核CMG组织结构和增强的内存层次结构建模),克服通用仿真器的局限性。
  • 实现足够高的仿真准确度,以支持相对性能评估和应用调优。
  • 通过RIST扩大仿真器的使用范围,使更多用户能够访问,而不仅限于初始项目团队。

提出的方法

  • 扩展gem5的O3 CPU模型,原生支持Armv8.2-A SVE(可扩展向量扩展)指令集,最初实现自定义O3模型,随后迁移至Arm Research提供的SVE O3模型。
  • 使用详细的A64FX处理器参数配置仿真器,包括13核CMG、每CMG 8 MiB L2缓存、HBM2内存(每CMG 8 GiB)以及6.8 GB/s的网络链路。
  • 实现多线程仿真环境,每CMG支持12个线程,模拟A64FX的四个保留站(内存、算术、分支)和交叉开关互连结构。
  • 使用gem5经典内存模型实现L1/L2缓存和内存子系统,并通过调优使性能匹配A64FX规格。
  • 通过28个内核基准测试和Stream Triad工作负载进行对比评估,验证仿真结果与真实A64FX测试芯片测量值的一致性。
  • 识别并优先实现缺失功能,如L2硬件预取和线程调度公平机制,目前正处于开发中。

实验结果

研究问题

  • RQ1基于gem5的仿真器是否能达到足够高的准确度,以支持Post-K A64FX处理器的相对性能评估和应用调优?
  • RQ2在多种工作负载下,仿真器的执行周期估计与A64FX测试芯片的实际测量结果相比如何?
  • RQ3在模拟A64FX独特的乱序流水线和内存层次结构时,面临哪些关键的架构建模挑战?
  • RQ4像L2硬件预取这样的缺失功能在多线程工作负载下对仿真准确度的影响有多大?
  • RQ5仿真器能否支持在不同线程数下的可扩展性能评估?其表现与真实硬件相比如何?

主要发现

  • 在28个内核程序中的23个(82%)中,仿真器的执行周期估计与A64FX测试芯片的差异在10%以内,表明其在相对性能评估方面具有高准确度。
  • 在多线程Stream Triad基准测试中,仿真器在12个线程以内实现了可扩展的内存吞吐量,与A64FX的预期行为一致。
  • 当线程数较少(如1–2个线程)且数据大小为L2缓存级别时,仿真器与测试芯片的执行时间差异超过60%,主要原因是缺少L2硬件预取功能。
  • 由于仿真器的交叉开关互连模型无法支持单个源同时向多个目标传输数据,因此在高线程数下性能扩展受限,而A64FX具备此能力。
  • 仿真器中观察到的内存吞吐量(单个CMG为640 GB/s)低于理论峰值(830 GB/s),反映了应用级别的带宽而非原始内存容量。
  • 目前正在实现L2硬件预取和线程调度公平机制,预计可显著减少低线程数工作负载下的执行时间差异。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。