Persistent Memory (PMEM), also known as Non-Volatile Memory (NVM), can deliver higher density and lower cost per bit when compared with DRAM. Its main drawback is that it is typically slower than DRAM. On the other hand, DRAM has scalability problems due to its cost and energy consumption. Soon, PMEM will likely coexist with DRAM in computer systems but the biggest challenge is to know which data to allocate on each type of memory. This paper describes a methodology for identifying and characterizing application objects that have the most influence on the application's performance using Intel Optane DC Persistent Memory. In the first part of our work, we built a tool that automates the profiling and analysis of application objects. In the second part, we build a machine learning model to predict the most critical object within large-scale graph-based applications. Our results show that using isolated features does not bring the same benefit compared to using a carefully chosen set of features. By performing data placement using our predictive model, we can reduce the execution time degradation by 12\% (average) and 30\% (max) when compared to the baseline's approach based on LLC misses indicator.
翻译:与 DRAM 相比, PMEM (PMEM) (PMEM) (PMEM) 也可以称为 非自动内存(NVM ), 可以带来更高的密度和较低的成本。 它的主要缺点是它通常比 DRAM 慢。 另一方面, DRAM 由于其成本和能量消耗,具有可缩放性的问题。 很快, PMEM 可能会与计算机系统中的 DRAM 并存, 但最大的挑战是知道在每种内存类型上分配哪些数据。 本文描述了一种识别和定性应用对象的方法, 这些应用对象对应用程序的性能影响最大, 使用 Intel Optane DC 持久性内存。 在我们工作的第一部分, 我们建立了一个工具, 将应用程序对象的剖析和分析自动化。 在第二部分, 我们建立了一个机器学习模型, 以大规模图形应用程序中最关键的对象预测。 我们的结果表明, 使用孤立的特性不会带来与使用精心选择的一套特征的相同的好处。 通过使用我们的预测模型进行数据定位, 我们可以将执行时间退化减少 12\ (平均) 和 30\ 。