On Fri 14-09-18 12:01:18, Steven Sistare wrote: > On 9/14/2018 1:56 AM, Michal Hocko wrote: [...] > > Why does this matter for something that is for analysis purposes. > > Reading the file for the whole address space is far from a free > > operation. Is the page walk optimization really essential for usability? > > Moreover what prevents move_pages implementation to be clever for the > > page walk itself? In other words why would we want to add a new API > > rather than make the existing one faster for everybody. > > One could optimize move pages. If the caller passes a consecutive range > of small pages, and the page walk sees that a VA is mapped by a huge page, > then it can return the same numa node for each of the following VA's that fall > into the huge page range. It would be faster than 55 nsec per small page, but > hard to say how much faster, and the cost is still driven by the number of > small pages. This is exactly what I was arguing for. There is some room for improvements for the existing interface. I yet have to hear the explicit usecase which would required even better performance that cannot be achieved by the existing API. -- Michal Hocko SUSE Labs