英特尔傲腾持久内存的两种操作模式介绍

存储技术

595人已加入

描述

  英特尔傲腾持久内存有两种操作模式,内存模式(MemoryModel)和APPDirect模式,无论哪种模式,总归都能享受到大容量,亲民价的内存,广而言之,有了大内存之后,机器重启速度快了,运行各种程序的速度只能更快不会变慢,升级系统什么的也会变的更快。

  之前的文章里提到过随着负责的提升,延迟并不会像NAND一样升高,傲腾的特性有这样一点,写之前不需要先擦除,直接写就可以。

  内模式:大容量,价格亲民,易失性

  当配置成内存模式后,应用和操作系统将其视为易失性内存池,跟现在基于DRAM的系统没什么分别。在这种模式下,不需要应用程序做持久存储器编程,断电时数据会丢失。

  在内存式下,DRAM作为高频热数据的Cache,但英特尔的傲腾数据中心持久内存的容量能做到非常大,英特尔至强可扩展处理器的内存控制器来管理Cache。

  当需要内存读取数据时,内存控制器先查看一下DRAMcache,如果有的话,那就从DRAM里读数据,延迟非常低。如果DRAM里没有这个数据的话,就从英特尔傲腾数据中心持久内存里读数据,延迟也会相应高点。

  应用程序数检索相对稳定时与内存控制器匹配后可提高缓存的命中率,性能表现自然会相应提升,会有近似于DRAM的表现。当请求数据的随机性比较大的时候,性能表现会差一些,大约100纳秒的级别。

  在内存模式,数据是易失性的,断电的话数据就没了。不丢失数据的模式是第二种模式,叫AppDircet模式。

  内存模式将大容,平民价的内存带给了原来的应用,包括虚拟化的数据库,大数据分析应用非常适合用这个。

  AppDirct模式:大内存,亲民价,非易失性持久

  AppDirec笔者目前还没看见官方怎么翻译,AppDirect翻译成“应用直连”模式可能比较合适,此前,应用软件访问存储的过程比较复杂,想拿到数据的过程比较绕,AppDirect模式下应用可直接连到硬件,通过DDR内存通道拿到存储,把文件系统当内存用,软件无需做太多适应和修改。

  当配置成AppDiect之后,应用和操作系统会识别出有两种直接载入(directload)/存内存(Storememory)模式,会自动判断哪些读写操作适合DRAM还是傲腾持久内存。

  需要低延迟同时不需要久存储的数据可以放在DRAM上。需要持久存储或者结构化存储的大量数据适合放在傲腾数据中心持久内存上。如果想让内存中的数据持久化,那么肯定就得选AppDirect模式了。

  内存数据库,内存分析框架需要快速存储的应用都非常适合用AppDirec模式。傲腾持久内存有其特殊性,但仍有非常适用于此的应用。

  AppDirect模式要能识别持久内存的文件系统,该文件系统需要操作系统或者虚拟环境的支持,包括微软WinServer2019,Ubuntu,RedHat,VMwareESXv6.7都支持傲腾数据中心持久内存,思科的Hyperflex超融合也支持,RDMA技术也支持。

  模式决定了系统能使用多少内存在AppDirect模式下,DRAM和英特尔傲腾数据中心持久内存,在内存模式(MemoryMode)下,DRAM和傲腾持久内存都算内存,在内存模式下,DRAM用作cache,不作为独立的内存资源来显示,简单说系统不把它认作内存。

  比如,一个平台里有1.536B的英特尔傲腾持久内存和192GB的DRAM内存,如果是AppDirect模式下的话,系统显示有1.728TB内存,如果是内存模式的话,只能显示1.536TB的内存。

  系统管理员可以通过BIOS或者内管理工具来配置这个模式,也可以把内存池分区,不同分区可同时运行两种模式。

  在非易失性的AppDirect式下,内存数据有可能泄露掉,比较安全的flush掉内存的方式是丢掉内存加密的密钥,但在共享内存场景下也不行,比较合理的方式是参考SSD中用的TRIM指令。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分