Hi David,

 

We met a performance regression(lmbench bw_mmap_rd/bw_mem) on our server with

patch 7fef431be9c9(mm/page_alloc: place pages to tail in __free_pages_core()),

 

Case A.  ./bw_mmap_rd -P 1 512m mmap_only out.file

Case B.  ./bw_mem -P 1 512m frd

 

mode0: IMC Interleave = auto, Channel Interleave = auto, Rank Interleave = auto

                     without                        with        regression

case A           10535.14                       9645.02      8.4%

case B           10526.88                       9797.63      6.9%

also we found different memory interleaving have different results

 

mode1: IMC Interleave = 1-way, Channel Interleave = 2-way, Rank Interleave =2-way

                      without                        with          regression

case A           10543.01                       10643.12       -0.9%

case B           10971.33                       10853.99       1%

 

The 7fef431be9c9 changes the different memory layout,  it seems that the issue

is related with memory interleave. But the patch does lead to performance regression.

 

Any suggestion about this regression?

thanks.

 

Peng Liu