daxctl

NUMA Mode

Memory Mode,DCPMM 不体现 non-Volatile 特性。
AppDirect Mode,DCPMM 占用独立物理地址空间,并拥有 DAX 特性。

  • OS Supports: PMem-Aware File System DAX & Memory-Mapping DAX
  • System RAM: Organised as non-CPU NUMA Node

System-RAM mode 下,NVDIMM 可以按照更细粒度组织[1],这种灵活性是硬件管理方案所不能赋予的。

e.g., 通过操作页表来实现“页粒度”的混合。具体的操作上,有两种方式:

  1. 在用户态,通过 move_pages() 迁移页;
  2. 在内核态,触发 page fault 绑定页。

方法一最大的优势在于可以用户态实现,但是缺点也很明显,首先如何及时地得知哪些页可以迁移了 ( 未映射的页不能迁移 ),其次迁移会引入额外性能开销,最后有些页不能迁移。方法二的优势就是方法一的缺点。


  1. 混合内存虚拟设备 ↩︎