持久内存(3):PMDK开发库介绍

2021-06-03  本文已影响0人  朝朝Mumu

编写基于持久内存的软件听上去是一件非常复杂的事情,是的没错,研发或者测试过持久内存代码的人都可以证明这一点。因此社区开源了持久内存开发套件(PMDK)。看上去和我们所熟悉的JDK、SDK是一类东西。PMDK就是这样一个库,适用于所有的持久内存(厂商中立),简化开发并解决一些常见挑战。

PMDK 的全称是 Persistent Memory Development Kit,它包含了 Intel 开发的一系列旨在 方便非易失性内存的应用开发的函数库和工具。实际上,PMDK 的 github仓库中包含了 libpmem、libvmem、libpmemblk、libpmemlog、libpmemobj、libpmempool、libvmmalloc 等很多函数库。

PMDK 包含了一系列的的函数库和工具,它们分别对应不同的应用场景。从易用性和收益两个维度分别来 看,随着函数库使用难度的增加,采用它所获得的性能也有对应的提升。


PMDK lib

持久内存开发套件 (PMDK), 前身为NVML,是持续丰富的开发库和工具的集合。这些库在 Linux 和 Windows 上进行调整和验证后,以这些操作系统的 DAX 功能(直接访问)为基础,允许应用程序访问持久内存作为内存映射文件,如SNIA NVM 编程模型所述。

nvm编程模型

重要原则

只要满足应用的需求,就尽可能使用最高的抽象级别。
PMem可以更快的速度执行小型数据写入!
可通过直接访问(DAX I/O)和标准文件系统 I/O路径访问pmem。

库简介

工具和命令行

上一篇 下一篇

猜你喜欢

热点阅读