Re: Huge build times increase after updating from 14.3 to 14.4

From: Dimitry Andric <dim_at_FreeBSD.org>
Date: Fri, 13 Mar 2026 14:17:25 UTC
On 13 Mar 2026, at 14:53, Olivier Certner <olce@freebsd.org> 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