一种NUMA架构下NVM磨损均衡的并行空间管理方法技术

技术编号:33122267 阅读:17 留言:0更新日期:2022-04-17 00:26
本发明专利技术公开了一种NUMA架构下NVM磨损均衡的并行空间管理方法,克服了现有的磨损均衡策略直接应用在NUMA架构中时,由于磨损策略中的空间管理没有考虑NUMA多节点处理器和存储器管理架构,将导致三方面的问题:1)节点内多条非易失性内存非均匀磨损;2)节点间非易失性内存存储空间非均衡磨损;3)多个处理器请求空间分配时的扩展性问题。采用了节点内磨损均衡机制、并行分配回收机制和节点间磨损均衡机制,旨在实现NUMA架构中节点内和节点间多个非易失性内存条磨损均衡并提升空间分配的并行性能。能。能。

【技术实现步骤摘要】
一种NUMA架构下NVM磨损均衡的并行空间管理方法


[0001]本专利技术涉及新型存储
,具体涉及到一种NUMA架构下非易失性内存NVM磨损均衡的并行空间管理方法。

技术介绍

[0002]近几年出现的新型非易失性内存(Non

Volatile Memory,NVM)具有访问速度快、按字节寻址、存储密度高、数据非易失、低延迟、低功耗等优良特性,例如PCM、3D XPoint以及英特尔公司最新发布的Optane DC PMM存储器,这些非易失性内存的出现有望缓减高速处理器和低速存储器之间的性能差别,为存储系统的发展带来了机遇。为了有效利用非易失性内存的特性,学术界和工业界分别设计实现了许多非易失性内存文件系统,例如EXT4

DAX、SCMFS、 PMFS、NOVA、SIMFS、HiNFS。这些内存文件系统使用非易失性内存作为文件数据的存储设备,避免了传统块设备文件系统经过操作系统缓存和I/O软件栈的软件开销,直接在应用程序缓存和非易失性内存设备之间拷贝数据,获得较好的性能提升。
[0003]虽然非易失性内存具有诸多优点,然而非易失性内存普遍存在耐受度低的缺陷,例如PCM的写耐受度约为108次,即PCM的存储介质单元的相变材料在晶态和非晶态切换达到108次后,该存储单元变得不稳定,导致存储数据出错,严重影响文件系统的可靠性。这一缺陷阻碍了非易失性内存的广泛应用,是亟待解决的关键问题。目前,防止非易失性内存过渡磨损的重要方法是磨损均衡技术,即通过把写操作均衡的分布到整个存储空间,来延长非易失性内存的寿命。许多非易失性内存文件系统结合数据结构的访问特征提出了多种磨损均衡算法,通过数据迁移来避免集中写存储单元的情况,解决底层新型存储介质磨损不均衡的问题,有效延长非易失性内存的寿命。
[0004]为了实现计算机系统更大的吞吐率、可靠性和经济性,现代的处理器普遍采用多处理器设计。多处理器系统根据处理器访问内存的时间是否一致,其内存架构可分为一致性内存访问(UMA,Uniform Memory Access)和非一致性存储器访问(Non

Uniform Memory Access,NUMA)。对比UMA架构,NUMA 架构将处理器和存储器划分为节点管理,避免了多个处理器寻址同一内存地址空间时内存访问冲突不断增加而导致的扩展性问题,具有更低的本地内存访问延迟和更好的扩展性。NUMA架构计算机普遍应用在高性能计算和云计算领域,是数据中心服务器采用的主流架构。许多基础软件针对NUMA架构计算机系统进行了特殊的优化处理。例如,Linux内核内存管理支持非一致性内存访问模型,调度器的负载平衡以节点为管理域;许多研究工作针对NUMA架构提出了数据分配策略机制,针对内存分配策略针对NUMA架构进行优化;企业针对NUMA 架构对数据库管理系统、虚拟化平台进行了特殊的处理。
[0005]然而,现有的非易失性内存文件系统磨损均衡策略是针对UMA架构设计的,没有针对NUMA架构进行设计优化。现有的磨损均衡策略直接应用在NUMA 架构中时,由于磨损策略中的空间管理没有考虑NUMA多节点处理器和存储器管理架构,将导致三方面的问题:1)节点内多条非易失性内存非均匀磨损;2) 节点间非易失性内存存储空间非均衡磨损;3)多个
处理器请求空间分配时的扩展性问题。非易失性内存文件系统磨损均衡策略需要针对NUMA架构进行专门的设计。

技术实现思路

