SimplePIM: A Software Framework for Productive and Efficient Processing-in-Memory

被引:1
|
作者
Chen, Jinfan [1 ]
Gomez-Luna, Juan [1 ]
El Hajj, Izzat [2 ]
Guo, Yuxin [1 ]
Mutlu, Onur [1 ]
机构
[1] Swiss Fed Inst Technol, Zurich, Switzerland
[2] Amer Univ Beirut, Beirut, Lebanon
关键词
D O I
10.1109/PACT58117.2023.00017
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Data movement between memory and processors is a major bottleneck in modern computing systems. The processing-in-memory (PIM) paradigm aims to alleviate this bottleneck by performing computation inside memory chips. Real PIM hardware (e.g., the UPMEM system) is now available and has demonstrated potential in many applications. However, programming such real PIM hardware remains a challenge for many programmers. This paper presents a new software framework, SimplePIM, to aid programming real PIM systems. The framework processes arrays of arbitrary elements on a PIM device by calling iterator functions from the host and provides primitives for communication among PIM cores and between PIM and the host system. We implement SimplePIM for the UPMEM PIM system and evaluate it on six major applications. Our results show that SimplePIM enables 66.5% to 83.1% reduction in lines of code in PIM programs. The resulting code leads to higher performance (between 10% and 37% speedup) than hand-optimized code in three applications and provides comparable performance in three others. SimplePIM is fully and freely available at https://github.com/CMU- SAFARI/SimplePIM.
引用
收藏
页码:99 / 111
页数:13
相关论文
共 50 条
  • [41] Processing-in-Memory for Databases: Query Processing and Data Transfer
    Baumstark, Alexander
    Jibril, Muhammad Attahir
    Sattler, Kai-Uwe
    19TH INTERNATIONAL WORKSHOP ON DATA MANAGEMENT ON NEW HARDWARE, DAMON 2023, 2023, : 107 - 111
  • [42] Kernel Shape Control for Row-Efficient Convolution on Processing-In-Memory Arrays
    Rhe, Johnny
    Jeon, Kang Eun
    Lee, Joo Chan
    Jeong, Seongmoon
    Ko, Jong Hwan
    2023 IEEE/ACM INTERNATIONAL CONFERENCE ON COMPUTER AIDED DESIGN, ICCAD, 2023,
  • [43] PIMCH: Cooperative Memory Prefetching in Processing-In-Memory Architecture
    Xui, Sheng
    Wang, Ying
    Han, Yinhe
    Li, Xiaowei
    2018 23RD ASIA AND SOUTH PACIFIC DESIGN AUTOMATION CONFERENCE (ASP-DAC), 2018, : 209 - 214
  • [44] DrPIM: An Adaptive and Less-blocking Data Replication Framework for Processing-in-Memory Architecture
    Xu, Sheng
    Xue, Hongyu
    Luo, Le
    Yan, Liang
    Zou, Xingqi
    PROCEEDINGS OF THE GREAT LAKES SYMPOSIUM ON VLSI 2023, GLSVLSI 2023, 2023, : 385 - 389
  • [45] A framework for high-throughput sequence alignment using real processing-in-memory systems
    Diab, Safaa
    Nassereldine, Amir
    Alser, Mohammed
    Luna, Juan Gomez
    Mutlu, Onur
    El Hajj, Izzat
    BIOINFORMATICS, 2023, 39 (05)
  • [46] SPIMulator: A Spintronic Processing-in-memory Simulator for Racetracks
    Bera, Pavia
    Cahoon, Stephen
    Bhanja, Sanjukta
    Jones, Alex
    ACM Transactions on Embedded Computing Systems, 2024, 23 (06)
  • [47] Optimal Data Allocation for Graph Processing in Processing-in-Memory Systems
    Li, Zerun
    Chen, Xiaoming
    Han, Yinhe
    27TH ASIA AND SOUTH PACIFIC DESIGN AUTOMATION CONFERENCE, ASP-DAC 2022, 2022, : 238 - 243
  • [48] A Survey of Resource Management for Processing-In-Memory and Near-Memory Processing Architectures
    Khan, Kamil
    Pasricha, Sudeep
    Kim, Ryan Gary
    JOURNAL OF LOW POWER ELECTRONICS AND APPLICATIONS, 2020, 10 (04) : 1 - 31
  • [49] Efficient and reconfigurable reservoir computing to realize alphabet pronunciation recognition based on processing-in-memory
    Liu, Shuang
    Wu, Yuancong
    Xiong, Canlong
    Liu, Yihe
    Yang, Jing
    Yu, Q.
    Hu, S. G.
    Chen, T. P.
    Liu, Y.
    APPLIED PHYSICS LETTERS, 2021, 119 (10)
  • [50] Efficient Processing-in-Memory System Based on RISC-V Instruction Set Architecture
    Lim, Jihwan
    Son, Jeonghun
    Yoo, Hoyoung
    ELECTRONICS, 2024, 13 (15)