Skip to content

perry: soak test recent perf landings against real-world apps before tagging release #440

@proggeramlug

Description

@proggeramlug

Summary

The May-2026 release-readiness session landed several non-trivial perf changes that haven't been tested against shapes outside honest_bench + benchmarks/suite + ECS smoke tests. Each has a plausible regression risk we should de-risk before tagging a release.

Recent landings to soak

Commit Change Surface area
56818086 GC bytes-trigger bump after gc-suppressed parse Any workload calling JSON.parse on > 1 MB blobs
b3e93649 Inline ArrayPush fast path for local-bound arrays Any local-array-push hot loop
3f5c69a5 integer_locals forward-closure pass Any program with chained int-stable Lets (let x = a*b; let y = x+c; ...)
4f895dd8 Immutable i32-shadow + i32 init path Touches every const numeric Let — broad blast radius
cf540b92 Buffer-aware stmt_preserves_array_length Any for (let i = 0; i < buf.length; i++) shape
f02541a4 FuncRef + Math.* arms in preserves-length walker Any peephole that runs for (...; i < arr.length; i++) with a body containing function calls or Math methods
aed21292 Static trip-count for-loop unroll Any tight nested loop with literal bounds and ≤8 iters
817c4b56 >>> 0 correctness fix + channel-vector SIMD reduction All workloads (correctness); RGB-style image processing (perf)

Soak coverage gaps

What's needed

  1. Run cargo test --release --workspace (just landed: d826ace4 unblocks the perry crate's 101 tests). Verify all 571 tests pass.
  2. Run the parity test suite (or whichever Node-compat sweep exists) and diff against the pre-session baseline.
  3. Compile + run a representative set of customer/user TS apps and verify byte-for-byte output match against Bun for at least a 5-minute exercise of each.
  4. Document any new known-failures in tests/known_failures.json so CI doesn't surprise us.

Acceptance

  • All in-tree tests green.
  • Parity sweep delta vs pre-session baseline: zero new regressions.
  • 3-5 representative real-world apps verified against Bun.

Related

Related correctness issue: #435 (integer_locals overflow class) — soak should specifically check for the 14_closure shape.
Related perf issue: #436 (image_conv 5%-target).

Metadata

Metadata

Assignees

No one assigned

    Labels

    performanceRuntime or compile-time performance

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions