NVM Programming Technical Work Group

The SNIA Non Volatile Memory (NVM) Programming Technical Work Group (TWG) delivers specifications describing the behavior of a common set of software interfaces that provide access to non-volatile memory (NVM). The TWG goal is to encourage a common ecosystem for NVM-enabled software without limiting the ability to innovate.

The TWG’s current work is the NVM Programming Model specification.  This specification describes behavior used by applications and kernel components to access:

  • Emerging features for traditional block NVM (SSDs) and
  • A new programming model for persistent memory (PM) - NVM hardware designed to be treated by software similarly to system memory.


SNIA has identified several opportunties for research related to software support for byte-addressable persistent memory (PM).  The SNIA NVM Programming Model describes two PM programming modes.  NVM.PM.VOLUME describes PM services used by file ssytems.  NVM.PM.FILE describes interfaces mapping PM files to application address space, synching PM files, and error recovery.  The NVM Programming Model specification is available at http://snia.org/tech_activities/standards/curr_standards/npm.

One area of research is persistent data structure families:  cross references between data structures, composition of data structures in different families, and atomicity.  Other areas include efficient replications (protocols and consistency), application level error handling, and load/store/flush workload characterization and generation.

Contact nvmptwg-info@snia.org for more information.

Non-Volatile Memory Technical Work Group Highlights

At the SNIA 2017 Members Symposium, Doug Voigt from Hewlett Packard Enterprise received the Volunteer of the Year Award for his consistent contributions during 2016 furthering the work of the SNIA Non-Volatile Memory Programming Technical Work Group.

At the SNIA Annual Members' Symposium January 20-23, 2015, the NVM Programming TWG, and its co-chair, Paul von Behren, received the following awards:

Honoree:  Paul von Behren (Intel)
Awarded to an individual who has significantly advanced a cause for SNIA leading to an impact on the industry of the Association. This was the second time Mr. von Behren was honored by SNIA for his industry impact contributions (he also was honored in 2013).


Recognized Group:  NVM Programming TWG
Awarded to the SNIA TWG or Task Force which, above all others in 2014, had members and efforts which consistently stepped up and helped SNIA achieve something new and groundbreaking, or which significantly advanced an existing program.

The NVM Programming Model received the 2015 Professional Storage Development Visionary Award at Storage Visions, the storage conference of the Consumer Electronics Show. Read the press release here.



The NVM Programming Model was the recipient of the 2014 Best of Show Winner at Flash Memory Summit , recognized as the Most Innovative Flash Memory Enterprise Business Application.  Read the press release here.

A very interesting introduction and overview of the NVM Programming Model can be found in a presentation given by Andy Rudoff of Intel at SDC 2013: "The Impact of the NVM Programming Model".

A copy of the NVM Programming Model, v1.0  can be found HERE.

Work will continue beyond the initial specifications development to incorporate new NVM functionality and to develop additional specifications as the market matures.

Participants in the NVM Programming TWG include architects and developers for NVM enabling software and NVM aware operating system components and applications.

If your company is a member of the SNIA, any employee of your company is eligible to participate in the NVM Programming TWG.  Membership in the SNIA Solid State Storage Initiative is encouraged.   New members are welcome to join the SNIA and the NVM Programming TWG.

For more information, contact nvmptwg-info@snia.org