Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 18 May 2024 10:37:23 -0600
From:      Warner Losh <imp@bsdimp.com>
To:        Colin Percival <cperciva@tarsnap.com>
Cc:        Alan Somers <asomers@freebsd.org>, src-committers <src-committers@freebsd.org>,  "<dev-commits-src-all@freebsd.org>" <dev-commits-src-all@freebsd.org>,  "<dev-commits-src-main@freebsd.org>" <dev-commits-src-main@freebsd.org>
Subject:   Re: git: 3bb5428ad643 - main - rc.conf.5: remove obsolete advice about kld_list
Message-ID:  <CANCZdfpWY89FkymBkPV6oSOchbv2AxUJ%2BuSfnOOZSABqCDEThA@mail.gmail.com>
In-Reply-To: <0100018f8c718fa1-b3f56c7f-bc2b-42c3-9a8a-03cd3a5e08d2-000000@email.amazonses.com>
References:  <202405181551.44IFpenT061023@gitrepo.freebsd.org> <0100018f8c718fa1-b3f56c7f-bc2b-42c3-9a8a-03cd3a5e08d2-000000@email.amazonses.com>

next in thread | previous in thread | raw e-mail | index | archive | help
--000000000000e406050618bd1521
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Sat, May 18, 2024, 10:03=E2=80=AFAM Colin Percival <cperciva@tarsnap.com=
> wrote:

> On 5/18/24 08:51, Alan Somers wrote:
> > commit 3bb5428ad643e38dd755c8d66c8ac2ae8f7575b5
> >
> >      rc.conf.5: remove obsolete advice about kld_list
> >
> >      Loading modules via kld_list is no longer substantially faster tha=
n
> via
> >      loader.conf.
> Where did you benchmark this?  I can believe that performance is similar
> using UEFI, but on systems booting with BIOS doing I/O from the loader is
> very slow because the 20-bit address space forces us to use small I/Os.
>

The performance problem was there was no buffer cache in the boot loader at
all. BIOS is still a little slower, but  ot that much slower on anything
made in the last decade....

It used to be like 10-20s faster. Now it's less than a second, even for
BIOS booting. And UEFI is about the same. The block cache is responsible
for most of this. And BIOS doesn't matter so much these days: it is still
in use, but few people use it and the IO speed when they do is DMA speeds
not REPS INB speeds.

Plus it causes some memory fragmentation and there are subtle bugs with it
(like kld_list=3D"uhid ums" working but kld_list=3D"ums uhid" failing).

Warner

--=20
> Colin Percival
> FreeBSD Release Engineering Lead & EC2 platform maintainer
> Founder, Tarsnap | www.tarsnap.com | Online backups for the truly paranoi=
d
>

--000000000000e406050618bd1521
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"auto"><div><br><br><div class=3D"gmail_quote"><div dir=3D"ltr" =
class=3D"gmail_attr">On Sat, May 18, 2024, 10:03=E2=80=AFAM Colin Percival =
&lt;<a href=3D"mailto:cperciva@tarsnap.com" target=3D"_blank" rel=3D"norefe=
rrer">cperciva@tarsnap.com</a>&gt; wrote:<br></div><blockquote class=3D"gma=
il_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-lef=
t:1ex">On 5/18/24 08:51, Alan Somers wrote:<br>
&gt; commit 3bb5428ad643e38dd755c8d66c8ac2ae8f7575b5<br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0 rc.conf.5: remove obsolete advice about kld_list<b=
r>
&gt;=C2=A0 =C2=A0 =C2=A0 <br>
&gt;=C2=A0 =C2=A0 =C2=A0 Loading modules via kld_list is no longer substant=
ially faster than via<br>
&gt;=C2=A0 =C2=A0 =C2=A0 loader.conf.<br>
Where did you benchmark this?=C2=A0 I can believe that performance is simil=
ar<br>
using UEFI, but on systems booting with BIOS doing I/O from the loader is<b=
r>
very slow because the 20-bit address space forces us to use small I/Os.<br>=
</blockquote></div></div><div dir=3D"auto"><br></div><div dir=3D"auto">The =
performance problem was there was no buffer cache in the boot loader at all=
. BIOS is still a little slower, but=C2=A0 ot that much slower on anything =
made in the last decade....</div><div dir=3D"auto"><br></div><div dir=3D"au=
to">It used to be like 10-20s faster. Now it&#39;s less than a second, even=
 for BIOS booting. And UEFI is about the same. The block cache is responsib=
le for most of this. And BIOS doesn&#39;t matter so much these days: it is =
still in use, but few people use it and the IO speed when they do is DMA sp=
eeds not REPS INB speeds.</div><div dir=3D"auto"><br></div><div dir=3D"auto=
">Plus it causes some memory fragmentation and there are subtle bugs with i=
t (like kld_list=3D&quot;uhid ums&quot; working but kld_list=3D&quot;ums uh=
id&quot; failing).</div><div dir=3D"auto"><br></div><div dir=3D"auto">Warne=
r</div><div dir=3D"auto"><br></div><div dir=3D"auto"><div class=3D"gmail_qu=
ote"><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-le=
ft:1px #ccc solid;padding-left:1ex">
-- <br>
Colin Percival<br>
FreeBSD Release Engineering Lead &amp; EC2 platform maintainer<br>
Founder, Tarsnap | <a href=3D"http://www.tarsnap.com" rel=3D"noreferrer nor=
eferrer noreferrer" target=3D"_blank">www.tarsnap.com</a> | Online backups =
for the truly paranoid<br>
</blockquote></div></div></div>

--000000000000e406050618bd1521--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CANCZdfpWY89FkymBkPV6oSOchbv2AxUJ%2BuSfnOOZSABqCDEThA>