配置英特尔® 傲腾™持久内存,而无需磁盘格式化,或者通过设置 devdax 模式来创建文件系统。
是否无需格式化磁盘英特尔® 傲腾™用户空间内访问 PMem(应用程序直接模式)?
持久内存开发套件 (PMDK) 应该需要将 DCPM 与文件系统安装,并且其工作原理与块设备类似。
在 devdax 模式下英特尔® 傲腾™持久内存 (PMem) 进行内存映射是有可能的。因为它具有字节地址,因此不需要文件系统。
拥有文件系统的主要优势是它可以为持久内存提供安全的多多设备访问。
Devdax 模式安全性非常简单(基于对 /dev/dax* 设备的访问),并且不支持多线程处理。(理论上,它可以构建自己的系统,但最终它最终会构建一个类似于支持 dax 的文件系统的东西。)
除了通常支持的 fsdax 访问外,可以修改分配库 (libvmmalloc) 以与 devdax 设备一同工作。
请注意,与 fsdax 模式不同,文件系统在确定使用的页面大小 (4KB 或 2MB) devdax 模式时发挥作用,使用 英特尔® 傲腾™ PMem 本身(4KB、2MB 或 1GB)的对齐特征。尽管 1GB TLB 条目数量多,但 devdax 英特尔® 傲腾™ PMem 的 1GB 对齐可跨一系列工作负载实现最佳性能。(它的速度从未像现在这样慢,根据工作负载的不同,有时会提高高达 68%。)libpmem 库(和 libpmem2 发布后)也与 devdax 一同工作。
总之,只需映射它,就可以注意到上面列出的限制,因为大多数 PMDK 库只能对池使用 devdax。
- 持续内存开发套件 (PMDK) 是一组开源库和工具,现在可用于 Linux* 和 Windows*。
- Direct Access DAX 是一种文件系统扩展,可绕过页面高速缓存和块层以从 PMEM 块设备直接绕过 mmap 持久内存,进入进程地址空间。直接访问 (DAX) 是一种机制,允许应用程序从 CPU 直接访问持久性媒体(通过加载和存储),绕过传统的 I/O 堆栈(页面缓存和块层)。已扩展用于支持 DAX 的持久内存的文件系统包括 Linux ext4 和 XFS 以及 Windows NTFS。这些文件系统绕过 I/O 子系统,直接将持久内存用作字节可地址加载/存储内存,作为持久内存中存储数据的最快、最短的路径。除了消除 I/O 操作外,此路径还使小型数据写入的执行速度比对传统块存储设备的速度要快。
