日期:2023/06/29 22:10作者:佚名人气:
解决方法
通过在 开发 模式下使用英特尔® 傲腾™ 持久内存 (PMem),可以对此类设备进行内存映射。由于可字节地址,因此不需要文件系统。
拥有文件系统的主要优势在于它为持久内存提供了安全、多租赁的访问权限。
开发模式安全性简化(基于对 /dev/zh* 设备的访问),并且不提供对多租赁的任何支持。(理论上,它可以自行构建,但最终看来,它就会出现类似支持 方面的文件系统。)
可以修改分配库 (libvmmalloc) 除了它通常支持的 fs访问之外,还支持开发设备。
请注意,与 fsize 模式不同,文件系统在确定使用的页面大小(4KB 或 2MB)开发模式时起着重要作用,该模式使用 英特尔® 傲腾™ PMem 本身(4KB、2MB 或 1 GB)的对齐特性。尽管 1GB TLB 条目支持 1GB傲腾m10,但 1GB 对开发英特尔® 傲腾™的校准可为各种工作负载提供最佳性能。(它从不减慢,根据工作负载的不同傲腾m10,有时会提高多达 68%。)libpmem 库(发布后的 libpmem2 和 libpmem2)也可与 devpmem 库配合使用。
总而言之,只需用 mmap 就可以了,但请注意上面列出的限制,因为大多数 PMDK 库都可以将 dev 他们用于该池。