Joao Martins <joao.m.martins@xxxxxxxxxx> writes: > On 02/12/2024 21:58, Mateusz Guzik wrote: >> On Mon, Dec 02, 2024 at 08:20:58PM +0000, Frank van der Linden wrote: >>> Fresh hugetlb pages are zeroed out when they are faulted in, >>> just like with all other page types. This can take up a good >>> amount of time for larger page sizes (e.g. around 40 >>> milliseconds for a 1G page on a recent AMD-based system). >>> >>> This normally isn't a problem, since hugetlb pages are typically >>> mapped by the application for a long time, and the initial >>> delay when touching them isn't much of an issue. >>> >>> However, there are some use cases where a large number of hugetlb >>> pages are touched when an application (such as a VM backed by these >>> pages) starts. For 256 1G pages and 40ms per page, this would take >>> 10 seconds, a noticeable delay. >> >> The current huge page zeroing code is not that great to begin with. >> >> There was a patchset posted some time ago to remedy at least some of it: >> https://lore.kernel.org/all/20230830184958.2333078-1-ankur.a.arora@xxxxxxxxxx/ >> >> but it apparently fell through the cracks. >> > > It didn't fell through the cracks for sure > > Just had a detour into preempt=auto before resuming the main work. But that > seems to be done in the last merge window with the lazy preempt stuff. I think > Ankur was planning on following that series above soon-ish. > > Adding him here, such that he keeps me honest :) Thanks for Ccing Joao. -- ankur