Re: [RFC 0/2] Delay initializing of large sections of memory

From: Nathan Zimmer
Date: Fri Jun 21 2013 - 16:40:38 EST


On Fri, Jun 21, 2013 at 01:28:11PM -0700, Yinghai Lu wrote:
> On Fri, Jun 21, 2013 at 12:19 PM, Nathan Zimmer <nzimmer@xxxxxxx> wrote:
> > On 06/21/2013 02:10 PM, Yinghai Lu wrote:
> >> in this way we can keep all numa etc on the place when online ram, cpu,
> >> pci...
> >>
> >> For example if we have 32 sockets system, most time for boot is with
> >> *BIOS*
> >> instead of OS. In those kind of system boot is like this way:
> >> only first two sockets get booted from bios to OS.
> >> later use hot add every other two sockets.
> >>
> >> that will also make BIOS simpler, and it need to support hot-add for
> >> services purpose anyway.
> >>
> > Yes the hot add path was one option we looked at and it did shorten boot
> > times but the goal I had here is to get from power on to having the full
> > machine available as quick as possible. Several clients need significant
> > portions of ram for their key workloads. So that guided my thoughts on this
> > patch.
>
> you mean boot small number sockets + hot add still take more time?
> hot add ram still in serialize mode?
>
> Yinghai

Yes the hot add path is still fairly serial.
lock_memory_hotplug() is still a global lock, which effectivly serializes
online pages. Since the hotplug lock could done per node but for that to be
effective something would need to be done with lock_system_sleep() since is
called by lock_memory_hotplug().

Nate
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/