Skip to main content
QUICK REVIEW

[论文解读] Casper: Accelerating Stencil Computation using Near-cache Processing

Alain Denzler, Rahul Bera|arXiv (Cornell University)|Dec 28, 2021
Parallel Computing and Optimization Techniques被引用 11
一句话总结

Casper 提出了一种近最后一级缓存(LLC)的加速器,配备专用的稀疏计算单元(SPU),可在 LLC 内直接执行计算,从而消除冗余数据移动并利用访问模式的规律性。通过将轻量级 SPU 紧密耦合至 LLC,Casper 在商业 CPU 上实现了平均 1.65× 的性能加速(最高达 4.16×),并实现平均 35% 的能耗降低,同时在性能-面积比方面相比最先进的 GPU 提升了 37×(最高达 190×)。

ABSTRACT

Stencil computation is one of the most used kernels in a wide variety of scientific applications, ranging from large-scale weather prediction to solving partial differential equations. Stencil computations are characterized by three unique properties: (1) low arithmetic intensity, (2) limited temporal data reuse, and (3) regular and predictable data access pattern. As a result, stencil computations are typically bandwidth-bound workloads, which only experience limited benefits from the deep cache hierarchy of modern CPUs. In this work, we propose Casper, a near-cache accelerator consisting of specialized stencil compute units connected to the last-level cache (LLC) of a traditional CPU. Casper is based on two key ideas: (1) avoiding the cost of moving rarely reused data through the cache hierarchy, and (2) exploiting the regularity of the data accesses and the inherent parallelism of the stencil computation to increase the overall performance. With minimal changes in LLC address decoding logic and data placement, Casper performs stencil computations at the peak bandwidth of the LLC. We show that, by tightly coupling lightweight stencil compute units near to LLC, Casper improves the performance of stencil kernels by 1.65x on average, while reducing the energy consumption by 35% compared to a commercial high-performance multi-core processor. Moreover, Casper provides a 37x improvement in performance-per-area compared to a state-of-the-art GPU.

研究动机与目标

  • 为解决稀疏计算中的内存带宽瓶颈问题,此类计算因算术强度低且数据重用有限而受内存带宽限制。
  • 通过在芯片上靠近 LLC 的位置进行计算以减少数据移动,提升通用处理器上稀疏核的性能与能效。
  • 设计一种低开销、领域专用的加速器,可无缝集成至现有 CPU 架构中,无需对内存层次结构进行重大修改。
  • 通过最小化数据移动并简化通过轻量级 API 的编程,超越通用加速器(如 GPU 和 FPGA)的性能表现。

提出的方法

  • 将专用的稀疏计算单元(SPU)直接集成在最后一级缓存(LLC)附近,对数据在原位执行计算,避免向 CPU 核心移动数据。
  • 修改 LLC 地址解码逻辑与数据放置策略,将稀疏计算数据定向至 SPU,实现以 LLC 峰值带宽进行计算。
  • 利用稀疏计算访问模式的规律性与可预测性,合并内存请求,最大限度减少冗余缓存流量。
  • 采用轻量级编程接口,仅包含少量 API 函数,避免 FPGA 所需的耗时比特流生成过程。
  • 通过将频繁访问的稀疏计算数据保留在 LLC 内并本地处理,优化数据局部性,减少对片外内存的访问。
  • 通过将多个连接至 LLC 的 SPU 并行处理,利用稀疏操作的内在并行性实现高吞吐量。

实验结果

研究问题

  • RQ1将专用计算单元置于最后一级缓存附近,是否能显著减少稀疏计算的数据移动并提升性能?
  • RQ2近 LLC 处理在多大程度上可利用稀疏核的规律访问模式,实现更高的带宽利用率?
  • RQ3与通用 CPU 和 GPU 相比,近 LLC 加速器在稀疏工作负载上的性能与能效表现如何?
  • RQ4是否可实现面积小、开销低的加速器,且无需对通用处理器进行重大架构修改即可集成?
  • RQ5与 FPGA 或 GPU 相比,近 LLC 加速器的编程模型在开发时间与复杂度方面表现如何?

主要发现

  • Casper 在六种广泛使用的稀疏核上,相比商用高性能多核 CPU,实现了平均 1.65× 的性能加速(最高达 4.16×)。
  • 与 CPU 基线相比,系统能耗平均降低 35%(最高达 65%)。
  • 与最先进的 GPU 相比,Casper 在性能-面积比方面实现了平均 37× 的提升(最高达 190×)。
  • 在 Marvell ThunderX 2 CPU 中集成 16 个 SPU 所带来的面积开销不足 1%。
  • 通过消除数据通过完整缓存层次结构的移动需求,Casper 实现了在 LLC 峰值带宽下的计算能力。
  • 所提出的编程模型相比基于 FPGA 的加速方式显著更简单、更快速,避免了耗时的比特流生成过程。

更好的研究,从现在开始

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

无需绑定信用卡

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