[0006]针对现有技术中存在的问题,本专利技术提出一种NUMA架构下非易失性内存NVM磨损均衡的并行空间管理方法,旨在实现NUMA架构中节点内和节点间多个非易失性内存条磨损均衡并提升空间分配的并行性能。
[0007]鉴于此,本专利技术采用的技术方案是:NUMA架构下非易失性内存NVM 磨损均衡的并行空间管理方法,所述方法包含3个机制:节点内磨损均衡机制、并行分配回收机制、节点间磨损均衡机制。具体地,一种NUMA架构下NVM磨损均衡的并行空间管理方法,包括以下步骤:
[0008]对单个NUMA节点内多条非易失性内存条内和条间的磨损进行均衡处理,包括采用数据块写次数计数器管理模块管理每个数据块的写次数,采用基于桶排序的数据块磨损范围管理模块管理单个NUMA节点中的空闲数据,采用在线磨损范围调整算法在线调整两个磨损范围桶中数据块数量。
[0009]采用并行分配回收机制实现数据块的并行分配回收,包括采用数据块并行分配回收管理模块管理分配数据块链表和回收数据块链表,采用数据块轮询并行分配策略,实现多链表中数据块均衡分配磨损,定期更新处理器核id和链表 id之间的映射关系。
[0010]采用节点间磨损均衡机制,以NUMA节点为管理域,在各个NUMA节点上均匀地分布文件,把写操作随机的分布到各个节点,平衡节点间非易失性内存的磨损。
[0011]进一步,所述数据块写次数计数器管理模块,管理每个数据块的写次数。以NUMA节点为范围,将单个NUMA节点中所有非易失性内存作为一个域进行管理,为域中每个数据块分配一个写次数计数器,记录表示数据块磨损程度的写次数,并在节点内预留一段非易失性内存空间作为写次数计数器的存储空间。
[0012]进一步,所述基于桶排序的数据块磨损范围管理模块将单个NUMA节点中的空闲数据块放入低磨损范围桶或高磨损范围桶,依据的原则是:使用当前空闲数据块最大写次数作为高低磨损范围桶的边界,写次数比边界大的数据块放入高磨损范围桶中,否则放入低磨损范围桶中。所述低磨损范围桶和高磨损范围桶中的空闲数据块通过链表管理结构体和无序单链表进行管理。
[0013]进一步,所述在线磨损范围调整算法,在分配数据块时优先从低磨损范围桶中分配;当低磨损范围桶中的数据块分配完后,此时,高磨损范围桶中的数据块为较低磨损的空闲数据块,接下来从高磨损范围桶中分配数据块;在回收数据块时,构建更高磨损范围桶。
[0014]进一步,所述数据块并行分配回收管理模块,通过管理与NUMA节点中处理器核数量相同个数的分配数据块链表和回收数据块链表,避免多核在分配回收数据块过程中对数据块链表的竞争访问,提升空间分配回收的并行性能。
[0015]进一步,所述数据块轮询并行分配策略,实现多链表中数据块均衡分配磨损,定期更新处理器核id和链表id之间的映射关系,使得多个处理器核轮流地从多个空间分配链表中分配数据块,均匀消耗多个空间分配链表。
[0016]进一步,所述节点间磨损均衡机制,在新建文件操作时,将新建文件均匀地创建在各个NUMA节点上,把写操作随机的分布到各个节点,均衡节点间非易失性内存的磨损。
[0017]本专利技术还提供一种计算机可读存储介质,其存储有计算机程序,所述计算机程序被执行时,可实现上述NVM磨损均衡并行空间管理。
[0018]本专利技术提出的一种NUMA架构下非易失性内存NVM磨损均衡的并行空间管理方法,通节点内磨损均衡机制、节点间磨损均衡机制,实现 NUMA架构中节点间和节点内非易失性内存的条内条间本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种NUMA架构下NVM磨损均衡的并行空间管理方法,其特征在于,包括以下步骤:对单个NUMA节点内多条非易失性内存条内和条间的磨损进行均衡处理,包括采用数据块写次数计数器管理模块管理每个数据块的写次数,采用基于桶排序的数据块磨损范围管理模块管理单个NUMA节点中的空闲数据,采用在线磨损范围调整算法在线调整两个磨损范围桶中数据块数量;采用并行分配回收机制实现数据块的并行分配回收,包括采用数据块并行分配回收管理模块管理分配数据块链表和回收数据块链表,采用数据块轮询并行分配策略,实现多链表中数据块均衡分配磨损,定期更新处理器核id和链表id之间的映射关系;采用节点间磨损均衡机制,以NUMA节点为管理域,在各个NUMA节点上均匀地分布文件,把写操作随机的分布到各个节点,平衡节点间非易失性内存的磨损。2.根据权利要求1所述一种NUMA架构下NVM磨损均衡的并行空间管理方法,其特征在于:所述数据块写次数计数器管理模块,以NUMA节点为范围,将单个NUMA节点中所有非易失性内存作为一个域进行管理,为域中每个数据块分配一个写次数计数器,记录表示数据块磨损程度的写次数,并在节点内预留一段非易失性内存空间作为写次数计数器的存储空间。3.根据权利要求1所述一种NUMA架构下NVM磨损均衡的并行空间管理方法,其特征在于:所述基于桶排序的数据块磨损范围管理模块将单个NUMA节点中的空闲数据块放入低磨损范围桶或高磨损范围桶,依据的原则是:使用当前空闲数据块最大写次数作为高低磨损范围桶的边界,写次数比边界大的数据块放入高磨损范围桶中,否则放入低磨损范围桶中。4.根据权利要求3所述一种NUMA架构下NVM磨损均衡的并行空间管理方法,其特征在于:所述低磨损范围桶和高磨损范围桶中的空闲数据块通过链表管理结构体和无序单链表进行管理。5.根据权利要求1所述一种NUMA架构下NVM磨损均衡的并行空间管理方法,其特征在于:所述在线磨损范围调整算法,在分配数据块时优先从低磨损范围桶中分配;当低磨损范围桶中的数据块分配完后,此时,高磨损范围桶中的数据块为较低磨损的空闲数据块,接下来从高磨损范围桶中分配数据块;在回收数据块时,构建更高磨损范围桶。6.根据权利要求5所述一种NUMA架构下NVM磨损均衡的并行空间管理方法,其特征在于:所述在线磨损范围调整算法包括以下步骤:步骤S601,当并行分配模块列表中的空...

【专利技术属性】
技术研发人员:吴挺严琪韵陈阔钱鹰
申请(专利权)人:重庆邮电大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1