* Christoph Hellwig <hch@xxxxxx> wrote: > On Thu, Apr 02, 2015 at 03:11:36PM +0000, Elliott, Robert (Server Storage) wrote: > > Attr Copy Read IOPS Write IOPS > > ==== ==== ========= ========== > > UC memcpy 36 K 22 K > > UC NT rd,wr 513 K 326 K > > > > WB memcpy 3.4 M 2.5 M > > WB NT rd,wr 3.3 M 3.5 M > > > > WC memcpy 776 K 3.5 M > > WC NT rd,wr 3.0 M 3.9 M > > > > WT memcpy 2.1 M 22 K > > WT NT rd,wr 3.3 M 2.1 M > > > > a few other variations yielded the peak numbers: > > WC NT rd only 3.2 M 4.1 M > > WC NT wr only 712 K 4.6 M > > WT NT wr only 2.6 M 4.0 M > > > > There are lots of tuning considerations for those memcpy > > functions - how far to unroll the loop, whether to > > include PRFETCHNTA instructions, etc. > > Looks like we should aіm for WC + NT would be a good start. > > Can you prepare a patch to add your NT memcpy variants and > a second one to use them in the pmem driver? So we already have NT memcpy variants, see the copy_*_user_*_nocache() primitives in arch/x86/. They could be used almost straight away for kernel memory as well, as kernel buffers will not fault. Thanks, Ingo -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html