Stephen Bates (@stepbates)
今年1月25日,我有幸参加了于加州圣何塞举办的SNIANVM峰会。SNIA与Intel联手合作,成功举办了此次行业盛会,吸引了NVM领域知名专家的广泛参与。峰会中举办了涉及以下三个主要论题的多场论坛与演讲:
1. NVDIMMs。NVDIMM产品已经存在了一段时间,但是一直主板兼容及操作系统支持相关的多方面问题。不言而喻,虽然这些问题依然存在,但各种支持的问题仍然得到了一定程度的改善。我下一步将刊出一篇更加深入的有关NVDIMM的博文,其中将深入挖掘更多相关的细节信息,并将之与市面上现有的替代产品进行比较,如我们PMC公司的Flashtec NVRAM加速卡 。
2. 下一代NVM (NG-NVM)产品。我有一个特别的咒语:)。大家不要再把NVM当作快速存储设备,而将它看成是(慢速)存储设备!这个咒语深刻影响到系统如何与NVM设备进行通信,SNIA在峰会中指出了若干这些影响。
a. NG-NVM可以按字节寻址,写之前也不再需要擦除。
b. NG-NVM的读/写时间会更加平衡。
c. 访问NG-NVM的速度要比NAND闪存快得多。
以上三点对与NVM设备的通信存在巨大的影响,与目前与NAND闪存的通信方式将大相径庭。我同样会在今后的另一篇博文中对此进行详细论述。
3. NVM编程模型。在如何与NG-NVM设备进行通信的研究上,SNIA一直位于业界前沿。他们很早就意识到,需要对操作系统进行一些重大的改动,才能支持NVM作为主存储设备。由于操作系统的生命周期更换非常缓慢,因此需要眼下就针对这个问题开展相应工作,以便在2~3年后为该类存储作好充分准备。比如说:
a.非易失性主存储意味着内存损坏并重新开机后,内存的内容仍然被保留(不像DRAM一样被清除),因此,被破坏的内存会持续下去,可能导致通过开机/关机也无法解决的无限循环的死机故障,这个问题如何解决?
b.一旦掉电,我们如何确保系统再重新启动后恢复到初始状态?
c.写入非易失性主存储时,如何确定该写操作是否真的写入了该介质(而不是某层缓存)?
与此类存储相关的一大堆代码开始在线上流传。下面是其中几个优秀的代码库:
a. PMEM库. 提供了与持久性主存相关的一系列工具。
b. Linux DAX 内核延展. 提供了若干工具,可将主存储的一些部分当成块设备(从而实现FSaddition)。此外,也提供了EXT4支持接口以实现持久性。
c. Linux PMFS. 提供了一个用于持久性内存的文件系统,增加了代码,以确保写操作确实在介质上进行。
总而言之,这是十分富有成效的一天。我见证了行业圈认识到了NVM在未来十年将面临的变化,也意识到系统及软件设计均需要随之而变,才能将其性能发挥到极致。与会的许多同仁都一致认为,我们正处于NVM的一个激动人心的关口上。对此,我完全认同,并期待着投身到这场变革的洪流当中!
SNIA NVM Summit: NVDIMMs, Programming Models
and Next-Generation Non-Volatile Memory
On January20, 2015, I had the pleasure of attending theSNIA NVM Summit in San Jose, California.This was a great event, and kudos to SNIA and Intel for putting it together.The event was very well attended by a who’s who of the NVM world. Therewere a lot of great panels and presentations covering three main themes:
1. NVDIMMs.NVDIMMs have been around for some time but have had issues with motherboard compatibility and OS support. It is clear that, while issues still remain,support is improving. I will be doing a more in-depth blog on NVDIMMs soon,where I will delve into them in a lot more detail and compare them to current alternatives, such as ourFlashtec NVRAM card.
2. Next-Generation NVM (NG-NVM). I have a mantra ;-). Let’s stop thinking about NVM as fast storage and start thinking about it as (slow) memory! This mantra has a lot of implications for how systems talk to NVM, and SNIA called out some of these at the summit:
a. NG-NVMwill be byte-addressable and will not require erasure before writing.
b. NG-NVMwill have more symmetric read/write times.
c. NG-NVMwill be much faster to access than NAND flash.
These three items have huge implications for how we should talk to itversus how we talk to NAND flash today. Again I will be delving into this inmore detail in an upcoming blog.
3. NVM Programming Models. SNIA have been at the forefront of determining how we should talk to NG-NVM. They realize there are major things that have to change in operating systems in order to support NVM as mainmemory. OS life cycles can be very slow, so we need to be working on this topic now to be ready for this memory in 2-3 years time. For example:
a. Non-volatile main memory implies that memory corruption survivesa power cycle. How do we avoid an infinite cycle of “blue screens of death”?
b. If power is lost, how do we ensure the system is restored to a clean state upon reboot?
c. When we write to non-volatile main memory how do we determine if the write has made it to the medium (as opposed to some level of cache)?
There is a whole pile of code starting to appear online related to this effort. Here are some good examples to get you started:
a. PMEMlibrary. A
suite of tools for working with persistent main memory.
b. Linux DAXkernel extensions. Tools
to support treating sections of main memory as a block device (to allow for FS addition).Also has EXT4 support hooks for persistence.
c. Linux PMFS.
Afile-system for persistent memory that adds code to ensure writes can becommitted to the medium.
All in all it was a very good day. Itis reassuring to see that the industry recognizes that NVM will be changingover the next decade and systems and software will need to change to take mostadvantage of it. Many attendees believe we are at a very exciting point forNVM. I tend to agree and look forward to being part of the adventure!
SNIA NVM 峰会: NVDIMMs、编程模型及下一代非易失性存储
原文地址:http://blog.csdn.net/pmc/article/details/43562357