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, or graph analytics, because most pages have only one access over the entire execution time and other pages accesses have no temporal locality. We make a case for exploring application characteristics using object-level mappings between DRAM and NVM. Our preliminary experiments show that an object-level memory tiering can better capture the application behavior and reduce the execution time of graph analytics by 21% (avg) and 51% (max), when compared to AutoNUMA, while significantly reducing the number of memory accesses in NVM.
翻译:与 DRAM 相比, 非流动内存( NVM) 可以提供更高的密度和较低的成本。 它的主要缺点是它比 DRAM 慢。 另一方面, DRAM 由于其成本和能量消耗, 具有更深入的缩放特性。 NRAM 可能与 DRAM 并存于计算机系统中, 而最大的挑战是知道对每一类内存进行分配的数据。 最先进的方法是Linux 内核的AUNUMA 。 先前的工作仅限于测量AUNUMA 的应用程序执行时间, 而不理解 AUNIMA的行为。 在这项工作中, 我们提供了对AutONUMA 进行更深入的描述, 例如, 明确指定了一组页面的位置, 同时跟踪AUNUMA 的促进和降级决定。 我们的分析表明, 在运行图形处理应用程序时, AUNUMA 的好处可能不大, 因为大多数页面只能使用整个执行时间一次访问, 而其它页面的访问没有时间定位。 我们用目标应用程序来探索应用应用应用程序的特性特性特性特性特性特性, 比较DM 21 和NVM 级的 级的 级 级, 级 级的 级的 级的 级的 级的 级的 级的 级的 级的 将显示为21 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级的 级