Abstract
The Persistent Memory programming model describes multiple methods for flushing changes to persistence. Programmers are asked to choose between standard flush interfaces like msync() and FlushFileBuffers(), optional actions like Optimized Flush and Deep Flush, and the perhaps some new types of flushes being discussed in the SNIA NVM Programming Technical Work Group. Andy Rudoff (Intel) and Steve Byan (Oracle) have been active participants in the definition of these flushing actions and in this talk they will explain why there are so many choices. They will show examples using each type of flush and talk about some of the latest thinking in this area. Finally, they will describe what they expect to happen with both local and remote flushing in the next few years.