A³PIM:一种自动化、分析性且精确的近存计算卸载器
A$^3$PIM: An Automated, Analytic and Accurate Processing-in-Memory Offloader
AI总结:
本文提出 A³PIM,利用静态代码分析综合评估跨段数据移动与内存访问模式,以自动识别适合 PIM 的代码段,并在 GAP、PrIM 等工作负载上取得显著加速。
摘要:
存储器与处理器之间的性能差距正在迅速扩大。因此,在 CPU 与主存之间移动数据所带来的能耗和实际运行时间成本,在整体计算成本中占据主导地位。近存计算(Processing-in-Memory,PIM)范式成为一种很有前景的体系结构,它通过策略性地将计算单元布置在靠近存储器的位置,减少大量数据移动需求。尽管研究人员已为构建健壮且高可用的 PIM 系统付出大量努力,但由于缺乏一种全面的工具来评估代码段的内在内存访问模式,识别应用中适合 PIM 的代码段仍面临重大挑战。为应对这一挑战,我们提出 A³PIM:一种自动化、分析性且精确的近存计算卸载器。我们通过静态代码分析器,系统性地考虑跨代码段的数据移动以及每个代码段的内在内存访问模式。我们在包括 GAP 和 PrIM 基准测试在内的多种真实工作负载上评估 A³PIM;与仅使用 CPU 和仅使用 PIM 的执行方式相比,其分别取得 2.63 倍和 4.45 倍的平均加速比,最高分别可达 7.14 倍和 10.64 倍。
英文摘要:
The performance gap between memory and processor has grown rapidly. Consequently, the energy and wall-clock time costs associated with moving data between the CPU and main memory predominate the overall computational cost. The Processing-in-Memory (PIM) paradigm emerges as a promising architecture that mitigates the need for extensive data movements by strategically positioning computing units proximate to the memory. Despite the abundant efforts devoted to building a robust and highly-available PIM system, identifying PIM-friendly segments of applications poses significant challenges due to the lack of a comprehensive tool to evaluate the intrinsic memory access pattern of the segment. To tackle this challenge, we propose A$^3$PIM: an Automated, Analytic and Accurate Processing-in-Memory offloader. We systematically consider the cross-segment data movement and the intrinsic memory access pattern of each code segment via static code analyzer. We evaluate A$^3$PIM across a wide range of real-world workloads including GAP and PrIM benchmarks and achieve an average speedup of 2.63x and 4.45x (up to 7.14x and 10.64x) when compared to CPU-only and PIM-only executions, respectively.
机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。