Date: Wed, 23 Mar 2011 17:14:43 +0000 From: Alexander Best <arundel@freebsd.org> To: Oliver Fromme <olli@lurza.secnetix.de> Cc: bz@FreeBSD.ORG, freebsd-arch@FreeBSD.ORG Subject: Re: kernel memory checks on boot vs. boot time Message-ID: <20110323171443.GA59972@freebsd.org> In-Reply-To: <201103231029.p2NATtwg090498@lurza.secnetix.de> References: <alpine.BSF.2.00.1103221634241.6104@ai.fobar.qr> <201103231029.p2NATtwg090498@lurza.secnetix.de>
next in thread | previous in thread | raw e-mail | index | archive | help
On Wed Mar 23 11, Oliver Fromme wrote: > Bjoern A. Zeeb <bz@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. cheers. alex > > Best regards > Oliver > > -- > 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." -- a13x
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20110323171443.GA59972>