Online Application Guidance for Heterogeneous Memory Systems
-
Published:2022-07-06
Issue:3
Volume:19
Page:1-27
-
ISSN:1544-3566
-
Container-title:ACM Transactions on Architecture and Code Optimization
-
language:en
-
Short-container-title:ACM Trans. Archit. Code Optim.
Author:
Olson M. Ben1ORCID,
Kammerdiener Brandon2ORCID,
Jantz Michael R.2ORCID,
Doshi Kshitij A.1ORCID,
Jones Terry3ORCID
Affiliation:
1. Intel Corporation, Chandler, AZ, USA
2. University of Tennessee, Knoxville, TN, USA
3. Oak Ridge National Laboratory, Oak Ridge, TN, USA
Abstract
As scaling of conventional memory devices has stalled, many high-end computing systems have begun to incorporate alternative memory technologies to meet performance goals. Since these technologies present distinct advantages and tradeoffs compared to conventional DDR* SDRAM, such as higher bandwidth with lower capacity or vice versa, they are typically packaged alongside conventional SDRAM in a heterogeneous memory architecture. To utilize the different types of memory efficiently, new data management strategies are needed to match application usage to the best available memory technology. However, current proposals for managing heterogeneous memories are limited, because they either (1) do not consider high-level application behavior when assigning data to different types of memory or (2) require separate program execution (with a representative input) to collect information about how the application uses memory resources.
This work presents a new data management toolset to address the limitations of existing approaches for managing complex memories. It extends the application runtime layer with automated monitoring and management routines that assign application data to the best tier of memory based on previous usage, without any need for source code modification or a separate profiling run. It evaluates this approach on a state-of-the-art server platform with both conventional DDR4 SDRAM and non-volatile Intel Optane DC memory, using both memory-intensive high-performance computing (HPC) applications as well as standard benchmarks. Overall, the results show that this approach improves program performance significantly compared to a standard unguided approach across a variety of workloads and system configurations. The HPC applications exhibit the largest benefits, with speedups ranging from 1.4× to 7× in the best cases. Additionally, we show that this approach achieves similar performance as a comparable offline profiling-based approach after a short startup period, without requiring separate program execution or offline analysis steps.
Funder
Exascale Computing Project
U.S. Department of Energy Office of Science
National Nuclear Security Administration
National Science Foundation
Publisher
Association for Computing Machinery (ACM)
Subject
Hardware and Architecture,Information Systems,Software
Reference74 articles.
1. Page Placement Strategies for GPUs within Heterogeneous Memory Systems
2. Thermostat
3. Performance Evaluation of Intel Optane Memory for Managed Workloads
4. ANL. 2019. U.S. Department of Energy and Intel to Deliver First Exascale Supercomputer. ANL. Retrieved from https://www.anl.gov/article/us-department-of-energy-and-intel-to-deliver-first-exascale-supercomputer.
5. Gaurav Banga, Peter Druschel, and Jeffrey C. Mogul. 1999. Resource containers: A new facility for resource management in server systems. In Proceedings of the 3rd Symposium on Operating Systems Design and Implementation (OSDI’99). USENIX Association, Berkeley, CA, 45–58.
Cited by
1 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Flexible and Effective Object Tiering for Heterogeneous Memory Systems;Proceedings of the 2023 ACM SIGPLAN International Symposium on Memory Management;2023-06-06