Memory-Aware Management for Multi-Level Main Memory Complex using an Optimization of the Aging Paging Algorithm

Gal Oren, Leonid Barenboim, Lior Amar
{"title":"Memory-Aware Management for Multi-Level Main Memory Complex using an Optimization of the Aging Paging Algorithm","authors":"Gal Oren, Leonid Barenboim, Lior Amar","doi":"10.1145/2928275.2933276","DOIUrl":null,"url":null,"abstract":"Memory and storage are often assumed to be unsophisticated, flat resources, with simple properties, such as a constant access time. Over the years this assumption has been proven to be wrong, and understanding of the memory hierarchy could be useful in order to enhance the performance of an algorithm or a data structure [1]. For example, the Storage Class Memory (SCM) is a new technology which represents a new hybrid form of storage and memory with uniqe characteristics, meaning a memory which is non-volatile, cheap in per bit cost, has fast access times for both read and writes using cache line access, and is solid state. Also, the SCM is supposed to have different versions with different access speeds and volumes, meaning that it might be possible to add different SCM devices to the memory hierarchy as an extension of the RAM, and manage this enlarged main memory complex using special algorithms [2]. A combination between the SCM technology and a designated Memory Allocation Manager (MAM) that will allow the developer to manually control the different memories will be likely to achieve a new level of performance for memory-aware data structures. However, although the manual MAM seems to be the optimal approach for multilevel main memory complex management, this technique is still very far from being realistic because of several reasons, and the chances that it would be implemented in current codes using High Performance Computing (HPC) platforms is quite low. This premise means that the most reasonable way to introduce the SCM into any usable memory system would be by implementing an automated version of the MAM using the fundamentals of the paging algorithms, as used for a standard memory hierarchy. Our hypothesis is that achieving appropriate transferability between these new main memory complex levels may be possible using ideas of algorithms employed in current virtual memory systems, and that the memory-aware adaptation of those algorithms to a multi-level main memory complex is possible. We investigated various paging algorithms, and found the ones that could be adapted successfully from a standard memory hierarchy to a hierarchy with multi-level main memory complex. We discovered that using a memory-aware adaptation of the Aging paging algorithm results in the best performances in terms of Hit / Miss ratio and access speed. Specifically, we show that this modification can improve the access speed of the main memory complex by about 75%, and that the new algorithm manages to achieve the same or better Hit / Miss ratio in almost all cases in comparison to the current alternatives.","PeriodicalId":20607,"journal":{"name":"Proceedings of the 9th ACM International on Systems and Storage Conference","volume":"331 1","pages":""},"PeriodicalIF":0.0000,"publicationDate":"2016-06-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the 9th ACM International on Systems and Storage Conference","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/2928275.2933276","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

Abstract

Memory and storage are often assumed to be unsophisticated, flat resources, with simple properties, such as a constant access time. Over the years this assumption has been proven to be wrong, and understanding of the memory hierarchy could be useful in order to enhance the performance of an algorithm or a data structure [1]. For example, the Storage Class Memory (SCM) is a new technology which represents a new hybrid form of storage and memory with uniqe characteristics, meaning a memory which is non-volatile, cheap in per bit cost, has fast access times for both read and writes using cache line access, and is solid state. Also, the SCM is supposed to have different versions with different access speeds and volumes, meaning that it might be possible to add different SCM devices to the memory hierarchy as an extension of the RAM, and manage this enlarged main memory complex using special algorithms [2]. A combination between the SCM technology and a designated Memory Allocation Manager (MAM) that will allow the developer to manually control the different memories will be likely to achieve a new level of performance for memory-aware data structures. However, although the manual MAM seems to be the optimal approach for multilevel main memory complex management, this technique is still very far from being realistic because of several reasons, and the chances that it would be implemented in current codes using High Performance Computing (HPC) platforms is quite low. This premise means that the most reasonable way to introduce the SCM into any usable memory system would be by implementing an automated version of the MAM using the fundamentals of the paging algorithms, as used for a standard memory hierarchy. Our hypothesis is that achieving appropriate transferability between these new main memory complex levels may be possible using ideas of algorithms employed in current virtual memory systems, and that the memory-aware adaptation of those algorithms to a multi-level main memory complex is possible. We investigated various paging algorithms, and found the ones that could be adapted successfully from a standard memory hierarchy to a hierarchy with multi-level main memory complex. We discovered that using a memory-aware adaptation of the Aging paging algorithm results in the best performances in terms of Hit / Miss ratio and access speed. Specifically, we show that this modification can improve the access speed of the main memory complex by about 75%, and that the new algorithm manages to achieve the same or better Hit / Miss ratio in almost all cases in comparison to the current alternatives.
基于老化分页算法优化的多级主存复合体内存感知管理
内存和存储通常被认为是简单的、扁平的资源,具有简单的属性,比如恒定的访问时间。多年来,这种假设已被证明是错误的,为了提高算法或数据结构[1]的性能,对内存层次结构的理解可能是有用的。例如,存储类内存(SCM)是一种新技术,它代表了一种具有独特特性的存储和内存的新混合形式,这意味着存储器是非易失性的,每比特成本便宜,使用高速缓存线访问读取和写入都具有快速访问时间,并且是固态的。此外,SCM应该具有具有不同访问速度和容量的不同版本,这意味着可以将不同的SCM设备添加到存储器层次结构中,作为RAM的扩展,并使用特殊算法[2]来管理这个扩大的主存储器复体。SCM技术和指定的内存分配管理器(MAM)之间的组合将允许开发人员手动控制不同的内存,这可能会为内存感知数据结构实现一个新的性能水平。然而,尽管手动MAM似乎是多层主存复杂管理的最佳方法,但由于几个原因,该技术仍然非常不现实,并且它将在使用高性能计算(HPC)平台的当前代码中实现的机会非常低。这个前提意味着将SCM引入任何可用内存系统的最合理的方法是使用分页算法的基本原理实现MAM的自动化版本,就像用于标准内存层次结构一样。我们的假设是,利用当前虚拟内存系统中采用的算法思想,在这些新的主内存复合体级别之间实现适当的可转移性是可能的,并且这些算法的内存感知适应多层次主内存复合体是可能的。我们研究了各种分页算法,并找到了可以成功地从标准内存层次结构调整到具有多级主内存复杂结构的层次结构的分页算法。我们发现,使用老化分页算法的内存感知改编,在命中率/失误率和访问速度方面可以获得最佳性能。具体来说,我们表明这种修改可以将主存复体的访问速度提高约75%,并且与当前替代算法相比,新算法在几乎所有情况下都能实现相同或更好的命中率。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信