kernel memory checks on boot vs. boot time
arundel at freebsd.org
Wed Mar 23 17:14:44 UTC 2011
On Wed Mar 23 11, Oliver Fromme wrote:
> Bjoern A. Zeeb <bz at freebsd.org> wrote:
> > as part of the i386/pc98/amd64 boot process we are doing some basic
> > memory testing, mapping pages and running a couple of pattern
> > write/read tests on the first bytes (see getmemsize() implmentations).
> > [...]
> > With the growing number of memory this can lead to a significant
> > fraction of kernel startup time on amd64 (~40s delays observed with
> > 96G of RAM). Looping over the pages, but not mapping them and not
> > running the pattern tests reduces this significantly (to single digit
> > numbers of seconds).
> > [...]
> > Not wanting to remove them but maybe make more use of them in the
> > future (as we do not report any problems we find currently) I'd suggest
> > to introduce a tunable to disable/enable them, say
> > hw.run_memtest
> +1 for introducing a tunable.
> I have also noticed the boot delay on server machines with
> lots of memory (all of them are amd64, FWIW). Co-workers
> have noticed it, too, causing some funny remarks. :-)
or how about we dump the current memory checks, introduce a tunable and
implement some *real* memory checks. as john pointed out the current checks
are just rudimentary.
> By the way, "big" servers are not the only machines affected.
> I have recently built a small HTPC based on an Atom 330
> (it supports amd64) with 4 GB RAM. Unfortunately, suspend +
> resume doesn't work, so I have to shutdown and boot it fully
> each time I want to use it. Needless to say, I would like
> to squeeze every second from the boot process. Currently,
> the time between the transition from bootloader to kernel
> and the start of init(8) is by far the largest slice of the
> total boot time.
just as a side note: booting a kernel directly from boot stage 2 is broken on
amd64. :( so there's no way around using the boot loader, which will cost extra
time (even with autoboot_delay=0).
so was the adbility to boot a kernel directly from boot2 abandoned? i heard
reports it still works under i386. dunno about the other archs.
> Best regards
> Oliver Fromme, secnetix GmbH & Co. KG, Marktplatz 29, 85567 Grafing b. M.
> Handelsregister: Registergericht Muenchen, HRA 74606, Geschäftsfuehrung:
> secnetix Verwaltungsgesellsch. mbH, Handelsregister: Registergericht Mün-
> chen, HRB 125758, Geschäftsführer: Maik Bachmann, Olaf Erb, Ralf Gebhart
> FreeBSD-Dienstleistungen, -Produkte und mehr: http://www.secnetix.de/bsd
> "What is this talk of 'release'? We do not make software 'releases'.
> Our software 'escapes', leaving a bloody trail of designers and quality
> assurance people in its wake."
More information about the freebsd-arch