Affiliation:
1. Seoul National University, South Korea
2. Hanyang University, South Korea
3. Inha University, South Korea
Abstract
Hardware performance monitoring units (PMUs) are a standard feature in modern microprocessors, providing a rich set of microarchitectural event samplers. Recently, numerous profile-guided optimization (PGO) frameworks have exploited them to feature much lower profiling overhead compared to conventional instrumentation-based frameworks. However, existing PGO frameworks mainly focus on optimizing the layout of binaries; they overlook rich information provided by the PMU about data access behaviors over the memory hierarchy. Thus, we propose MaPHeA, a lightweight
M
emory hierarchy-
a
ware
P
rofile-guided
He
ap
A
llocation framework applicable to both HPC and embedded systems. MaPHeA guides and applies the optimized allocation of dynamically allocated heap objects with very low profiling overhead and without additional user intervention to improve application performance. To demonstrate the effectiveness of MaPHeA, we apply it to optimizing heap object allocation in an emerging DRAM-NVM heterogeneous memory system (HMS), selective huge-page utilization, and controlling the cacheability of the objects with the low temporal locality. In an HMS, by identifying and placing frequently accessed heap objects to the fast DRAM region, MaPHeA improves the performance of memory-intensive graph-processing and Redis workloads by 56.0% on average over the default configuration that uses DRAM as a hardware-managed cache of slow NVM. By identifying large heap objects that cause frequent TLB misses and allocating them to huge pages, MaPHeA increases the performance of the read and update operations of Redis by 10.6% over the transparent huge-page implementation of Linux. Also, by distinguishing the objects that cause cache pollution due to their low temporal locality and applying write-combining to them, MaPHeA improves the performance of STREAM and RADIX workloads by 20.0% on average over the system without cacheability control.
Funder
R&D program of MOTIE/KEIT
Engineering Research Center Program through the National Research Foundation of Korea
Korean Government MSIT
Inha University Research
Publisher
Association for Computing Machinery (ACM)
Subject
Hardware and Architecture,Software
Reference91 articles.
1. Prefetch inection based on hardware monitoring and object metadata
2. Thermostat
3. Write-rationing garbage collection for hybrid memories
4. AMD. 2017. AMD64 Architecture Programmer’s Manual Volume 2: System Programming. Retrieved from https://www.amd.com/system/files/TechDocs/24593.pdf.
5. J. A. Ang B. W. Barrett K. B. Wheeler and R. C. Murphy. 2010. Introducing the Graph 500. DOI:https://www.osti.gov/biblio/1014641
Cited by
2 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. TrackFM: Far-out Compiler Support for a Far Memory World;Proceedings of the 29th ACM International Conference on Architectural Support for Programming Languages and Operating Systems, Volume 1;2024-04-17
2. FiLiP: A File Lifecycle-based Profiler for hierarchical storage;Infocommunications journal;2022