Skip to main content
QUICK REVIEW

[论文解读] PIUMA: Programmable Integrated Unified Memory Architecture

Sriram Aananthakrishnan, Nesreen K. Ahmed|arXiv (Cornell University)|Oct 13, 2020
Graph Theory and Algorithms参考文献 10被引用 14
一句话总结

PIUMA 是一种新颖的图优化架构,采用大量简单、高度多线程的核心,支持细粒度的 8 字节内存访问,并配备强大的卸载引擎,以克服传统处理器在稀疏、不规则图工作负载上的低效问题。在大规模 SpMSpV 任务中,其性能相比 4 节点 Xeon 服务器最高提升 1,387 倍,16 节点系统的性能远超传统多节点系统,得益于高效的可扩展性与低延迟的远程内存访问。

ABSTRACT

High performance large scale graph analytics are essential to timely analyze relationships in big data sets. Conventional processor architectures suffer from inefficient resource usage and bad scaling on those workloads. To enable efficient and scalable graph analysis, Intel developed the Programmable Integrated Unified Memory Architecture (PIUMA) as a part of the DARPA Hierarchical Identify Verify Exploit (HIVE) program. PIUMA consists of many multi-threaded cores, fine-grained memory and network accesses, a globally shared address space, powerful offload engines and a tightly integrated optical interconnection network. By utilizing co-packaged optical silicon photonics and extending the on-chip mesh protocol directly to the optical fabric, all PIUMA chips in a system are glued together in a large virtual die which allows for extremely low socket-to-socket latencies even as the system scales to thousands of sockets. Performance estimations project that a PIUMA node will outperform a conventional compute node by one to two orders of magnitude. Furthermore, PIUMA continues to scale across multiple nodes, which is a challenge in conventional multi-node setups. This paper presents the PIUMA architecture, and documents our experience in designing and building a prototype chip and its bring-up process. We summarize the methodology for our co-design of the architecture together with the software stack using simulation tools and FPGA emulation. These tools provided early performance estimations of realistic applications and allowed us to implement many optimizations across the hardware, compilers, libraries and applications. We built the PIUMA chip as a 316mm2 7nm FinFET CMOS die and constructed a 16-node system. PIUMA silicon has successfully powered on demonstrating key aspects of the architecture, some of which will be incorporated into future Intel products.

研究动机与目标

  • 解决传统处理器在大规模图分析工作负载中性能差和可扩展性受限的问题。
  • 克服图算法中不规则、稀疏内存访问模式导致的缓存利用率低和内存带宽不足的问题。
  • 设计一种可扩展的统一内存架构,支持海量线程数和高效的远程内存访问,以满足图工作负载的需求。
  • 通过软硬件协同设计与专用卸载引擎,实现相对于当前高端处理器的显著性能提升。
  • 实现 DARPA HIVE 项目的目标:针对大规模图问题,实现 1,000× 的能效性能提升。

提出的方法

  • 采用全局共享地址空间,支持细粒度的 8 字节内存与网络访问,减少大缓存行造成的带宽浪费。
  • 使用大量有序、单发射、多线程核心(每节点 16,000 个以上线程),通过大规模多线程隐藏内存延迟。
  • 为 DMA 收集操作实现专用卸载引擎,仅获取所需向量元素,最小化数据移动并实现计算与数据传输的重叠。
  • 仅缓存稀疏矩阵索引(非零行条目),以减少内存流量,同时保持向量访问以 8 字节粒度不缓存。
  • 使用寄存器堆内存存储收集后的向量元素,减少加载指令数,并支持高效的乘加运算。
  • 集成强大的卸载引擎以处理不规则内存访问模式,减少核心空闲时间,提升整体内存/计算重叠效率。

实验结果

研究问题

  • RQ1具备细粒度内存访问与大规模多线程的处理器架构,是否能显著提升在不规则、稀疏图工作负载上的性能,相比传统处理器?
  • RQ2全局共享地址空间与统一内存架构如何实现图分析中跨多个节点的更好可扩展性?
  • RQ3在内存密集型、不规则的工作负载(如图遍历和稀疏矩阵运算)中,避免大缓存行与预取操作的性能影响是什么?
  • RQ4卸载引擎与基于寄存器堆的数据收集方式在多大程度上可减轻内存带宽压力并提升计算效率?
  • RQ5软硬件协同设计的硬件-软件栈能否实现 DARPA HIVE 项目对大规模图分析 1,000× 能效性能提升的目标?

主要发现

  • 单个 PIUMA 节点在各类图工作负载上相比 4 节点 Xeon 服务器实现 6.9× 至 93× 的性能提升,其中在计算量低但不规则性高的应用(如随机游走)中提升最高,达 279×。
  • 16 节点的 PIUMA 系统相比 16 节点 Xeon 配置实现 111× 至 1,387× 的性能提升,展现出强大的可扩展性,并与传统系统之间的性能差距持续扩大。
  • 采用不缓存的 8 字节内存访问可防止带宽饱和,并避免在缓存稀疏向量访问时出现的性能下降问题。
  • DMA 收集卸载操作使性能提升 47%,通过减少加载指令和最小化数据移动,对 SpMV 的总性能提升达 29×。
  • 该架构在无需浪费带宽于无用预取或冗余数据传输的情况下,实现超过 95% 的内存带宽利用率。
  • PIUMA 的设计实现了计算与内存访问的高效重叠,即使其他线程被阻塞,线程仍可继续推进,显著提升了资源利用率。

更好的研究,从现在开始

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

无需绑定信用卡

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