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.80V/25{\deg}C) in 22 nm FDX technology and achieves a performance of up to 229 GOPS or 192 GOPS/W with less than 2% of execution stalls.


翻译:共享一级存储器簇是构建高效灵活的多处理单元(PE)引擎的常见架构模式(例如在GPGPU中)。然而,普遍认为这种紧耦合簇的规模难以超过几十个PE。本研究突破了共享一级存储器簇的扩展瓶颈,将其扩展至数百个PE,同时支持灵活高效的编程模型并保持高能效。我们提出了MemPool——一个包含256个配备应用可调功能单元的RV32IMAXpulpimg "Snitch"内核的众核系统。我们设计并实现了一种高效低延迟的PE至一级存储器互连架构、优化了确保每个PE独立执行的指令路径,并构建了用于数据流传输的强大DMA引擎与系统互连。MemPool易于编程,所有内核共享一个大型多体一级暂存存储器的全局视图,在无冲突情况下访问延迟不超过五个时钟周期。我们提供了多种运行时环境以支持不同抽象层级的MemPool编程,并通过广泛的应用程序展示了其多功能性。采用22纳米FDX工艺在典型条件(TT/0.80V/25°C)下,MemPool以600MHz(60门延迟)运行,实现高达229 GOPS或192 GOPS/W的性能,执行停顿率低于2%。

0
下载
关闭预览

相关内容

【Manning新书】C++并行实战,592页pdf,C++ Concurrency in Action
我不想 MySQL 分片
InfoQ
0+阅读 · 2022年7月10日
使用 Keras Tuner 调节超参数
TensorFlow
15+阅读 · 2020年2月6日
Hierarchically Structured Meta-learning
CreateAMind
27+阅读 · 2019年5月22日
Transferring Knowledge across Learning Processes
CreateAMind
29+阅读 · 2019年5月18日
深度自进化聚类:Deep Self-Evolution Clustering
我爱读PAMI
15+阅读 · 2019年4月13日
Unsupervised Learning via Meta-Learning
CreateAMind
44+阅读 · 2019年1月3日
最前沿的深度学习论文、架构及资源分享
深度学习与NLP
13+阅读 · 2018年1月25日
ResNet, AlexNet, VGG, Inception:各种卷积网络架构的理解
全球人工智能
20+阅读 · 2017年12月17日
【论文】变分推断(Variational inference)的总结
机器学习研究会
39+阅读 · 2017年11月16日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
1+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2009年12月31日
国家自然科学基金
0+阅读 · 2008年12月31日
Arxiv
12+阅读 · 2018年9月5日
VIP会员
最新内容
学习数据的几何:形状空间分析数学综述
专知会员服务
6+阅读 · 6月17日
定向能反无人机系统最新发展动态
专知会员服务
7+阅读 · 6月17日
从燃煤战舰到算法战争:水面指挥的永恒要求
专知会员服务
4+阅读 · 6月17日
相关VIP内容
【Manning新书】C++并行实战,592页pdf,C++ Concurrency in Action
相关资讯
我不想 MySQL 分片
InfoQ
0+阅读 · 2022年7月10日
使用 Keras Tuner 调节超参数
TensorFlow
15+阅读 · 2020年2月6日
Hierarchically Structured Meta-learning
CreateAMind
27+阅读 · 2019年5月22日
Transferring Knowledge across Learning Processes
CreateAMind
29+阅读 · 2019年5月18日
深度自进化聚类:Deep Self-Evolution Clustering
我爱读PAMI
15+阅读 · 2019年4月13日
Unsupervised Learning via Meta-Learning
CreateAMind
44+阅读 · 2019年1月3日
最前沿的深度学习论文、架构及资源分享
深度学习与NLP
13+阅读 · 2018年1月25日
ResNet, AlexNet, VGG, Inception:各种卷积网络架构的理解
全球人工智能
20+阅读 · 2017年12月17日
【论文】变分推断(Variational inference)的总结
机器学习研究会
39+阅读 · 2017年11月16日
相关基金
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
1+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2009年12月31日
国家自然科学基金
0+阅读 · 2008年12月31日
Top
微信扫码咨询专知VIP会员