美文网首页
持久内存(1):Persistent Memory 介绍

持久内存(1):Persistent Memory 介绍

作者: 朝朝Mumu | 来源:发表于2021-05-31 19:24 被阅读0次

什么是持久内存?

英文名Persistent Memory,简称PMem,PM。
持久内存用于描述允许程序像内存一样可直接按字节寻址的数据访问技术,而其存储的内容是非易失性的,可在整个电源循环中保存。

俗称:内存级速度、存储级容量,因此也称为Storage Class Memory,即存储级内存,简称SCM

用PM它能带来什么好处?

有了这种新型存储介质,包含持久性内存(PM)的系统提供更快的启动时间,更快地访问大型内存数据集,并且通常会降低总拥有成本(TCO),从而可以超越传统数据中心配置。

随着性能需求的快速增加,存储系统需要变得更快、更加密集、更加便宜,同时还要更加环保。内存计算(毫无疑问会极大的消耗内存)也带来了不断增加的内存配置以及动态随机访问内存(DRAM)的成本和能耗之间的平衡问题。
SCM已经成为了一个新的流行词,代表着下一代的非易失性内存(NVM)。

也就是说NVM、SCM、PM在本文中都是相接近的概念。要注意的是,NVM并不是指某种特定的硬件介质内存,而是针对具有非易失特性的内存的统称。 而我们将要介绍的PMem,也就是存储级内存。它不仅具有大容量的突出优点,而且还兼具非易失的存储特性,这就为内存技术革命提供了良好的基础。

它是内存吗?

  • 不是。它具有类似于内存的方面也有类似于存储的方面,但是通常不会替换内存或存储。相反,持久性内存是第三层,与内存和存储结合使用。
pmem

蓝色这一层是持久内存所处的位置。

PM可以直接使用吗?就像加装一条内存?

  • 持久性内存不是软件应用程序的即插即用技术。
  • 虽然它看起来像传统的DRAM内存,但需要对应用程序进行修改,以充分利用PM的持久性特性。

PMem当然也可以直接作为内存使用,容量更大,访问速度会慢一些,但仍然远远快于传统存储。

安装了PM的机器上旧程序还可以正常运行吗?

  • 可以。不经修改的应用程序可以正常运行,但无法利用PM提供的优势。

需要修改操作系统层面吗?

  • 不需要。在PM的设计研发阶段,服务器和操作系统供应商已经开始介入并提供原生支持。许多流行的虚拟化技术也支持持久性内存。

主要特征

  • 持久性内存性能(吞吐量、延迟、带宽)比NAND闪存好,但比DRAM低
  • 相比DRAM,顾名思义,持久性内存的数据可以是非易失的,断电数据不丢失
  • 持久性内存的耐久性比NAND高出一个数量级,服务器坏了它也还没坏!
  • 持久性内存的容量远远超出DRAM,且可以使用DIMM通道与DRAM共存
  • 集成了PM的应用可以就地更新数据而不用序列化反序列化
  • PM像内存一样字节寻址,应用程序可以按需修改,而不需要read-modify-write的开销
  • 数据是CPU cache coherent的(缓存一致的)
  • PM提供DMA和RDMA操作
  • 位于持久性内存上的数据可以从用户空间直接访问,数据路径上没有内核代码,文件系统页缓存或中断

还有

PMem上的数据即刻可用:

  • 一旦电力供应,数据就可以用
  • 应用程序不需要花时间热身缓存,他们可以在内存映射时立即访问数据
  • 驻留在持久内存上的数据没有DRAM足迹,除非应用程序将数据复制到DRAM以更快地访问
  • 写入持久性内存模块的数据是系统的本地数据。 应用程序负责跨系统复制数据。

持久内存合集

0-持久内存序:背景与概念
1-持久内存:Persistent Memory 介绍
2-持久内存:适用于持久内存的数据结构
3-持久内存:PMDK开发库介绍

点:持久内存介绍、非易失性内存、硬件加速
线:PMem
面:性能优化

相关文章

网友评论

      本文标题:持久内存(1):Persistent Memory 介绍

      本文链接:https://www.haomeiwen.com/subject/qegbsltx.html