SNIA の Non-Volatile Memory Programming Model について

ストレージベンダーを中心とした業界団体 SNIA(スニアと発音する) は、NVM Express とは別に不揮発性メモリ(Non Volatile Memory; NVM)に関する様々な規格を決めようとしている。その一環としてSNIA NVM Programming Techinical Work Groupで NVM を使ったプログラムモデルの提唱を行っている。

  1. SNIA NVM Programming Model Working Draft September 30, 2013
  2. SDC 2013 での Andy Rudoff 氏(Intel) の講演資料 The Impact of the NVM Programming Model … プログラミングモデルの話がはじまるのは 23 ページ以降

上記の資料等で SNIA は NVM と Persistent Memory(PM) の二つの用語を使い分けている。境界は微妙だが NVM とは永続性のあるメディアで、PM とは storage technology with performance characterisics suitable for a load and store programming model だそうな。SSDPCI SSD、SD カード等は NVM で、PRAM、ReRAM、MRAM や ULLtraDIMM (id:nminoru:20140122:mcs) などは PM という位置づけだと思われる。

1. の SNIA NVM Programming Model では 4 つのモデルが提唱されている。

さらに 2. の講演では PM を malloc ライクなライブラリで使わせるライブラリ(pmem)が提唱されている。

pmem と NVM.PM.FILE モデルの PMFS は、Linux ベースの実装が github 上に公開されている。ただし PM は簡単に手に入らないので、DRAM を persistent memory に見立てて実験するしかない。