On Tue, 15 Sep 2020, Dan Williams wrote: > > TODO: > > > > - programs run approximately 4% slower when running from Optane-based > > persistent memory. Therefore, programs and libraries should use page cache > > and not DAX mapping. > > This needs to be based on platform firmware data f(ACPI HMAT) for the > relative performance of a PMEM range vs DRAM. For example, this > tradeoff should not exist with battery backed DRAM, or virtio-pmem. Hi I have implemented this functionality - if we mmap a file with (vma->vm_flags & VM_DENYWRITE), then it is assumed that this is executable file mapping - the flag S_DAX on the inode is cleared on and the inode will use normal page cache. Is there some way how to test if we are using Optane-based module (where this optimization should be applied) or battery backed DRAM (where it should not)? I've added mount options dax=never, dax=auto, dax=always, so that the user can override the automatic behavior. Mikulas