面向不同应用场景的NVM动态内存分配器研究

来源 :华中科技大学 | 被引量 : 0次 | 上传用户:txiujykyu6
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
在全球数据量呈现爆炸式增长的大数据时代,传统存储系统架构已成为瓶颈。NVM(Non-Volatile Memory)的出现,为解决传统存储系统内外存之间的性能鸿沟、满足数据密集型应用对内存访问的需求带来了希望。在DRAM(Dynamic Random Access Memory)与NVM混合的架构下,由于NVM在不同应用场景下需要满足不同的内存需求,使得传统用户层的动态内存分配器不再适用,需要重新设计针对NVM特性的内存分配器。
  现有NVM内存分配器未充分考虑NVM介质特性,数据结构的设计不能满足NVM在不同应用场景下的内存需求,元数据开销较大,内存利用率低。针对NVM不同的应用场景,设计实现了综合应用场景下的高效用户层动态内存分配器--POMalloc,充分发挥在非易失场景下NVM高性能、持久性以及在易失场景下大容量、低成本的优势。针对非易失内存服务的应用场景需求,基于AVL树设计了粗粒度内存管理方案,避免元数据频繁操作造成的NVM写性能下降,同时设计由应用程序自身管理分配状态的数据恢复机制,避免内存永久性泄露。针对易失性内存服务应用场景需求,采用Bitmap结构通过对内存块的细粒度划分,解决了频繁的小字节内存分配导致的内存利用率低的问题,同时设计了驱动程序运行机制,为应用程序进行轻量级的混合内存分配服务。
  在Redis和rocksdb存储系统上进行实际应用场景测试,结果表明,在非易失场景和易失场景下,Redis系统的吞吐量分别提高了10.6%和19.9%,DRAM内存占用量比原来系统分别减少了96.3%和93.7%,而rocksdb数据内存占用量相比innodb只占其60%,提高了系统性能的同时,降低了内存占用量。
其他文献
随着大数据和云计算技术的发展,越来越多的数据和服务都部署在数据中心中,这就使得数据中心存储系统的容量变大和异构性突出,导致存储系统的软硬件故障发生的概率变高,进而导致存储系统可靠性和可用性严重降低,增加运行维护成本。硬盘故障预测作为一种主动容错的技术,以其故障前瞻性提高存储系统的可靠性和可用性,越来越受到工业界和学术界的关注。但是,磁盘故障预测还是面临着许多问题,例如数据集的不平衡性、检出率和误报
NANDFlash具有高性能、低延迟、低功耗等优势,因此被广泛应用于数据密集型存储系统。日志结构文件系统(Log-structured File System,LFS)对Flash特性友好,其通过异地更新,将随机写转化为顺序写,具有更高的随机写性能和更低的一致性维护开销。然而,LFS在运行过程中仍然存在段清理开销过大、文件系统写放大严重等问题,导致LFS的性能和Flash设备的寿命大幅降低。  I
大数据时代,闪存凭借优越的性能逐渐取代磁盘成为主流的存储设备。在闪存存储系统中,闪存文件系统的日志结构写方式和闪存转换层的地址映射功能,使数据块和空闲块离散地分布在文件系统和闪存中,带来了严重的碎片化问题。碎片的管理分为碎片避免和碎片整理,现有的碎片避免方案主要面向磁盘文件系统,不适合闪存文件系统;而碎片整理引入了大量的写开销,严重缩短了闪存的寿命。  针对闪存文件系统的逻辑层碎片问题,提出了一种
学位
基于阻变存储器(Resistive Random Access Memory,RRAM)的交叉开关(Crossbar)阵列结构支持高能效存内计算(Processing-In-Memory,PIM),是实现神经形态计算系统最具潜力的架构之一。然而,RRAM器件其单元本身及RRAM单元构成的阵列具有一些非理想因素,这些非理想因素会影响计算的操作数进而使系统的计算准确率降低。选用单元稳定性更高的数字RR
传统动态随机存储器(Dynamic Random Access Memory,DRAM)面临存储密度难以进一步提升、刷新功耗高等问题。而新兴持久内存(Persistent Memory,PM)的读写性能与DRAM接近,同时还具有低功耗、非易失等特性。这使得PM正在成为DRAM内存的一种补充。在PM的几种访问模式中,直接访问(Direct Access, DAX)模式支持应用利用PM的非易失性,且避
随着闪存工艺尺寸的缩小以及单元内多比特存储技术的发展,闪存芯片的容量逐渐增加,但闪存的可靠性问题变得更加严重。固态硬盘(Solid State Driver,SSD)内部现有的可靠性方案(如ECC、RAID)不能很好的应对闪存的多级可靠性问题;另外,固定的可靠性方案未考虑块间磨损不平衡:在SSD前期提供了过多的冗余,从而增加了闪存的写放大,并且在SSD后期也不能容忍条带内出现多个错误的情况。  针
学位
键值存储系统是当前数据中心的主要存储技术,具有高性能、高可用和高扩展性的特点,能够满足大数据环境下的数据存储需求。另外,非易失性内存(Non-Volatile Memory,NVM)是一种新型存储设备,具有数据非易失、高存储密度、高性能和高并发等特点。新型NVM设备的出现,也为研究更高效的键值存储系统带来了机遇与挑战。  基于日志结构合并树(Log-StructuredMerged-Tree,LS
基于日志结构合并树(Log Structured Merged Tree,LSM-tree)的键值存储系统以其良好的存储扩展性而被广泛地用作于各类互联网应用的存储服务。然而,互联网中数据总量的急剧增长为键值存储系统带来了新的问题。一方面,键值存储系统的缓存容量逐渐变得相对不足,而缓存往往对整个系统的性能起到关键性作用。另一方面,键值存储系统往往为多种应用提供服务,如出行类、餐饮类以及办公类应用等。
学位
互联网即将进入5G时代,智慧终端和传感器等设备产生的数据呈指数级增长,对云基础设施的需求不断扩大。键值存储系统作为非结构化数据库的代表,在数据中心扮演着举足轻重的角色,其主要存储引擎是日志结构合并树(Log-StructuredMerge-Tree,LSM树)。但测试发现,由于LSM树的L0层SST文件的键范围存在重叠,加上L0层容量控制机制,使得LSM树的合并操作会引起系统写性能周期性波动。  
学位
新型快速存储设备NVMeSSD(Non-volatile Memory Express SSD)以其高性能,低延迟的特点,逐渐替代传统硬件设备成为构建大规模高性能存储系统的首选。硬件设备变更推动了I/O软件栈的变革,为了降低I/O路径的软件开销以及充分发挥硬件性能,NVMe精简软件栈逐渐成为NVMeSSD等高性能存储设备的标配。然而无论内核NVMe软件栈还是用户态NVMe软件栈均以减少I/O请求处