Data Tiering in Heterogeneous Memory Systems

被引:128
|
作者
Dulloor, Subramanya R. [1 ,2 ]
Roy, Amitabha [1 ]
Zhao, Zheguang [3 ]
Sundaram, Narayanan [1 ]
Satish, Nadathur [1 ]
Sankaran, Rajesh [1 ]
Jackson, Jeff [1 ]
Schwan, Karsten [2 ]
机构
[1] Intel Labs, Santa Clara, CA 95054 USA
[2] Georgia Inst Technol, Atlanta, GA 30332 USA
[3] Brown Univ, Providence, RI 02912 USA
关键词
D O I
10.1145/2901318.2901344
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Memory-based data center applications require increasingly large memory capacities, but face the challenges posed by the inherent difficulties in scaling DRAM and also the cost of DRAM. Future systems are attempting to address these demands with heterogeneous memory architectures coupling DRAM with high capacity, low cost, but also lower performance, non-volatile memories (NVM) such as PCM and RRAM. A key usage model intended for NVM is as cheaper high capacity volatile memory. Data center operators are bound to ask whether this model for the usage of NVM to replace the majority of DRAM memory leads to a large slowdown in their applications? It is crucial to answer this question because a large performance impact will be an impediment to the adoption of such systems. This paper presents a thorough study of representative applications - including a key-value store (MemC3), an in-memory database (VoltDB), and a graph analytics framework (GraphMat) - on a platform that is capable of emulating a mix of memory technologies. Our conclusions are that it is indeed possible to use a mix of a small amount of fast DRAM and large amounts of slower NVM without a proportional impact to an application's performance. The caveat is that this result can only be achieved through careful placement of data structures. The contribution of this paper is the design and implementation of a set of libraries and automatic tools that enables programmers to achieve optimal data placement with minimal effort on their part. With such guided placement and with DRAM constituting only 6% of the total memory footprint for GraphMat and 25% for VoltDB and MemC3 (remaining memory is NVM with 4x higher latency and 8x lower bandwidth than DRAM), we show that our target applications demonstrate only a 13% to 40% slowdown. Without guided placement, these applications see, in the worst case, 1.5x to 5.9x slowdown on the same configuration. Based on a realistic assumption that NVM will be 5x cheaper (per bit) than DRAM, this hybrid solution also results in 2x to 2.8x better performance/$ than a DRAM-only system.
引用
收藏
页数:16
相关论文
共 50 条
  • [1] Flexible and Effective Object Tiering for Heterogeneous Memory Systems
    Kammerdiener, Brandon
    McMichael, J. Zach
    Jantz, Michael R.
    Doshi, Kshitij A.
    Jones, Terry
    PROCEEDINGS OF THE 2023 ACM SIGPLAN INTERNATIONAL SYMPOSIUM ON MEMORY MANAGEMENT, ISMM 2023, 2023, : 163 - 175
  • [2] SMT: Software-Defined Memory Tiering for Heterogeneous Computing Systems With CXL Memory Expander
    Kim, Kyungsan
    Kim, Hyunseok
    So, Jinin
    Lee, Wonjae
    Im, Junhyuk
    Park, Sungjoo
    Cho, Jeonghyeon
    Song, Hoyoung
    IEEE MICRO, 2023, 43 (02) : 20 - 29
  • [3] On the Implications of Heterogeneous Memory Tiering on Spark In-Memory Analytics
    Katsaragakis, Manolis
    Masouros, Dimosthenis
    Papadopoulos, Lazaros
    Catthoor, Francky
    Soudris, Dimitrios
    2023 IEEE INTERNATIONAL PARALLEL AND DISTRIBUTED PROCESSING SYMPOSIUM WORKSHOPS, IPDPSW, 2023, : 945 - 952
  • [4] MULTI-CLOCK: Dynamic Tiering for Hybrid Memory Systems
    Maruf, Adnan
    Ghosh, Ashikee
    Bhimani, Janki
    Campello, Daniel
    Rudoff, Andy
    Rangaswami, Raju
    2022 IEEE INTERNATIONAL SYMPOSIUM ON HIGH-PERFORMANCE COMPUTER ARCHITECTURE (HPCA 2022), 2022, : 925 - 937
  • [5] CachedArrays: Optimizing Data Movement for Heterogeneous Memory Systems
    Hildebrand, Mark
    Lowe-Power, Jason
    Akella, Venkatesh
    PROCEEDINGS 2024 IEEE INTERNATIONAL PARALLEL AND DISTRIBUTED PROCESSING SYMPOSIUM, IPDPS 2024, 2024, : 545 - 555
  • [6] Optimal Data Placement for Heterogeneous Cache, Memory, and Storage Systems
    Zhang, Lei
    Karimi, Reza
    Ahmad, Irfan
    Vigfusson, Ymir
    PROCEEDINGS OF THE ACM ON MEASUREMENT AND ANALYSIS OF COMPUTING SYSTEMS, 2020, 4 (01)
  • [7] Compiler-assisted Data Placement for Heterogeneous Memory Systems
    Kim, Hwajung
    IEICE ELECTRONICS EXPRESS, 2024, 21 (19):
  • [8] Optimal Data Placement for Heterogeneous Cache, Memory, and Storage Systems
    Zhang L.
    Karimi R.
    Ahmad I.
    Vigfusson Y.
    Zhang, Lei (lei.zhang@emory.edu), 1600, Association for Computing Machinery (48): : 85 - 86
  • [9] Evaluating Phase Change Memory for Enterprise Storage Systems: A Study of Caching and Tiering Approaches
    Kim, Hyojun
    Seshadri, Sangeetha
    Dickey, Clement L.
    Chiu, Lawrence
    ACM TRANSACTIONS ON STORAGE, 2014, 10 (04)
  • [10] Phase-Based Data Placement Scheme for Heterogeneous Memory Systems
    Laghari, Mohammad
    Ahmad, Najeeb
    Unat, Didem
    2018 30TH INTERNATIONAL SYMPOSIUM ON COMPUTER ARCHITECTURE AND HIGH PERFORMANCE COMPUTING (SBAC-PAD 2018), 2018, : 189 - 196