From nobody Sat Dec 06 17:31:34 2025 X-Original-To: freebsd-current@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dNwKQ1SMnz6HqP3 for ; Sat, 06 Dec 2025 17:31:54 +0000 (UTC) (envelope-from mjguzik@gmail.com) Received: from mail-ej1-x631.google.com (mail-ej1-x631.google.com [IPv6:2a00:1450:4864:20::631]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "WR4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dNwKP6kkyz3QYQ for ; Sat, 06 Dec 2025 17:31:53 +0000 (UTC) (envelope-from mjguzik@gmail.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-ej1-x631.google.com with SMTP id a640c23a62f3a-b727f452fffso542320366b.1 for ; Sat, 06 Dec 2025 09:31:53 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1765042307; x=1765647107; darn=freebsd.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=E6bI+xvNqwCpm98qSA2d5irA28hJTOUa5QL2dV0wrOg=; b=h0xGJ/6WZtpF8180nqzIjJregbkkrZmYKLIgFQcOveq9u+3ckZUC825Hfi823pNQmv vhjp5ABYwmYpzXgIlG/O4nCL2jOWpdUqbzW4gdnhDCt8RkWnctsVzSJGDuRBaYC71gxJ +yb1P8aT5rU3Y6GhdD55YQeDj3ik9JCXsX+Dnseiytcw+5MmUb7R5gyiuFWW3jsZ7TE9 blowZ5AGrQRex+yoLyZ6+jm5k+0sDEwfNPUQKCNsmZo/lgSBH8lMptytQF2HlXo2d6co guwmg35O4VYr4xBbgzM+O7crKAMPo3+wDIJm/hxnqix2zP1gySdUBpw2mGxsnWsfLtbP nFxg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1765042307; x=1765647107; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=E6bI+xvNqwCpm98qSA2d5irA28hJTOUa5QL2dV0wrOg=; b=rIF8Y3gUrw1R9CH8kOeQDux5KGgjJy1KFPhhwFkA/Z9LIziYpmVNrsgt0pvvzrJ4rX MQRHZBONGSKzr0+xQlDj6jgxoZLxSOj0naxJntS1WbSed9+DnrqnTQsiAGOaEhTvZ93q jbzfuKPy7BW7OmDG1bVtJ2HhtHA6NMjwMehVHntv3XXjqyOc/yqNSlFPBezti7STCGqb JuSQbIlrxfwjVRDcJN633Aq3Z4LiQ5/Y6lYX9LTS90jBLdN79KaWZG6G1FPR8Thkhj/j YtOAAVeDMIOpWfjQShQy7JrEJ4YlaekdfUzqooLZ1CuLTcJsLjkTbIjnA/HnrFU7nKpw Z8xg== X-Gm-Message-State: AOJu0YzuQ7Px2c73FqGbc8mSQl0nlGlDsvJOfumLPXNvTUSU4ENQvf/+ HEIjZvi5xoCIO2tB4KXlwFmYpNrigy01THpikMkSyhoIL9NMcEYiLrzdmiexscUCwNcAuLisMyl 7E3l7IkarnBkS4fpry2pZ4MVF/xvp7C4= X-Gm-Gg: ASbGncuc+C66gmy225DDLHulPSigLk3C93AJlvzTlkgUhk5cif7chpQLdvsdmlL0WeA QvRfTB2wdb1EntUWyw1WLZKhBPoWMNVi5bRidR8iqyTHShjpMxUlHFgGrgDc4RQopy26zy2AzC3 1/L1nyr6he9Sh4Lenq5CWsCTuu83ZNwSYONLqEoZpmnGtzfvIHeuQd4+0K6IGJ3nRQQPU5f0uPb 7W1ylB8TzP1TXkZ/r3tteY1FDP550sFymdWgeR6lYMBu1C7yAUh5vAhHLyWVlW/3ZXXsb6sbkxr hT8DxjQ0DiDJBIvIKfjeIvFpDg== X-Google-Smtp-Source: AGHT+IF1nsieSIsfKMmB61yXOPHtHvDLVrzv7dSZjrG7yy4feFoGrqvX4PggCwhOhrDZjbQJoD5N8jz7rn6bOkoq+aE= X-Received: by 2002:a17:907:bb49:b0:b79:ea55:3202 with SMTP id a640c23a62f3a-b79eb5d94ddmr1070510266b.19.1765042306663; Sat, 06 Dec 2025 09:31:46 -0800 (PST) List-Id: Discussions about the use of FreeBSD-current List-Archive: https://lists.freebsd.org/archives/freebsd-current List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-current@FreeBSD.org MIME-Version: 1.0 References: In-Reply-To: From: Mateusz Guzik Date: Sat, 6 Dec 2025 18:31:34 +0100 X-Gm-Features: AQt7F2okbSEUiOtuIhu_yJ6vhgemFr1tK2v1MCa00D6S2-_PfalTxdGX7ZvtIvQ Message-ID: Subject: Re: performance regressions in 15.0 To: Konstantin Belousov Cc: FreeBSD Current Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spamd-Bar: ---- X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[] X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Rspamd-Queue-Id: 4dNwKP6kkyz3QYQ On Sat, Dec 6, 2025 at 6:25=E2=80=AFPM Konstantin Belousov wrote: > > On Sat, Dec 06, 2025 at 11:50:08AM +0100, Mateusz Guzik wrote: > > II. compilation speed > > > > The the real and serious problem. Both versions of the system ship the > > same clang version: > > FreeBSD clang version 19.1.7 (https://github.com/llvm/llvm-project.git > > llvmorg-19.1.7-0-gcd708029e0b2) > > Target: x86_64-unknown-freebsd14.3 > > Thread model: posix > > InstalledDir: /usr/bin > > > > FreeBSD clang version 19.1.7 (https://github.com/llvm/llvm-project.git > > llvmorg-19.1.7-0-gcd708029e0b2) > > Target: x86_64-unknown-freebsd15.0 > > Thread model: posix > > InstalledDir: /usr/bin > > > > I found that compiling the will-it-scale suite about doubles in real > > time needed, along with doubling time spent in userspace. > > > > will-it-scale needs a little bit of massaging to work, diff at the end. > > > > check this out (repeabale): while true; do gmake -s clean && time > > gmake -s -j 8; done > > > > 14.3: > > gmake -s -j 8 8.93s user 2.03s system 769% cpu 1.42s (1.424) total > > gmake -s -j 8 9.02s user 2.16s system 757% cpu 1.48s (1.475) total > > gmake -s -j 8 9.29s user 1.95s system 774% cpu 1.45s (1.450) total > > gmake -s -j 8 8.97s user 2.46s system 770% cpu 1.48s (1.484) total > > gmake -s -j 8 9.13s user 2.30s system 773% cpu 1.48s (1.477) total > 14.3 clang/lld are probably statically linked, but I am not sure. > Can you confirm this? > They are dynamic, this was switched years ago. /usr/bin/clang: ELF 64-bit LSB executable, x86-64, version 1 (FreeBSD), dynamically linked, interpreter /libexec/ld-elf.so.1, for FreeBSD 14.3, FreeBSD-style, stripped > > > > 15.0: > > gmake -s -j 8 19.90s user 3.02s system 773% cpu 2.96s (2.963) total > > gmake -s -j 8 19.90s user 3.18s system 774% cpu 2.98s (2.979) total > > gmake -s -j 8 20.24s user 2.90s system 770% cpu 3.00s (3.005) total > > gmake -s -j 8 19.92s user 3.25s system 771% cpu 3.00s (3.003) total > > gmake -s -j 8 20.25s user 2.95s system 772% cpu 3.01s (3.006) total > But 15.0 is definitely dynamically linked. > > clang is enormous C++ binary with enormous amount of relocs: > $ ldd /usr/bin/cc > /usr/bin/cc: > libprivateclang.so.19 =3D> /usr/lib/libprivateclang.so.19 (0x2741= 7e200000) > libprivatellvm.so.19 =3D> /usr/lib/libprivatellvm.so.19 (0x274183= e00000) > > $ objdump -R /usr/lib/libprivateclang.so.19 | wc -l > 232977 > $ objdump -R /usr/lib/libprivatellvm.so.19 | wc -l > 140712 > > > > > > user time *skyrocketed* >