TL;DR
This paper provides an in-depth analysis of AutoNUMA's behavior in memory tiering for graph analytics, revealing its limitations and proposing object-level tiering to improve performance and reduce NVM accesses.
Contribution
It offers a detailed characterization of AutoNUMA's page allocation and promotion/demotion decisions, and introduces object-level tiering as a more effective alternative for graph applications.
Findings
AutoNUMA's benefits are modest for graph analytics due to low temporal locality.
Object-level tiering reduces execution time by up to 51%.
Object-level tiering significantly decreases NVM memory accesses.
Abstract
Non-Volatile Memory (NVM) can deliver higher density and lower cost per bit when compared with DRAM. Its main drawback is that it is slower than DRAM. On the other hand, DRAM has scalability problems due to its cost and energy consumption. NVM will likely coexist with DRAM in computer systems and the biggest challenge is to know which data to allocate on each type of memory. A state-of-the-art approach is AutoNUMA, in the Linux kernel. Prior work is limited to measuring AutoNUMA solely in terms of the application execution time, without understanding AutoNUMA's behavior. In this work we provide a more in-depth characterization of AutoNUMA, for instance, identifying where exactly a set of pages are allocated, while keeping track of promotion and demotion decisions performed by AutoNUMA. Our analysis shows that AutoNUMA's benefits can be modest when running graph processing applications,…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
