Kobold: Simplified Cache Coherence for Cache-Attached Accelerators

Kobold: Simplified Cache Coherence for Cache-Attached Accelerators
复制标题

DOI:
10.1109/lca.2023.3269399
复制
发表时间:
2023-01
影响因子:
2.3
通讯作者:
Jennifer Brana;Brian C. Schwedock;Yatin A. Manerkar;Nathan Beckmann
Jennifer Brana;Brian C. Schwedock;Yatin A. Manerkar;Nathan Beckmann
中科院分区:
计算机科学3区
文献类型:
--
作者:
Jennifer Brana;Brian C. Schwedock;Yatin A. Manerkar;Nathan Beckmann

文献摘要

相似文献

计算机系统中数据移动的不断增加的成本正在推动以数据为中心的计算的新时代。不幸的是,将数据转移到核心系统中,不幸的是,将加速器添加到内存层次结构中,因为加速器会导致系统集成的重大复杂性通常需要访问记忆的缓存访问。缓存污染和最差的基线处理器性能。将加速器的复杂性添加到其本地瓷砖中。本地L2。简化了加速加速器的集成,在基线缓存中仅添加了0.09%的面积,并提供了明确的性能优势与现有目录相干协议的幼稚扩展。
The ever-increasing cost of data movement in computer systems is driving a new era of data-centric computing. One of the most common data-centric paradigms is near-data computing (NDC), where accelerators are placed inside the memory hierarchy to avoid the costly transfer of data to the core. NDC systems show immense potential to improve performance and energy efficiency. Unfortunately, adding accelerators into the memory hierarchy incurs significant complexity for system integration because accelerators often require cache-coherent access to memory. The complex coherence protocols required to handle both cores and cache-attached accelerators result in significantly higher verification costs as well as an increase in directory state and on-chip network traffic. Furthermore, these mechanisms can cause cache pollution and worsen baseline processor performance. To simplify the integration of cache-attached accelerators, we present Kobold, a new coherence protocol and implementation which restricts the added complexity of an accelerator to its local tile. Kobold introduces a new directory structure within the L2 cache to track the accelerator's private cache and maintain coherence between the core and accelerator. A minor modification to the LLC protocol also enables accelerators to improve performance by bypassing the local L2. We verified Kobold's stable-state coherence protocols using the Murphi model checker and estimated area overhead using Cacti 7. Kobold simplifies integration of cache-attached accelerators, adds only 0.09% area over the baseline caches, and provides clear performance advantages versus naïve extensions of existing directory coherence protocols.