Re: Deferred Memory Init: How to bring rest of memory online after limiting it with `mem=XG`?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



David Hildenbrand <david@xxxxxxxxxx> writes:

> On 03.12.20 13:52, Paul Menzel wrote:
>> Dear David,
>> 
>> 
>> Thank you for the quick response.
>> 
>> 
>> Am 03.12.20 um 13:25 schrieb David Hildenbrand:
>>> On 03.12.20 11:51, Paul Menzel wrote:
>> 
>>>> I am trying to reduce the startup time of Debian’s Linux 5.9.9 on a
>>>> Intel Kaby Lake system with 32 GB of memory (TUXEDO Book BU1406 (Clevo
>>>> N240BU)).
>> 
>> […]
>> 
>>> We do have deferred meminit in the kernel during boot that can
>>> initialize memory in parallel.
>> 
>> Is that used automatically, or do I need to activate it somehow?
>
> If your kernel is compiled with
>
> CONFIG_DEFERRED_STRUCT_PAGE_INIT
>
> it should be enabled automatically.
>
>
> config DEFERRED_STRUCT_PAGE_INIT
> 	bool "Defer initialisation of struct pages to kthreads"
> 	depends on SPARSEMEM
> 	depends on !NEED_PER_CPU_KM
> 	depends on 64BIT
> 	select PADATA
> 	help
> 	  Ordinarily all struct pages are initialised during early boot in a
> 	  single thread. On very large machines this can take a considerable
> 	  amount of time. If this option is set, large machines will bring up
> 	  a subset of memmap at boot and then initialise the rest in parallel.
> 	  This has a potential performance impact on tasks running early in the
> 	  lifetime of the system until these kthreads finish the
> 	  initialisation.

Hello Paul,

If it is enabled, what does

dmesg | grep 'deferred pages'

give you?  And assuming you're running systemd, what does
systemd-analyze show you?

Thanks.





[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux