Develop innovative solutions with Intel® Optane™ persistent memory to transform your applications and your data center.
Programming Persistent Memory
A Comprehensive Guide for Developers
Intel Optane persistent memory modules support two operating modes:
- Memory Mode enables an application to operate on a large pool of volatile memory without modification.
- App Direct Mode offers a low-latency, byte-addressable pool of persistent memory.
Use the information here to help modify or develop an application with low latency and data persistence.
Programming to byte-addressable persistent memory requires new ways of thinking about data persistence and consistency.
About the PMDK
The PMDK is an open source collection of libraries and tools designed to simplify development, debugging, and management of persistent memory-aware applications.
Configure Development Environments
Options include emulation or a persistent memory-aware hypervisor, such as QEMU or VMware vSphere* virtual machine.
Configure Intel Optane Persistent Memory
Choose from several support options for Windows Server* 2019. Access guidance from Microsoft* for Windows Server 2016.
Analyze the entire system to identify configuration issues and workloads that can benefit from persistent memory or analyze individual applications to determine optimization opportunities.
System View: Intel VTune Profiler—Platform Profiler
Plan for persistence with these step-by-step guides that illustrate programming concepts.
A Fault-Tolerant Algorithm for MapReduce
Get High-Level Language Support
Learn PMDK basics with introductory tutorials and code samples.
Hello World for Persistent Collections for Java* (PCJ)
Hello World for Low Level Persistence Library (LLPL)
Java API for Persistent Memory Programming
Debug & Troubleshooting Tools
Tools from Intel
Find persistence errors quickly with Intel® Inspector—Persistence Inspector.
Detect Programming Errors with Cache Management
Intel® VTune™ Profiler
This premier performance profiler has new capabilities to help you optimize your persistent memory programs.
Analyze systems over longer intervals. Find out which workloads can benefit from larger memory allocations and which system configuration better fits the workloads.
Locate code that is sensitive to memory bandwidth and latency issues. Identify hot, warm, or cool data to optimize memory usage and placement.
Identify opportunities to replace disk or SSD-based storage with faster persistent memory.
Intel® Inspector—Persistence Inspector
This tool finds persistence errors quickly to make software fast and reliable. It checks that all caches only flush once to persistent memory and written in the correct order.
Handling Memory Errors in Persistent Memory Programming
Persistent Memory Programming Tools
Testing PMDK Using FIO Workloads