Skip to content

Perf regression: bun-isolated/rescan wall +21% (cc938aa6..17793173; #1279 candidate) #1606

Open

Description

[agent] Bench: confirmed weekly regression in bun-isolated/rescan (and a smaller one in bun-isolated/hosted / bun/hosted).

Base cc938aa6 (main, 2026-10-09) → head 657fce2b (main, 2026-10-15). Same machine, interleaved pairs. Daily A/B (e76cb9b3 → 657fce2b) is flat, so this is drift that is already on main.

scenario pairs base wall head wall Δ wall [95% CI] Δ CPU Δ peak RSS requests verdict
bun-isolated/rescan (round 1) 15+10 177.3 ms 212.2 ms +22.9% [+12.7, +30.4] +16.0% +3.9% 127 regression
bun-isolated/rescan (confirm) 25+15 205.0 ms 244.7 ms +21.3% [+12.7, +32.7] +12.1% +5.8% 127 regression
bun-isolated/hosted (confirm) 25+15 243.6 ms 281.1 ms +15.6% [+8.4, +22.9] +14.0% +8.0% 127 regression
bun/hosted (confirm) 25+15 212.9 ms 234.5 ms +12.9% [+9.7, +16.5] +7.0% +4.3% 127 regression

Request counts are unchanged. The 2026-10-12 daily run already saw bun-isolated/rescan +15% (f3c6313a..17793173); a large bun speedup earlier in that week hid it in the previous weekly windows.

Bisect (3 builds over the 151 commits cc938aa6..17793173, bun-isolated/rescan, 15 pairs each vs cc938aa6):

build Δ wall
1438b1a7 (#1356) +5.8% [-0.5, +16.2] ≈
a43cf327 (#1332) +12.4% [+6.5, +23.2]
eca5d247 (#1330) +11.5% [+2.1, +20.6]
657fce2b (today) +21.3%

So about half lands in 1438b1a7..a43cf327 (19 commits). The most plausible one there is dcdc1043 (#1279, "remove obsolete vendoring machinery and duplicate crate code"), with 4c800ac5 (#1370) as the other candidate that touches shared npm code. The rest lands after eca5d247, in eca5d247..17793173. Not narrowed further: the bisect budget is spent.

Repro

export CARGO_PROFILE_PERF_INHERITS=release CARGO_PROFILE_PERF_LTO=thin CARGO_PROFILE_PERF_STRIP=none
git worktree add /tmp/base cc938aa6 && (cd /tmp/base && CARGO_TARGET_DIR=/tmp/tb cargo build --locked --profile perf -p socket-patch-cli)
cargo build --locked --profile perf -p socket-patch-cli -p socket-patch-bench
target/perf/socket-patch-bench compare --base /tmp/tb/perf/socket-patch --head target/perf/socket-patch -f '^bun-isolated/' -f '^bun/hosted$' --runs 25

Runner: 4 vCPU, Intel(R) Xeon(R) Processor @ 2.80GHz (cloud sandbox). A/A on the same runner was clean (npm/hosted -3.9%, pip/hosted -3.1%, cargo/hosted +5.1%, all ≈).

Progress log: #575


Generated by Claude Code

Activity

  1. mikolalysenko commented on Oct 16, 2026

    @mikolalysenko
    CollaboratorAuthor

    [agent] Triaged as priority:p1 (Bun, npm family; perf regression). Not a duplicate of #1607 (yarn berry): the bisect candidates differ (#1279 / #1370 here vs #1321 / #1323 / #1397 there), so no shared root cause is confirmed. No open PR addresses it. Ranked below the open correctness bugs in this tier.


    Generated by Claude Code

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions