On Sat, Jan 11, 2014 at 12:23:15AM +0200, Kirill A. Shutemov wrote: > On Fri, Jan 10, 2014 at 04:01:55PM -0600, Alex Thorlton wrote: > > On Fri, Jan 10, 2014 at 10:23:10PM +0200, Kirill A. Shutemov wrote: > > > Do you know what cause the difference? I prefer to fix THP instead of > > > adding new knob to disable it. > > > > The issue is that when you touch 1 byte of an untouched, contiguous 2MB > > chunk, a THP will be handed out, and the THP will be stuck on whatever > > node the chunk was originally referenced from. If many remote nodes > > need to do work on that same chunk, they'll be making remote accesses. > > With THP disabled, 4K pages can be handed out to separate nodes as > > they're needed, greatly reducing the amount of remote accesses to > > memory. > > I think this problem *potentially* could be fixed by NUMA balancer. > (Although, I don't really know how balancer works...) > > If we see NUMA hint faults for addresses in different 4k pages inside huge > page from more then one node, we could split the huge page. > > Mel, is it possible? Do we collect enough info to make the decision? > Potentially the hinting faults can be used to decide whether to split or not but currently there is only limited information. You can detect if the last faulting process was on the same node but not if the faults were in different parts of the THP that would justify a split. -- Mel Gorman SUSE Labs -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>