[论文解读] MemPool: A Scalable Manycore Architecture With a Low-Latency Shared L1 Memory
MemPool 展示了一种可扩展的多核 RISC-V 架构,包含 256 个可独立编程的 Snitch 核心,共享一个低延迟、1 MiB 多 banks 的 L1 临时存储器(SPM),在 180 GOPS/W 效率下实现高达 229 GOPS 的性能。它采用分层互连结构、优化的指令路径和定制 DMA,实现全局内存访问延迟 ≤5 个周期,并最大限度减少停顿,从而在大规模系统中实现高性能与高可编程性。
Shared L1 memory clusters are a common architectural pattern (e.g., in GPGPUs) for building efficient and flexible multi-processing-element (PE) engines. However, it is a common belief that these tightly-coupled clusters would not scale beyond a few tens of PEs. In this work, we tackle scaling shared L1 clusters to hundreds of PEs while supporting a flexible and productive programming model and maintaining high efficiency. We present MemPool, a manycore system with 256 RV32IMAXpulpimg "Snitch" cores featuring application-tunable functional units. We designed and implemented an efficient low-latency PE to L1-memory interconnect, an optimized instruction path to ensure each PE's independent execution, and a powerful DMA engine and system interconnect to stream data in and out. MemPool is easy to program, with all the cores sharing a global view of a large, multi-banked, L1 scratchpad memory, accessible within at most five cycles in the absence of conflicts. We provide multiple runtimes to program MemPool at different abstraction levels and illustrate its versatility with a wide set of applications. MemPool runs at 600 MHz (60 gate delays) in typical conditions (TT/0.80 V/25 °C) in 22 nm FDX technology and achieves a performance of up to 229 GOPS or 180 GOPS/W with less than 2% of execution stalls.
研究动机与目标
- 解决在数十个核心以上时共享 L1 内存集群的可扩展性挑战,同时保持低延迟和高能效。
- 通过支持数百个核心的独立灵活编程与全局内存访问,克服 SIMT 和多集群设计的局限性。
- 设计一种可扩展、高能效的多核系统,支持通用工作负载,同时保持架构复杂度最低且利用率最高。
- 通过定制 DMA 和低延迟互连,实现对不规则、数据并行工作负载的高效数据传输与同步。
提出的方法
- 实现一种分层、低延迟互连结构,确保在无争用情况下,所有 256 个核心对 L1 SPM 的访问延迟 ≤5 个周期。
- 设计基于缓存的可扩展指令路径,独立向每个核心传送指令,最大限度减少流水线停顿。
- 集成分布式的 DMA 引擎,高效地将数据流式传输至共享 L1 SPM,减少 CPU 开销。
- 采用混合寻址方案和 DSP 扩展,提升 RISC-V 核心的计算吞吐量。
- 优化 Snitch 核心以容忍内存延迟,有效隐藏互连延迟。
- 通过编译器与运行时集成(如 OpenMP、Halide)支持多种编程抽象,提升开发效率。
实验结果
研究问题
- RQ1共享 L1 内存集群能否在不牺牲低延迟访问或能效的前提下,扩展至 256 个可独立编程的 RISC-V 核心?
- RQ2如何设计一种低延迟互连,以在大规模多核集群中保持 ≤5 个周期的访问延迟?
- RQ3在高核心数量的共享内存多核系统中,架构停顿和内存访问开销能在多大程度上被最小化?
- RQ4定制 DMA 和指令路径设计在可扩展多核系统中,能否有效支持高利用率和低开销?
- RQ5通用的、不规则的工作负载能否在这种系统上高效地编程与执行,且性能损失最小?
主要发现
- MemPool 在 22 nm FDX 工艺下实现峰值性能 229 GOPS,能效达 180 GOPS/W。
- 系统运行频率为 600 MHz(60 门延迟),执行停顿仅占 2%,表明利用率高且架构开销低。
- 在无争用情况下,共享内存访问延迟被限制在 ≤5 个周期以内,支持所有 256 个核心间高效数据共享。
- 平均每核心 IPC 达 0.96,接近理论最大值 1.0,表明指令级并行度高且流水线停顿极少。
- 基准测试表明,性能损失主要源于加载-存储架构的固有局限性和同步开销,而非架构低效。
- Halide 和 OpenMP 工具链的集成使得复杂内核(如直方图均衡化、光线追踪、BFS)的实现变得简单且性能优异。
更好的研究,从现在开始
从论文设计到论文写作,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。