A survey of software techniques to emulate heterogeneous memory systems in high-performance computing

5Citations
Citations of this article
7Readers
Mendeley users who have this article in their library.
Get full text

Abstract

Heterogeneous memory will be involved in several upcoming platforms on the way to exascale. Combining technologies such as HBM, DRAM and/or NVDIMM allows to tackle the needs of different applications in terms of bandwidth, latency or capacity. And new memory interconnects such as CXL bring easy ways to attach these technologies to the processors. High-performance computing developers must prepare their runtimes and applications for these architectures, even before they are actually available. Hence, we survey software solutions for emulating them. First, we list many ways to modify the performance of platforms so that developers may test their code under different memory performance profiles. This is required to identify kernels and data buffers that are sensitive to memory performance. Then, we present several techniques for exposing fake heterogeneous memory information to the software stack. This is useful for adapting runtimes and applications to heterogeneous memory so that different kinds of memory are detected at runtime and so that buffers are allocated in the appropriate one.

Cite

CITATION STYLE

APA

Foyer, C., Goglin, B., & Rubio Proaño, A. (2023, July 1). A survey of software techniques to emulate heterogeneous memory systems in high-performance computing. Parallel Computing. Elsevier B.V. https://doi.org/10.1016/j.parco.2023.103023

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free