Perhaps a naive question, but is debugging enabled?
On 3/13/26 10:17, Dimitry Andric wrote:
On 13 Mar 2026, at 14:53, Olivier Certner <[email protected]> wrote:
You are likely hitting a known problem, see thread "performance regressions in
15.0". E.g., just picked one mail saying what I also personally think about it:
https://lists.freebsd.org/archives/freebsd-current/2025-December/009623.html
(arguably, some RAM factories have burnt out for retail consumers since then...)
AFAIK, the default was never switched back, but if you're building from source,
a new knob was added to recover the previous behavior, see:
https://cgit.freebsd.org/src/commit/?id=8d5a11cd0137d3ad
It looks like the performance hit is particularly noticeable when you fork a
lot of cc processes with short lifetimes, i.e. when running configure scripts
that check features with small .c files.
Apparently loading a relatively large static executable is much faster than
loading a small dynamic executable linked to a large dynamic library. Maybe
this is exacerbated by PIE, and/or having to look through a large set of
symbols.
I think it would be interesting if someone could figure out where the
bottleneck lies in the dynamic linker, and if any improvements are possible.
-Dimitry