diff --git a/CLAUDE.md b/CLAUDE.md
index 29565e9e18..73b1ed97e1 100644
--- a/CLAUDE.md
+++ b/CLAUDE.md
@@ -8,7 +8,7 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co
Perry is a native TypeScript compiler written in Rust that compiles TypeScript source code directly to native executables. It uses SWC for TypeScript parsing and LLVM for code generation.
-**Current Version:** 0.5.1635
+**Current Version:** 0.5.1636
## TypeScript Parity Status
diff --git a/Cargo.lock b/Cargo.lock
index 012e3efde5..23ae07de62 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -5532,7 +5532,7 @@ checksum = "1473d470930ed48574515a25df34900f3af89c6fa422d903e019121312a9f13e"
[[package]]
name = "perry"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"anyhow",
"base64 0.22.1",
@@ -5596,7 +5596,7 @@ dependencies = [
[[package]]
name = "perry-api-manifest"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"perry-dispatch",
"serde",
@@ -5604,7 +5604,7 @@ dependencies = [
[[package]]
name = "perry-audio-miniaudio"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"cc",
"libc",
@@ -5613,7 +5613,7 @@ dependencies = [
[[package]]
name = "perry-codegen"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"aho-corasick",
"anyhow",
@@ -5630,7 +5630,7 @@ dependencies = [
[[package]]
name = "perry-codegen-arkts"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"anyhow",
"perry-hir",
@@ -5638,7 +5638,7 @@ dependencies = [
[[package]]
name = "perry-codegen-glance"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"anyhow",
"perry-hir",
@@ -5646,7 +5646,7 @@ dependencies = [
[[package]]
name = "perry-codegen-js"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"anyhow",
"perry-dispatch",
@@ -5655,7 +5655,7 @@ dependencies = [
[[package]]
name = "perry-codegen-swiftui"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"anyhow",
"perry-hir",
@@ -5663,7 +5663,7 @@ dependencies = [
[[package]]
name = "perry-codegen-wasm"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"anyhow",
"base64 0.22.1",
@@ -5675,7 +5675,7 @@ dependencies = [
[[package]]
name = "perry-codegen-wear-tiles"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"anyhow",
"perry-hir",
@@ -5683,7 +5683,7 @@ dependencies = [
[[package]]
name = "perry-container-compose"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"async-trait",
"clap",
@@ -5707,14 +5707,14 @@ dependencies = [
[[package]]
name = "perry-container-e2e"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"anyhow",
]
[[package]]
name = "perry-diagnostics"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"serde",
"serde_json",
@@ -5722,7 +5722,7 @@ dependencies = [
[[package]]
name = "perry-dispatch"
-version = "0.5.1635"
+version = "0.5.1636"
[[package]]
name = "perry-doc-fixture-my-bindings"
@@ -5733,7 +5733,7 @@ dependencies = [
[[package]]
name = "perry-doc-tests"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"anyhow",
"clap",
@@ -5748,7 +5748,7 @@ dependencies = [
[[package]]
name = "perry-ext-ads"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"block2",
"objc2",
@@ -5758,7 +5758,7 @@ dependencies = [
[[package]]
name = "perry-ext-argon2"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"argon2",
"perry-ffi",
@@ -5767,7 +5767,7 @@ dependencies = [
[[package]]
name = "perry-ext-bcrypt"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"bcrypt",
"perry-ffi",
@@ -5775,7 +5775,7 @@ dependencies = [
[[package]]
name = "perry-ext-better-sqlite3"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"perry-ffi",
"rusqlite",
@@ -5783,7 +5783,7 @@ dependencies = [
[[package]]
name = "perry-ext-cheerio"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"perry-ffi",
"scraper",
@@ -5791,7 +5791,7 @@ dependencies = [
[[package]]
name = "perry-ext-decimal"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"perry-ffi",
"rust_decimal",
@@ -5799,7 +5799,7 @@ dependencies = [
[[package]]
name = "perry-ext-ethers"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"perry-ffi",
"rand 0.10.2",
@@ -5807,7 +5807,7 @@ dependencies = [
[[package]]
name = "perry-ext-events"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"perry-ffi",
"perry-runtime",
@@ -5815,7 +5815,7 @@ dependencies = [
[[package]]
name = "perry-ext-fetch"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"bytes",
"lazy_static",
@@ -5828,7 +5828,7 @@ dependencies = [
[[package]]
name = "perry-ext-http"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"base64 0.22.1",
"bytes",
@@ -5860,7 +5860,7 @@ dependencies = [
[[package]]
name = "perry-ext-ioredis"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"lazy_static",
"perry-ffi",
@@ -5870,7 +5870,7 @@ dependencies = [
[[package]]
name = "perry-ext-mongodb"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"bson",
"futures-util",
@@ -5882,7 +5882,7 @@ dependencies = [
[[package]]
name = "perry-ext-net"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"bytes",
"perry-ffi",
@@ -5897,7 +5897,7 @@ dependencies = [
[[package]]
name = "perry-ext-nodemailer"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"lettre",
"perry-ffi",
@@ -5907,7 +5907,7 @@ dependencies = [
[[package]]
name = "perry-ext-parcel-watcher"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"notify",
"perry-ffi",
@@ -5919,7 +5919,7 @@ dependencies = [
[[package]]
name = "perry-ext-pdf"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"perry-ffi",
"printpdf",
@@ -5927,7 +5927,7 @@ dependencies = [
[[package]]
name = "perry-ext-sharp"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"fast_image_resize",
"image",
@@ -5938,7 +5938,7 @@ dependencies = [
[[package]]
name = "perry-ext-streams"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"lazy_static",
"perry-ffi",
@@ -5947,7 +5947,7 @@ dependencies = [
[[package]]
name = "perry-ext-typescript"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"anyhow",
"perry-ffi",
@@ -5967,7 +5967,7 @@ dependencies = [
[[package]]
name = "perry-ext-undici"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"perry-ffi",
"perry-runtime",
@@ -5976,7 +5976,7 @@ dependencies = [
[[package]]
name = "perry-ext-ws"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"futures-util",
"lazy_static",
@@ -5989,7 +5989,7 @@ dependencies = [
[[package]]
name = "perry-ext-zlib"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"brotli",
"flate2",
@@ -5999,7 +5999,7 @@ dependencies = [
[[package]]
name = "perry-ffi"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"dashmap 6.2.1",
"once_cell",
@@ -6009,7 +6009,7 @@ dependencies = [
[[package]]
name = "perry-hir"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"anyhow",
"perry-api-manifest",
@@ -6029,11 +6029,11 @@ dependencies = [
[[package]]
name = "perry-native-registration"
-version = "0.5.1635"
+version = "0.5.1636"
[[package]]
name = "perry-parser"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"anyhow",
"perry-diagnostics",
@@ -6046,7 +6046,7 @@ dependencies = [
[[package]]
name = "perry-perex"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"perex",
"regex",
@@ -6054,7 +6054,7 @@ dependencies = [
[[package]]
name = "perry-runtime"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"ahash",
"base64 0.22.1",
@@ -6112,14 +6112,14 @@ dependencies = [
[[package]]
name = "perry-runtime-static"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"perry-runtime",
]
[[package]]
name = "perry-stdlib"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"aes 0.8.4",
"aes 0.9.1",
@@ -6202,21 +6202,21 @@ dependencies = [
[[package]]
name = "perry-stdlib-static"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"perry-stdlib",
]
[[package]]
name = "perry-transform"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"perry-hir",
]
[[package]]
name = "perry-ui"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"dirs",
"perry-ffi",
@@ -6226,7 +6226,7 @@ dependencies = [
[[package]]
name = "perry-ui-android"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"base64 0.22.1",
"jni",
@@ -6241,7 +6241,7 @@ dependencies = [
[[package]]
name = "perry-ui-geisterhand"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"rand 0.10.2",
"serde",
@@ -6251,7 +6251,7 @@ dependencies = [
[[package]]
name = "perry-ui-gtk4"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"base64 0.22.1",
"cairo-rs 0.22.9",
@@ -6274,7 +6274,7 @@ dependencies = [
[[package]]
name = "perry-ui-ios"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"base64 0.22.1",
"block2",
@@ -6291,7 +6291,7 @@ dependencies = [
[[package]]
name = "perry-ui-macos"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"base64 0.22.1",
"block2",
@@ -6308,7 +6308,7 @@ dependencies = [
[[package]]
name = "perry-ui-model"
-version = "0.5.1635"
+version = "0.5.1636"
[[package]]
name = "perry-ui-test"
@@ -6319,11 +6319,11 @@ dependencies = [
[[package]]
name = "perry-ui-testkit"
-version = "0.5.1635"
+version = "0.5.1636"
[[package]]
name = "perry-ui-tvos"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"base64 0.22.1",
"block2",
@@ -6340,7 +6340,7 @@ dependencies = [
[[package]]
name = "perry-ui-visionos"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"base64 0.22.1",
"block2",
@@ -6357,7 +6357,7 @@ dependencies = [
[[package]]
name = "perry-ui-watchos"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"block2",
"libc",
@@ -6371,7 +6371,7 @@ dependencies = [
[[package]]
name = "perry-ui-windows"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"base64 0.22.1",
"libc",
@@ -6390,7 +6390,7 @@ dependencies = [
[[package]]
name = "perry-ui-windows-winui"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"base64 0.22.1",
"libc",
@@ -6403,7 +6403,7 @@ dependencies = [
[[package]]
name = "perry-updater"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"anyhow",
"base64 0.22.1",
@@ -6418,7 +6418,7 @@ dependencies = [
[[package]]
name = "perry-wasm-host"
-version = "0.5.1635"
+version = "0.5.1636"
dependencies = [
"wasmi",
]
diff --git a/Cargo.toml b/Cargo.toml
index cbd4182139..bc4527a9d5 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -315,7 +315,7 @@ codegen-units = 1
codegen-units = 1
[workspace.package]
-version = "0.5.1635"
+version = "0.5.1636"
edition = "2021"
license = "MIT"
repository = "https://github.com/PerryTS/perry"
diff --git a/README.md b/README.md
index 2352944223..59da6614fc 100644
--- a/README.md
+++ b/README.md
@@ -56,20 +56,20 @@ We publish *everything*, including the workloads where V8's JIT still beats us
The full published suite, generated from the artifact — including the rows we lose
-Generated from [`benchmarks/results/public-node-bun-v1.json`](benchmarks/results/public-node-bun-v1.json) at Perry commit `827a92bad5a5`.
+Generated from [`benchmarks/results/public-node-bun-v1.json`](benchmarks/results/public-node-bun-v1.json) at Perry commit `689b1ffbab1b`.
Lower wall-clock median is better; every row includes complete raw samples and passed correctness checks.
| Benchmark | Perry | Node.js | Bun | Result | What it tests |
|---|---:|---:|---:|---|---|
-| factorial | 59 ms | 95 ms | 61 ms | win vs both | Modular accumulation |
-| method_calls | 6 ms | 9 ms | 4 ms | mixed | Class method dispatch |
-| closure | 29 ms | 30 ms | 29 ms | mixed | Closure creation and invocation |
-| binary_trees | 6 ms | 5 ms | 9 ms | mixed | Tree allocation and traversal |
-| string_concat | 5 ms | 37 ms | 12 ms | win vs both | String append loop |
-| prime_sieve | 4 ms | 4 ms | 5 ms | mixed | Sieve of Eratosthenes |
-| mandelbrot | 15 ms | 17 ms | 16 ms | win vs both | Complex-number iteration |
-| matrix_multiply | 22 ms | 24 ms | 22 ms | mixed | Matrix multiplication |
-| json_roundtrip | 186 ms | 407 ms | 189 ms | win vs both | Parse and stringify ~1 MB JSON |
+| factorial | 94 ms | 95 ms | 95 ms | win vs both | Modular accumulation |
+| method_calls | 34 ms | 11 ms | 8 ms | loss vs both | Class method dispatch |
+| closure | 47 ms | 49 ms | 49 ms | win vs both | Closure creation and invocation |
+| binary_trees | 13 ms | 6 ms | 6 ms | loss vs both | Tree allocation and traversal |
+| string_concat | 5 ms | 31 ms | 6 ms | win vs both | String append loop |
+| prime_sieve | 6 ms | 5 ms | 5 ms | loss vs both | Sieve of Eratosthenes |
+| mandelbrot | 25 ms | 24 ms | 29 ms | mixed | Complex-number iteration |
+| matrix_multiply | 18 ms | 32 ms | 33 ms | win vs both | Matrix multiplication |
+| json_roundtrip | 142 ms | 382 ms | 219 ms | win vs both | Parse and stringify ~1 MB JSON |
diff --git a/benchmarks/public_baseline.py b/benchmarks/public_baseline.py
index 64d548ad4a..41026cf51f 100755
--- a/benchmarks/public_baseline.py
+++ b/benchmarks/public_baseline.py
@@ -106,13 +106,11 @@ def _git(*args: str) -> str:
).stdout.strip()
-# The workspace package version is bumped on every release and does not
-# affect benchmark behaviour, but `Cargo.toml` is a fingerprinted source
-# input. Hashing its raw bytes made every version bump invalidate the
-# recorded baseline, reddening the freshness gate on every subsequent PR.
-# Normalize the version line so only benchmark-relevant Cargo.toml changes
-# (dependencies, profiles) move the fingerprint.
-_CARGO_VERSION_RE = re.compile(rb'(?m)^version = "[^"]*"')
+# Match the release version's single-line spelling, preserving all other bytes.
+# Unrecognized spellings stay fingerprinted rather than widening the exemption.
+_CARGO_VERSION_RE = re.compile(
+ rb"""^([ \t]*version[ \t]*=[ \t]*)(["'])[0-9][0-9A-Za-z.+-]*\2([ \t]*(?:#[^\n]*)?\n?$)"""
+)
def portable_path(value: Any) -> str:
@@ -145,36 +143,23 @@ def _is_resolved_path(value: Any) -> bool:
return bool(text) and (os.path.isabs(text) or "/" in text or "\\" in text)
-def _cargo_profile_tables(data: bytes) -> bytes:
- """The `[profile.*]` tables of a Cargo manifest, and nothing else.
-
- #7282: `Cargo.toml` was fingerprinted whole-file (modulo the version line,
- which #7264's normalization already neutralized). Everything else in it —
- a new `perry-ext-*` workspace member, a dependency bump, a `[workspace]`
- restructure — invalidated the published baseline without being able to
- change a measured number. #6758/#6761's restructuring tripped it with the
- `.ts` kernels untouched, and the artifact then sat 40+ commits stale on a
- REQUIRED check, so every later `lint` step never ran at all and every merge
- needed an `--admin` bypass.
-
- What genuinely can move a number is the build profile: `opt-level`, `lto`,
- `codegen-units`, `panic`. So only those tables participate.
+def _normalize_cargo_workspace_version(data: bytes) -> bytes:
+ """Ignore only the release version in `[workspace.package]`.
- Extraction is deliberately textual and conservative — a TOML parser is not
- guaranteed available in the CI Python, and this must agree byte-for-byte
- between the generator and the checker. A section header ends the capture
- unless it is itself a `[profile...` header, so `[profile.release.package.x]`
- subtables are kept.
+ Keep profiles, dependency versions/features, workspace membership, and all
+ other manifest bytes. In particular, a dependency table's `version` is a
+ benchmark input, even when it has the same spelling as the release field.
"""
- kept: list[bytes] = []
- capturing = False
+ lines: list[bytes] = []
+ workspace_package = False
for line in data.splitlines(keepends=True):
stripped = line.strip()
- if stripped.startswith(b"[") and stripped.endswith(b"]"):
- capturing = stripped.startswith(b"[profile")
- if capturing:
- kept.append(line)
- return b"".join(kept)
+ if stripped.startswith(b"["):
+ workspace_package = stripped.split(b"#", 1)[0].strip() == b"[workspace.package]"
+ if workspace_package:
+ line = _CARGO_VERSION_RE.sub(rb"\g<1>\g<2>0.0.0\g<2>\g<3>", line)
+ lines.append(line)
+ return b"".join(lines)
def _normalize_checkout_newlines(data: bytes) -> bytes:
@@ -188,11 +173,7 @@ def _fingerprint_bytes(name: str) -> bytes:
# checkouts) uses LF; that transport detail must not invalidate evidence.
data = _normalize_checkout_newlines((ROOT / name).read_bytes())
if name == "Cargo.toml":
- # The version normalization stays: `[workspace.package] version` is not
- # in a profile table, but keeping the substitution makes the intent
- # explicit if the extraction below is ever widened.
- data = _CARGO_VERSION_RE.sub(b'version = "0.0.0"', data)
- data = _cargo_profile_tables(data)
+ data = _normalize_cargo_workspace_version(data)
return data
diff --git a/benchmarks/results/public-node-bun-v1.json b/benchmarks/results/public-node-bun-v1.json
index 671c79ba38..cc3665202e 100644
--- a/benchmarks/results/public-node-bun-v1.json
+++ b/benchmarks/results/public-node-bun-v1.json
@@ -1,25 +1,25 @@
{
"schema_version": 1,
"kind": "perry-public-node-bun-baseline",
- "commit": "827a92bad5a589e94e1630994185693ada903fe2",
- "perry_version": "perry 0.5.1519",
- "generated_at": "2026-09-01T14:19:43Z",
+ "commit": "689b1ffbab1b9cc1825ce69d6cf7cbe50fabb168",
+ "perry_version": "perry 0.5.1636",
+ "generated_at": "2026-09-22T15:36:01Z",
"freshness": {
- "source_fingerprint": "bec8afb6e384640aa9090036e3ad393ac564750a083f6e6c485804b6784c38b8",
+ "source_fingerprint": "bb679718b0b0f395e7f58744e57567fefd4482982882e9b4b202a19d24b65a9e",
"harness_fingerprint": "513dba8ff9eaf931edc8a5fc01a0093a1156c31b0b6c9cc1218f710405e315e0"
},
"host": {
- "os_version": "Ubuntu 24.04.4 LTS",
- "kernel": "Linux ideal-mastodon 6.17.0-23-generic #23~24.04.1-Ubuntu SMP PREEMPT_DYNAMIC Tue Apr 14 16:11:48 UTC 2 x86_64 x86_64 x86_64 GNU/Linux",
- "arch": "x86_64",
- "cpu": "x86_64",
- "ncpu": "16",
- "ram_gb": 61.9
+ "os_version": "26.5.1",
+ "kernel": "Darwin perry-macos.fritz.box 25.5.0 Darwin Kernel Version 25.5.0: Mon Apr 27 20:38:00 PDT 2026; root:xnu-12377.121.6~2/RELEASE_ARM64_T8103 arm64",
+ "arch": "arm64",
+ "cpu": "Apple M1",
+ "ncpu": "8",
+ "ram_gb": 8.0
},
"runtimes": {
"perry": {
"available": true,
- "version": "perry 0.5.1519",
+ "version": "perry 0.5.1636",
"command": [
""
],
@@ -38,7 +38,7 @@
"node",
""
],
- "resolved_executable": "/usr/bin/node"
+ "resolved_executable": "~/public-baseline-toolchains/node-v22.23.1-darwin-arm64/bin/node"
},
"bun": {
"available": true,
@@ -48,7 +48,7 @@
"run",
""
],
- "resolved_executable": "bun"
+ "resolved_executable": "~/.bun/bin/bun"
}
},
"policy": {
@@ -69,8 +69,8 @@
"components": {
"suite": {
"schema_version": 2,
- "commit": "827a92bad",
- "generated_at": "2026-09-01T13:00:03Z",
+ "commit": "689b1ffb",
+ "generated_at": "2026-09-22T14:06:22Z",
"run_config": {
"requested_samples": 5,
"expected_benchmarks": [
@@ -104,7 +104,7 @@
"runtimes": {
"perry": {
"available": true,
- "version": "perry 0.5.1519",
+ "version": "perry 0.5.1636",
"command": [
""
],
@@ -139,114 +139,114 @@
"perry": {
"wall_ms": {
"samples": [
- 75,
- 73,
- 73,
- 74,
- 74
+ 165,
+ 125,
+ 125,
+ 125,
+ 125
],
"sample_count": 5,
- "median": 74,
- "p95": 75,
- "min": 73,
- "max": 75,
- "mad": 1,
- "stdev": 0.748331
+ "median": 125,
+ "p95": 165,
+ "min": 125,
+ "max": 165,
+ "mad": 0,
+ "stdev": 16
},
"rss_kb": {
"samples": [
- 16880,
- 17092,
- 17032,
- 16880,
- 17052
+ 4384,
+ 4384,
+ 4384,
+ 4384,
+ 4384
],
"sample_count": 5,
- "median": 17032,
- "p95": 17092,
- "min": 16880,
- "max": 17092,
- "mad": 60,
- "stdev": 89.635707
+ "median": 4384,
+ "p95": 4384,
+ "min": 4384,
+ "max": 4384,
+ "mad": 0,
+ "stdev": 0
}
},
"node": {
"wall_ms": {
"samples": [
- 75,
- 75,
- 75,
- 74,
- 74
+ 137,
+ 126,
+ 126,
+ 126,
+ 126
],
"sample_count": 5,
- "median": 75,
- "p95": 75,
- "min": 74,
- "max": 75,
+ "median": 126,
+ "p95": 137,
+ "min": 126,
+ "max": 137,
"mad": 0,
- "stdev": 0.489898
+ "stdev": 4.4
},
"rss_kb": {
"samples": [
- 65728,
- 65724,
- 65696,
- 65656,
- 65532
+ 68576,
+ 68528,
+ 68496,
+ 68592,
+ 68512
],
"sample_count": 5,
- "median": 65696,
- "p95": 65728,
- "min": 65532,
- "max": 65728,
+ "median": 68528,
+ "p95": 68592,
+ "min": 68496,
+ "max": 68592,
"mad": 32,
- "stdev": 72.328141
+ "stdev": 37.042678
}
},
"bun": {
"wall_ms": {
"samples": [
- 75,
- 74,
- 74,
- 74,
- 74
+ 134,
+ 125,
+ 126,
+ 126,
+ 126
],
"sample_count": 5,
- "median": 74,
- "p95": 75,
- "min": 74,
- "max": 75,
+ "median": 126,
+ "p95": 134,
+ "min": 125,
+ "max": 134,
"mad": 0,
- "stdev": 0.4
+ "stdev": 3.32265
},
"rss_kb": {
"samples": [
- 39696,
- 39792,
- 39788,
- 39924,
- 39792
+ 30592,
+ 30544,
+ 30576,
+ 30544,
+ 30544
],
"sample_count": 5,
- "median": 39792,
- "p95": 39924,
- "min": 39696,
- "max": 39924,
- "mad": 4,
- "stdev": 72.734036
+ "median": 30544,
+ "p95": 30592,
+ "min": 30544,
+ "max": 30592,
+ "mad": 0,
+ "stdev": 20.238577
}
}
},
"ratios": {
"perry_to_node": {
- "wall_time": 0.986667,
- "rss": 0.259255
+ "wall_time": 0.992063,
+ "rss": 0.063974
},
"perry_to_bun": {
- "wall_time": 1.0,
- "rss": 0.428026
+ "wall_time": 0.992063,
+ "rss": 0.143531
}
},
"correctness": {
@@ -260,90 +260,90 @@
],
"reason": "all 5 Perry sample(s) matched node semantic output"
},
- "perry_ms": 74,
- "perry_rss_kb": 17032,
- "node_ms": 75,
- "node_rss_kb": 65696,
- "bun_ms": 74,
- "bun_rss_kb": 39792,
- "speed_ratio": 0.986667,
- "memory_ratio": 0.259255
+ "perry_ms": 125,
+ "perry_rss_kb": 4384,
+ "node_ms": 126,
+ "node_rss_kb": 68528,
+ "bun_ms": 126,
+ "bun_rss_kb": 30544,
+ "speed_ratio": 0.992063,
+ "memory_ratio": 0.063974
},
"03_array_write": {
"runtimes": {
"perry": {
"wall_ms": {
"samples": [
- 3,
- 4,
4,
- 3,
- 4
+ 1,
+ 1,
+ 2,
+ 1
],
"sample_count": 5,
- "median": 4,
+ "median": 1,
"p95": 4,
- "min": 3,
+ "min": 1,
"max": 4,
"mad": 0,
- "stdev": 0.489898
+ "stdev": 1.16619
},
"rss_kb": {
"samples": [
- 127384,
- 127764,
- 127576,
- 127636,
- 127912
+ 95472,
+ 95488,
+ 95472,
+ 95472,
+ 95472
],
"sample_count": 5,
- "median": 127636,
- "p95": 127912,
- "min": 127384,
- "max": 127912,
- "mad": 128,
- "stdev": 177.747686
+ "median": 95472,
+ "p95": 95488,
+ "min": 95472,
+ "max": 95488,
+ "mad": 0,
+ "stdev": 6.4
}
},
"node": {
"wall_ms": {
"samples": [
- 5,
- 4,
- 5,
- 5,
- 4
+ 7,
+ 6,
+ 6,
+ 7,
+ 6
],
"sample_count": 5,
- "median": 5,
- "p95": 5,
- "min": 4,
- "max": 5,
+ "median": 6,
+ "p95": 7,
+ "min": 6,
+ "max": 7,
"mad": 0,
"stdev": 0.489898
},
"rss_kb": {
"samples": [
- 369704,
- 369516,
- 369356,
- 369492,
- 369160
+ 374416,
+ 374240,
+ 374272,
+ 374240,
+ 374160
],
"sample_count": 5,
- "median": 369492,
- "p95": 369704,
- "min": 369160,
- "max": 369704,
- "mad": 136,
- "stdev": 180.817698
+ "median": 374240,
+ "p95": 374416,
+ "min": 374160,
+ "max": 374416,
+ "mad": 32,
+ "stdev": 83.813125
}
},
"bun": {
"wall_ms": {
"samples": [
5,
- 5,
+ 4,
5,
5,
5
@@ -351,37 +351,37 @@
"sample_count": 5,
"median": 5,
"p95": 5,
- "min": 5,
+ "min": 4,
"max": 5,
"mad": 0,
- "stdev": 0
+ "stdev": 0.4
},
"rss_kb": {
"samples": [
- 305344,
- 305204,
- 293696,
- 305076,
- 305404
+ 279392,
+ 202816,
+ 267104,
+ 202816,
+ 199376
],
"sample_count": 5,
- "median": 305204,
- "p95": 305404,
- "min": 293696,
- "max": 305404,
- "mad": 140,
- "stdev": 4625.799926
+ "median": 202816,
+ "p95": 279392,
+ "min": 199376,
+ "max": 279392,
+ "mad": 3440,
+ "stdev": 35303.238279
}
}
},
"ratios": {
"perry_to_node": {
- "wall_time": 0.8,
- "rss": 0.345436
+ "wall_time": 0.166667,
+ "rss": 0.255109
},
"perry_to_bun": {
- "wall_time": 0.8,
- "rss": 0.418199
+ "wall_time": 0.2,
+ "rss": 0.470732
}
},
"correctness": {
@@ -395,128 +395,128 @@
],
"reason": "all 5 Perry sample(s) matched node semantic output"
},
- "perry_ms": 4,
- "perry_rss_kb": 127636,
- "node_ms": 5,
- "node_rss_kb": 369492,
+ "perry_ms": 1,
+ "perry_rss_kb": 95472,
+ "node_ms": 6,
+ "node_rss_kb": 374240,
"bun_ms": 5,
- "bun_rss_kb": 305204,
- "speed_ratio": 0.8,
- "memory_ratio": 0.345436
+ "bun_rss_kb": 202816,
+ "speed_ratio": 0.166667,
+ "memory_ratio": 0.255109
},
"04_array_read": {
"runtimes": {
"perry": {
"wall_ms": {
"samples": [
- 5,
- 6,
- 6,
- 5,
- 5
+ 24,
+ 9,
+ 9,
+ 9,
+ 9
],
"sample_count": 5,
- "median": 5,
- "p95": 6,
- "min": 5,
- "max": 6,
+ "median": 9,
+ "p95": 24,
+ "min": 9,
+ "max": 24,
"mad": 0,
- "stdev": 0.489898
+ "stdev": 6
},
"rss_kb": {
"samples": [
- 127812,
- 127452,
- 127508,
- 127912,
- 127776
+ 95376,
+ 95376,
+ 95376,
+ 95376,
+ 95376
],
"sample_count": 5,
- "median": 127776,
- "p95": 127912,
- "min": 127452,
- "max": 127912,
- "mad": 136,
- "stdev": 179.617371
+ "median": 95376,
+ "p95": 95376,
+ "min": 95376,
+ "max": 95376,
+ "mad": 0,
+ "stdev": 0
}
},
"node": {
"wall_ms": {
"samples": [
- 8,
- 7,
- 7,
- 8,
- 7
+ 11,
+ 11,
+ 11,
+ 10,
+ 10
],
"sample_count": 5,
- "median": 7,
- "p95": 8,
- "min": 7,
- "max": 8,
+ "median": 11,
+ "p95": 11,
+ "min": 10,
+ "max": 11,
"mad": 0,
"stdev": 0.489898
},
"rss_kb": {
"samples": [
- 370624,
- 370872,
- 370704,
- 370900,
- 370516
+ 375280,
+ 374304,
+ 374448,
+ 374480,
+ 374432
],
"sample_count": 5,
- "median": 370704,
- "p95": 370900,
- "min": 370516,
- "max": 370900,
- "mad": 168,
- "stdev": 145.973148
+ "median": 374448,
+ "p95": 375280,
+ "min": 374304,
+ "max": 375280,
+ "mad": 32,
+ "stdev": 350.74686
}
},
"bun": {
"wall_ms": {
"samples": [
- 9,
- 9,
- 9,
- 9,
- 10
+ 14,
+ 13,
+ 14,
+ 13,
+ 14
],
"sample_count": 5,
- "median": 9,
- "p95": 10,
- "min": 9,
- "max": 10,
+ "median": 14,
+ "p95": 14,
+ "min": 13,
+ "max": 14,
"mad": 0,
- "stdev": 0.4
+ "stdev": 0.489898
},
"rss_kb": {
"samples": [
- 305792,
- 305760,
- 305844,
- 305800,
- 305920
+ 267856,
+ 267872,
+ 288288,
+ 267856,
+ 291728
],
"sample_count": 5,
- "median": 305800,
- "p95": 305920,
- "min": 305760,
- "max": 305920,
- "mad": 40,
- "stdev": 55.333173
+ "median": 267872,
+ "p95": 291728,
+ "min": 267856,
+ "max": 291728,
+ "mad": 16,
+ "stdev": 10904.006456
}
}
},
"ratios": {
"perry_to_node": {
- "wall_time": 0.714286,
- "rss": 0.344685
+ "wall_time": 0.818182,
+ "rss": 0.254711
},
"perry_to_bun": {
- "wall_time": 0.555556,
- "rss": 0.417842
+ "wall_time": 0.642857,
+ "rss": 0.356051
}
},
"correctness": {
@@ -530,128 +530,128 @@
],
"reason": "all 5 Perry sample(s) matched node semantic output"
},
- "perry_ms": 5,
- "perry_rss_kb": 127776,
- "node_ms": 7,
- "node_rss_kb": 370704,
- "bun_ms": 9,
- "bun_rss_kb": 305800,
- "speed_ratio": 0.714286,
- "memory_ratio": 0.344685
+ "perry_ms": 9,
+ "perry_rss_kb": 95376,
+ "node_ms": 11,
+ "node_rss_kb": 374448,
+ "bun_ms": 14,
+ "bun_rss_kb": 267872,
+ "speed_ratio": 0.818182,
+ "memory_ratio": 0.254711
},
"05_fibonacci": {
"runtimes": {
"perry": {
"wall_ms": {
"samples": [
- 315,
- 315,
- 315,
- 315,
- 315
+ 384,
+ 338,
+ 337,
+ 338,
+ 338
],
"sample_count": 5,
- "median": 315,
- "p95": 315,
- "min": 315,
- "max": 315,
+ "median": 338,
+ "p95": 384,
+ "min": 337,
+ "max": 384,
"mad": 0,
- "stdev": 0
+ "stdev": 18.504054
},
"rss_kb": {
"samples": [
- 16772,
- 17324,
- 16824,
- 17152,
- 16988
+ 4560,
+ 4560,
+ 4560,
+ 4560,
+ 4560
],
"sample_count": 5,
- "median": 16988,
- "p95": 17324,
- "min": 16772,
- "max": 17324,
- "mad": 164,
- "stdev": 205.165299
+ "median": 4560,
+ "p95": 4560,
+ "min": 4560,
+ "max": 4560,
+ "mad": 0,
+ "stdev": 0
}
},
"node": {
"wall_ms": {
"samples": [
- 698,
- 698,
- 699,
- 696,
- 697
+ 913,
+ 913,
+ 913,
+ 913,
+ 913
],
"sample_count": 5,
- "median": 698,
- "p95": 699,
- "min": 696,
- "max": 699,
- "mad": 1,
- "stdev": 1.019804
+ "median": 913,
+ "p95": 913,
+ "min": 913,
+ "max": 913,
+ "mad": 0,
+ "stdev": 0
},
"rss_kb": {
"samples": [
- 65348,
- 65400,
- 65216,
- 65276,
- 65232
+ 68256,
+ 68288,
+ 68496,
+ 68224,
+ 68288
],
"sample_count": 5,
- "median": 65276,
- "p95": 65400,
- "min": 65216,
- "max": 65400,
- "mad": 60,
- "stdev": 69.861577
+ "median": 68288,
+ "p95": 68496,
+ "min": 68224,
+ "max": 68496,
+ "mad": 32,
+ "stdev": 95.786429
}
},
"bun": {
"wall_ms": {
"samples": [
- 426,
- 426,
- 426,
- 426,
- 426
+ 505,
+ 499,
+ 504,
+ 504,
+ 499
],
"sample_count": 5,
- "median": 426,
- "p95": 426,
- "min": 426,
- "max": 426,
- "mad": 0,
- "stdev": 0
+ "median": 504,
+ "p95": 505,
+ "min": 499,
+ "max": 505,
+ "mad": 1,
+ "stdev": 2.638181
},
"rss_kb": {
"samples": [
- 39112,
- 39616,
- 39548,
- 39428,
- 39428
+ 29392,
+ 29296,
+ 29392,
+ 29408,
+ 29296
],
"sample_count": 5,
- "median": 39428,
- "p95": 39616,
- "min": 39112,
- "max": 39616,
- "mad": 120,
- "stdev": 172.966586
+ "median": 29392,
+ "p95": 29408,
+ "min": 29296,
+ "max": 29408,
+ "mad": 16,
+ "stdev": 49.985598
}
}
},
"ratios": {
"perry_to_node": {
- "wall_time": 0.451289,
- "rss": 0.260249
+ "wall_time": 0.370208,
+ "rss": 0.066776
},
"perry_to_bun": {
- "wall_time": 0.739437,
- "rss": 0.430861
+ "wall_time": 0.670635,
+ "rss": 0.155144
}
},
"correctness": {
@@ -665,83 +665,83 @@
],
"reason": "all 5 Perry sample(s) matched node semantic output"
},
- "perry_ms": 315,
- "perry_rss_kb": 16988,
- "node_ms": 698,
- "node_rss_kb": 65276,
- "bun_ms": 426,
- "bun_rss_kb": 39428,
- "speed_ratio": 0.451289,
- "memory_ratio": 0.260249
+ "perry_ms": 338,
+ "perry_rss_kb": 4560,
+ "node_ms": 913,
+ "node_rss_kb": 68288,
+ "bun_ms": 504,
+ "bun_rss_kb": 29392,
+ "speed_ratio": 0.370208,
+ "memory_ratio": 0.066776
},
"06_math_intensive": {
"runtimes": {
"perry": {
"wall_ms": {
"samples": [
- 44,
- 45,
- 44,
- 45,
- 44
+ 88,
+ 48,
+ 48,
+ 48,
+ 48
],
"sample_count": 5,
- "median": 44,
- "p95": 45,
- "min": 44,
- "max": 45,
+ "median": 48,
+ "p95": 88,
+ "min": 48,
+ "max": 88,
"mad": 0,
- "stdev": 0.489898
+ "stdev": 16
},
"rss_kb": {
"samples": [
- 16824,
- 16732,
- 16716,
- 17160,
- 16820
+ 4384,
+ 4384,
+ 4384,
+ 4384,
+ 4384
],
"sample_count": 5,
- "median": 16820,
- "p95": 17160,
- "min": 16716,
- "max": 17160,
- "mad": 88,
- "stdev": 160.969065
+ "median": 4384,
+ "p95": 4384,
+ "min": 4384,
+ "max": 4384,
+ "mad": 0,
+ "stdev": 0
}
},
"node": {
"wall_ms": {
"samples": [
- 43,
- 43,
- 43,
- 44,
- 44
+ 49,
+ 49,
+ 49,
+ 49,
+ 49
],
"sample_count": 5,
- "median": 43,
- "p95": 44,
- "min": 43,
- "max": 44,
+ "median": 49,
+ "p95": 49,
+ "min": 49,
+ "max": 49,
"mad": 0,
- "stdev": 0.489898
+ "stdev": 0
},
"rss_kb": {
"samples": [
- 67260,
- 67204,
- 67492,
- 67228,
- 67232
+ 70480,
+ 70384,
+ 70480,
+ 70416,
+ 70448
],
"sample_count": 5,
- "median": 67232,
- "p95": 67492,
- "min": 67204,
- "max": 67492,
- "mad": 28,
- "stdev": 105.902597
+ "median": 70448,
+ "p95": 70480,
+ "min": 70384,
+ "max": 70480,
+ "mad": 32,
+ "stdev": 37.318092
}
},
"bun": {
@@ -749,44 +749,44 @@
"samples": [
49,
49,
- 46,
- 45,
- 47
+ 49,
+ 48,
+ 48
],
"sample_count": 5,
- "median": 47,
+ "median": 49,
"p95": 49,
- "min": 45,
+ "min": 48,
"max": 49,
- "mad": 2,
- "stdev": 1.6
+ "mad": 0,
+ "stdev": 0.489898
},
"rss_kb": {
"samples": [
- 40028,
- 40032,
- 39812,
- 40096,
- 39988
+ 30656,
+ 30656,
+ 30672,
+ 30640,
+ 30672
],
"sample_count": 5,
- "median": 40028,
- "p95": 40096,
- "min": 39812,
- "max": 40096,
- "mad": 40,
- "stdev": 96.046655
+ "median": 30656,
+ "p95": 30672,
+ "min": 30640,
+ "max": 30672,
+ "mad": 16,
+ "stdev": 11.973304
}
}
},
"ratios": {
"perry_to_node": {
- "wall_time": 1.023256,
- "rss": 0.250178
+ "wall_time": 0.979592,
+ "rss": 0.06223
},
"perry_to_bun": {
- "wall_time": 0.93617,
- "rss": 0.420206
+ "wall_time": 0.979592,
+ "rss": 0.143006
}
},
"correctness": {
@@ -800,128 +800,128 @@
],
"reason": "all 5 Perry sample(s) matched node semantic output"
},
- "perry_ms": 44,
- "perry_rss_kb": 16820,
- "node_ms": 43,
- "node_rss_kb": 67232,
- "bun_ms": 47,
- "bun_rss_kb": 40028,
- "speed_ratio": 1.023256,
- "memory_ratio": 0.250178
+ "perry_ms": 48,
+ "perry_rss_kb": 4384,
+ "node_ms": 49,
+ "node_rss_kb": 70448,
+ "bun_ms": 49,
+ "bun_rss_kb": 30656,
+ "speed_ratio": 0.979592,
+ "memory_ratio": 0.06223
},
"07_object_create": {
"runtimes": {
"perry": {
"wall_ms": {
"samples": [
- 4,
- 4,
- 4,
- 4,
- 4
+ 17,
+ 8,
+ 8,
+ 8,
+ 8
],
"sample_count": 5,
- "median": 4,
- "p95": 4,
- "min": 4,
- "max": 4,
+ "median": 8,
+ "p95": 17,
+ "min": 8,
+ "max": 17,
"mad": 0,
- "stdev": 0
+ "stdev": 3.6
},
"rss_kb": {
"samples": [
- 21244,
- 21408,
- 21368,
- 21444,
- 21148
+ 6224,
+ 6224,
+ 6208,
+ 6208,
+ 6208
],
"sample_count": 5,
- "median": 21368,
- "p95": 21444,
- "min": 21148,
- "max": 21444,
- "mad": 76,
- "stdev": 110.231756
+ "median": 6208,
+ "p95": 6224,
+ "min": 6208,
+ "max": 6224,
+ "mad": 0,
+ "stdev": 7.838367
}
},
"node": {
"wall_ms": {
"samples": [
5,
- 4,
- 4,
5,
- 4
+ 5,
+ 5,
+ 5
],
"sample_count": 5,
- "median": 4,
+ "median": 5,
"p95": 5,
- "min": 4,
+ "min": 5,
"max": 5,
"mad": 0,
- "stdev": 0.489898
+ "stdev": 0
},
"rss_kb": {
"samples": [
- 68108,
- 67920,
- 68008,
- 68020,
- 67708
+ 70976,
+ 70912,
+ 71056,
+ 71040,
+ 71216
],
"sample_count": 5,
- "median": 68008,
- "p95": 68108,
- "min": 67708,
- "max": 68108,
- "mad": 88,
- "stdev": 136.127
+ "median": 71040,
+ "p95": 71216,
+ "min": 70912,
+ "max": 71216,
+ "mad": 64,
+ "stdev": 101.697591
}
},
"bun": {
"wall_ms": {
"samples": [
- 7,
- 8,
- 7,
- 8,
- 7
+ 6,
+ 5,
+ 5,
+ 6,
+ 6
],
"sample_count": 5,
- "median": 7,
- "p95": 8,
- "min": 7,
- "max": 8,
+ "median": 6,
+ "p95": 6,
+ "min": 5,
+ "max": 6,
"mad": 0,
"stdev": 0.489898
},
"rss_kb": {
"samples": [
- 56480,
- 56296,
- 55960,
- 55928,
- 56044
+ 51792,
+ 48864,
+ 48928,
+ 48912,
+ 48656
],
"sample_count": 5,
- "median": 56044,
- "p95": 56480,
- "min": 55928,
- "max": 56480,
- "mad": 116,
- "stdev": 212.830073
+ "median": 48912,
+ "p95": 51792,
+ "min": 48656,
+ "max": 51792,
+ "mad": 48,
+ "stdev": 1184.804051
}
}
},
"ratios": {
"perry_to_node": {
- "wall_time": 1.0,
- "rss": 0.314198
+ "wall_time": 1.6,
+ "rss": 0.087387
},
"perry_to_bun": {
- "wall_time": 0.571429,
- "rss": 0.381272
+ "wall_time": 1.333333,
+ "rss": 0.126922
}
},
"correctness": {
@@ -935,128 +935,128 @@
],
"reason": "all 5 Perry sample(s) matched node semantic output"
},
- "perry_ms": 4,
- "perry_rss_kb": 21368,
- "node_ms": 4,
- "node_rss_kb": 68008,
- "bun_ms": 7,
- "bun_rss_kb": 56044,
- "speed_ratio": 1.0,
- "memory_ratio": 0.314198
+ "perry_ms": 8,
+ "perry_rss_kb": 6208,
+ "node_ms": 5,
+ "node_rss_kb": 71040,
+ "bun_ms": 6,
+ "bun_rss_kb": 48912,
+ "speed_ratio": 1.6,
+ "memory_ratio": 0.087387
},
"08_string_concat": {
"runtimes": {
"perry": {
"wall_ms": {
"samples": [
- 4,
+ 22,
5,
- 4,
+ 6,
5,
5
],
"sample_count": 5,
"median": 5,
- "p95": 5,
- "min": 4,
- "max": 5,
+ "p95": 22,
+ "min": 5,
+ "max": 22,
"mad": 0,
- "stdev": 0.489898
+ "stdev": 6.711185
},
"rss_kb": {
"samples": [
- 27500,
- 27116,
- 26992,
- 26908,
- 26916
+ 7264,
+ 7248,
+ 7264,
+ 7248,
+ 7248
],
"sample_count": 5,
- "median": 26992,
- "p95": 27500,
- "min": 26908,
- "max": 27500,
- "mad": 84,
- "stdev": 219.870507
+ "median": 7248,
+ "p95": 7264,
+ "min": 7248,
+ "max": 7264,
+ "mad": 0,
+ "stdev": 7.838367
}
},
"node": {
"wall_ms": {
"samples": [
- 37,
- 37,
- 36,
- 36,
- 37
+ 30,
+ 31,
+ 30,
+ 31,
+ 31
],
"sample_count": 5,
- "median": 37,
- "p95": 37,
- "min": 36,
- "max": 37,
+ "median": 31,
+ "p95": 31,
+ "min": 30,
+ "max": 31,
"mad": 0,
"stdev": 0.489898
},
"rss_kb": {
"samples": [
- 114624,
- 114668,
- 114904,
- 114668,
- 114492
+ 118048,
+ 118160,
+ 118128,
+ 118112,
+ 118096
],
"sample_count": 5,
- "median": 114668,
- "p95": 114904,
- "min": 114492,
- "max": 114904,
- "mad": 44,
- "stdev": 133.084034
+ "median": 118112,
+ "p95": 118160,
+ "min": 118048,
+ "max": 118160,
+ "mad": 16,
+ "stdev": 37.042678
}
},
"bun": {
"wall_ms": {
"samples": [
- 12,
- 12,
- 13,
- 12,
- 13
+ 6,
+ 6,
+ 6,
+ 5,
+ 6
],
"sample_count": 5,
- "median": 12,
- "p95": 13,
- "min": 12,
- "max": 13,
+ "median": 6,
+ "p95": 6,
+ "min": 5,
+ "max": 6,
"mad": 0,
- "stdev": 0.489898
+ "stdev": 0.4
},
"rss_kb": {
"samples": [
- 74020,
- 74024,
- 73700,
- 73860,
- 73508
+ 64336,
+ 64368,
+ 64336,
+ 64336,
+ 64304
],
"sample_count": 5,
- "median": 73860,
- "p95": 74024,
- "min": 73508,
- "max": 74024,
- "mad": 160,
- "stdev": 197.449335
+ "median": 64336,
+ "p95": 64368,
+ "min": 64304,
+ "max": 64368,
+ "mad": 0,
+ "stdev": 20.238577
}
}
},
"ratios": {
"perry_to_node": {
- "wall_time": 0.135135,
- "rss": 0.235393
+ "wall_time": 0.16129,
+ "rss": 0.061365
},
"perry_to_bun": {
- "wall_time": 0.416667,
- "rss": 0.365448
+ "wall_time": 0.833333,
+ "rss": 0.112659
}
},
"correctness": {
@@ -1073,127 +1073,127 @@
"reason": "all 5 Perry sample(s) matched node semantic output"
},
"perry_ms": 5,
- "perry_rss_kb": 26992,
- "node_ms": 37,
- "node_rss_kb": 114668,
- "bun_ms": 12,
- "bun_rss_kb": 73860,
- "speed_ratio": 0.135135,
- "memory_ratio": 0.235393
+ "perry_rss_kb": 7248,
+ "node_ms": 31,
+ "node_rss_kb": 118112,
+ "bun_ms": 6,
+ "bun_rss_kb": 64336,
+ "speed_ratio": 0.16129,
+ "memory_ratio": 0.061365
},
"09_method_calls": {
"runtimes": {
"perry": {
"wall_ms": {
"samples": [
- 6,
- 6,
- 6,
- 6,
- 6
+ 70,
+ 35,
+ 34,
+ 34,
+ 34
],
"sample_count": 5,
- "median": 6,
- "p95": 6,
- "min": 6,
- "max": 6,
+ "median": 34,
+ "p95": 70,
+ "min": 34,
+ "max": 70,
"mad": 0,
- "stdev": 0
+ "stdev": 14.305244
},
"rss_kb": {
"samples": [
- 21508,
- 21504,
- 21596,
- 21648,
- 21740
+ 6448,
+ 6448,
+ 6448,
+ 6448,
+ 6464
],
"sample_count": 5,
- "median": 21596,
- "p95": 21740,
- "min": 21504,
- "max": 21740,
- "mad": 88,
- "stdev": 88.990786
+ "median": 6448,
+ "p95": 6464,
+ "min": 6448,
+ "max": 6464,
+ "mad": 0,
+ "stdev": 6.4
}
},
"node": {
"wall_ms": {
"samples": [
- 8,
- 9,
- 9,
- 8,
- 9
- ],
- "sample_count": 5,
- "median": 9,
- "p95": 9,
- "min": 8,
- "max": 9,
+ 11,
+ 11,
+ 10,
+ 10,
+ 11
+ ],
+ "sample_count": 5,
+ "median": 11,
+ "p95": 11,
+ "min": 10,
+ "max": 11,
"mad": 0,
"stdev": 0.489898
},
"rss_kb": {
"samples": [
- 65280,
- 65596,
- 65644,
- 65380,
- 65524
+ 68800,
+ 68800,
+ 68800,
+ 68896,
+ 68768
],
"sample_count": 5,
- "median": 65524,
- "p95": 65644,
- "min": 65280,
- "max": 65644,
- "mad": 120,
- "stdev": 135.77393
+ "median": 68800,
+ "p95": 68896,
+ "min": 68768,
+ "max": 68896,
+ "mad": 0,
+ "stdev": 43.406912
}
},
"bun": {
"wall_ms": {
"samples": [
- 4,
- 5,
- 5,
- 4,
- 4
+ 9,
+ 8,
+ 7,
+ 8,
+ 9
],
"sample_count": 5,
- "median": 4,
- "p95": 5,
- "min": 4,
- "max": 5,
- "mad": 0,
- "stdev": 0.489898
+ "median": 8,
+ "p95": 9,
+ "min": 7,
+ "max": 9,
+ "mad": 1,
+ "stdev": 0.748331
},
"rss_kb": {
"samples": [
- 41444,
- 41444,
- 41596,
- 41332,
- 41336
+ 31536,
+ 31568,
+ 31552,
+ 31568,
+ 31552
],
"sample_count": 5,
- "median": 41444,
- "p95": 41596,
- "min": 41332,
- "max": 41596,
- "mad": 108,
- "stdev": 96.319468
+ "median": 31552,
+ "p95": 31568,
+ "min": 31536,
+ "max": 31568,
+ "mad": 16,
+ "stdev": 11.973304
}
}
},
"ratios": {
"perry_to_node": {
- "wall_time": 0.666667,
- "rss": 0.329589
+ "wall_time": 3.090909,
+ "rss": 0.093721
},
"perry_to_bun": {
- "wall_time": 1.5,
- "rss": 0.521089
+ "wall_time": 4.25,
+ "rss": 0.204361
}
},
"correctness": {
@@ -1207,128 +1207,128 @@
],
"reason": "all 5 Perry sample(s) matched node semantic output"
},
- "perry_ms": 6,
- "perry_rss_kb": 21596,
- "node_ms": 9,
- "node_rss_kb": 65524,
- "bun_ms": 4,
- "bun_rss_kb": 41444,
- "speed_ratio": 0.666667,
- "memory_ratio": 0.329589
+ "perry_ms": 34,
+ "perry_rss_kb": 6448,
+ "node_ms": 11,
+ "node_rss_kb": 68800,
+ "bun_ms": 8,
+ "bun_rss_kb": 31552,
+ "speed_ratio": 3.090909,
+ "memory_ratio": 0.093721
},
"10_nested_loops": {
"runtimes": {
"perry": {
"wall_ms": {
"samples": [
- 26,
- 25,
- 25,
- 25,
- 25
+ 42,
+ 17,
+ 17,
+ 17,
+ 17
],
"sample_count": 5,
- "median": 25,
- "p95": 26,
- "min": 25,
- "max": 26,
+ "median": 17,
+ "p95": 42,
+ "min": 17,
+ "max": 42,
"mad": 0,
- "stdev": 0.4
+ "stdev": 10
},
"rss_kb": {
"samples": [
- 33520,
- 33488,
- 33184,
- 33564,
- 33220
+ 6096,
+ 6096,
+ 6096,
+ 6096,
+ 6096
],
"sample_count": 5,
- "median": 33488,
- "p95": 33564,
- "min": 33184,
- "max": 33564,
- "mad": 76,
- "stdev": 159.988
+ "median": 6096,
+ "p95": 6096,
+ "min": 6096,
+ "max": 6096,
+ "mad": 0,
+ "stdev": 0
}
},
"node": {
"wall_ms": {
"samples": [
- 12,
- 12,
- 12,
- 11,
- 11
+ 18,
+ 17,
+ 18,
+ 17,
+ 18
],
"sample_count": 5,
- "median": 12,
- "p95": 12,
- "min": 11,
- "max": 12,
+ "median": 18,
+ "p95": 18,
+ "min": 17,
+ "max": 18,
"mad": 0,
"stdev": 0.489898
},
"rss_kb": {
"samples": [
- 67524,
- 67700,
- 67396,
- 67268,
- 67720
+ 70560,
+ 70832,
+ 70720,
+ 70496,
+ 70816
],
"sample_count": 5,
- "median": 67524,
- "p95": 67720,
- "min": 67268,
- "max": 67720,
- "mad": 176,
- "stdev": 173.944359
+ "median": 70720,
+ "p95": 70832,
+ "min": 70496,
+ "max": 70832,
+ "mad": 112,
+ "stdev": 135.159757
}
},
"bun": {
"wall_ms": {
"samples": [
- 12,
- 12,
- 12,
- 13,
- 13
+ 19,
+ 19,
+ 19,
+ 19,
+ 18
],
"sample_count": 5,
- "median": 12,
- "p95": 13,
- "min": 12,
- "max": 13,
+ "median": 19,
+ "p95": 19,
+ "min": 18,
+ "max": 19,
"mad": 0,
- "stdev": 0.489898
+ "stdev": 0.4
},
"rss_kb": {
"samples": [
- 42592,
- 42796,
- 42648,
- 42752,
- 42532
+ 32848,
+ 32848,
+ 32816,
+ 32864,
+ 32864
],
"sample_count": 5,
- "median": 42648,
- "p95": 42796,
- "min": 42532,
- "max": 42796,
- "mad": 104,
- "stdev": 98.012244
+ "median": 32848,
+ "p95": 32864,
+ "min": 32816,
+ "max": 32864,
+ "mad": 16,
+ "stdev": 17.527122
}
}
},
"ratios": {
"perry_to_node": {
- "wall_time": 2.083333,
- "rss": 0.495942
+ "wall_time": 0.944444,
+ "rss": 0.086199
},
"perry_to_bun": {
- "wall_time": 2.083333,
- "rss": 0.785219
+ "wall_time": 0.894737,
+ "rss": 0.185582
}
},
"correctness": {
@@ -1342,83 +1342,83 @@
],
"reason": "all 5 Perry sample(s) matched node semantic output"
},
- "perry_ms": 25,
- "perry_rss_kb": 33488,
- "node_ms": 12,
- "node_rss_kb": 67524,
- "bun_ms": 12,
- "bun_rss_kb": 42648,
- "speed_ratio": 2.083333,
- "memory_ratio": 0.495942
+ "perry_ms": 17,
+ "perry_rss_kb": 6096,
+ "node_ms": 18,
+ "node_rss_kb": 70720,
+ "bun_ms": 19,
+ "bun_rss_kb": 32848,
+ "speed_ratio": 0.944444,
+ "memory_ratio": 0.086199
},
"11_prime_sieve": {
"runtimes": {
"perry": {
"wall_ms": {
"samples": [
- 4,
+ 13,
+ 6,
5,
- 4,
- 4,
- 4
+ 6,
+ 6
],
"sample_count": 5,
- "median": 4,
- "p95": 5,
- "min": 4,
- "max": 5,
+ "median": 6,
+ "p95": 13,
+ "min": 5,
+ "max": 13,
"mad": 0,
- "stdev": 0.4
+ "stdev": 2.925748
},
"rss_kb": {
"samples": [
- 64168,
- 64360,
- 64232,
- 64120,
- 64188
+ 24656,
+ 24672,
+ 24656,
+ 24672,
+ 24672
],
"sample_count": 5,
- "median": 64188,
- "p95": 64360,
- "min": 64120,
- "max": 64360,
- "mad": 44,
- "stdev": 81.568621
+ "median": 24672,
+ "p95": 24672,
+ "min": 24656,
+ "max": 24672,
+ "mad": 0,
+ "stdev": 7.838367
}
},
"node": {
"wall_ms": {
"samples": [
5,
- 4,
- 4,
- 4,
- 4
+ 5,
+ 6,
+ 5,
+ 6
],
"sample_count": 5,
- "median": 4,
- "p95": 5,
- "min": 4,
- "max": 5,
+ "median": 5,
+ "p95": 6,
+ "min": 5,
+ "max": 6,
"mad": 0,
- "stdev": 0.4
+ "stdev": 0.489898
},
"rss_kb": {
"samples": [
- 96784,
- 97096,
- 96892,
- 96984,
- 97056
+ 100672,
+ 100432,
+ 100528,
+ 100624,
+ 100480
],
"sample_count": 5,
- "median": 96984,
- "p95": 97096,
- "min": 96784,
- "max": 97096,
- "mad": 92,
- "stdev": 113.012566
+ "median": 100528,
+ "p95": 100672,
+ "min": 100432,
+ "max": 100672,
+ "mad": 96,
+ "stdev": 89.026738
}
},
"bun": {
@@ -1426,44 +1426,44 @@
"samples": [
5,
5,
- 5,
+ 6,
5,
5
],
"sample_count": 5,
"median": 5,
- "p95": 5,
+ "p95": 6,
"min": 5,
- "max": 5,
+ "max": 6,
"mad": 0,
- "stdev": 0
+ "stdev": 0.4
},
"rss_kb": {
"samples": [
- 76204,
- 76232,
- 76252,
- 76348,
- 76016
+ 53728,
+ 62016,
+ 67168,
+ 58160,
+ 58576
],
"sample_count": 5,
- "median": 76232,
- "p95": 76348,
- "min": 76016,
- "max": 76348,
- "mad": 28,
- "stdev": 108.593922
+ "median": 58576,
+ "p95": 67168,
+ "min": 53728,
+ "max": 67168,
+ "mad": 3440,
+ "stdev": 4475.959321
}
}
},
"ratios": {
"perry_to_node": {
- "wall_time": 1.0,
- "rss": 0.661841
+ "wall_time": 1.2,
+ "rss": 0.245424
},
"perry_to_bun": {
- "wall_time": 0.8,
- "rss": 0.842009
+ "wall_time": 1.2,
+ "rss": 0.421196
}
},
"correctness": {
@@ -1477,128 +1477,128 @@
],
"reason": "all 5 Perry sample(s) matched node semantic output"
},
- "perry_ms": 4,
- "perry_rss_kb": 64188,
- "node_ms": 4,
- "node_rss_kb": 96984,
+ "perry_ms": 6,
+ "perry_rss_kb": 24672,
+ "node_ms": 5,
+ "node_rss_kb": 100528,
"bun_ms": 5,
- "bun_rss_kb": 76232,
- "speed_ratio": 1.0,
- "memory_ratio": 0.661841
+ "bun_rss_kb": 58576,
+ "speed_ratio": 1.2,
+ "memory_ratio": 0.245424
},
"12_binary_trees": {
"runtimes": {
"perry": {
"wall_ms": {
"samples": [
- 6,
- 6,
- 6,
- 6,
- 6
+ 34,
+ 12,
+ 13,
+ 13,
+ 12
],
"sample_count": 5,
- "median": 6,
- "p95": 6,
- "min": 6,
- "max": 6,
- "mad": 0,
- "stdev": 0
+ "median": 13,
+ "p95": 34,
+ "min": 12,
+ "max": 34,
+ "mad": 1,
+ "stdev": 8.61162
},
"rss_kb": {
"samples": [
- 21372,
- 21136,
- 21392,
- 21248,
- 21032
+ 6176,
+ 6176,
+ 6176,
+ 6192,
+ 6176
],
"sample_count": 5,
- "median": 21248,
- "p95": 21392,
- "min": 21032,
- "max": 21392,
- "mad": 124,
- "stdev": 137.544175
+ "median": 6176,
+ "p95": 6192,
+ "min": 6176,
+ "max": 6192,
+ "mad": 0,
+ "stdev": 6.4
}
},
"node": {
"wall_ms": {
"samples": [
- 5,
- 5,
- 4,
- 5,
- 4
+ 6,
+ 6,
+ 6,
+ 6,
+ 6
],
"sample_count": 5,
- "median": 5,
- "p95": 5,
- "min": 4,
- "max": 5,
+ "median": 6,
+ "p95": 6,
+ "min": 6,
+ "max": 6,
"mad": 0,
- "stdev": 0.489898
+ "stdev": 0
},
"rss_kb": {
"samples": [
- 67624,
- 68092,
- 67832,
- 68156,
- 67868
+ 71136,
+ 70976,
+ 70992,
+ 70944,
+ 71216
],
"sample_count": 5,
- "median": 67868,
- "p95": 68156,
- "min": 67624,
- "max": 68156,
- "mad": 224,
- "stdev": 191.409091
+ "median": 70992,
+ "p95": 71216,
+ "min": 70944,
+ "max": 71216,
+ "mad": 48,
+ "stdev": 104.870205
}
},
"bun": {
"wall_ms": {
"samples": [
- 8,
- 8,
- 9,
- 9,
- 9
+ 6,
+ 6,
+ 6,
+ 6,
+ 6
],
"sample_count": 5,
- "median": 9,
- "p95": 9,
- "min": 8,
- "max": 9,
+ "median": 6,
+ "p95": 6,
+ "min": 6,
+ "max": 6,
"mad": 0,
- "stdev": 0.489898
+ "stdev": 0
},
"rss_kb": {
"samples": [
- 58892,
- 58604,
- 58792,
- 59048,
- 59180
+ 51472,
+ 51440,
+ 51456,
+ 51456,
+ 51440
],
"sample_count": 5,
- "median": 58892,
- "p95": 59180,
- "min": 58604,
- "max": 59180,
- "mad": 156,
- "stdev": 199.798298
+ "median": 51456,
+ "p95": 51472,
+ "min": 51440,
+ "max": 51472,
+ "mad": 16,
+ "stdev": 11.973304
}
}
},
"ratios": {
"perry_to_node": {
- "wall_time": 1.2,
- "rss": 0.313078
+ "wall_time": 2.166667,
+ "rss": 0.086996
},
"perry_to_bun": {
- "wall_time": 0.666667,
- "rss": 0.360796
+ "wall_time": 2.166667,
+ "rss": 0.120025
}
},
"correctness": {
@@ -1612,49 +1612,49 @@
],
"reason": "all 5 Perry sample(s) matched node semantic output"
},
- "perry_ms": 6,
- "perry_rss_kb": 21248,
- "node_ms": 5,
- "node_rss_kb": 67868,
- "bun_ms": 9,
- "bun_rss_kb": 58892,
- "speed_ratio": 1.2,
- "memory_ratio": 0.313078
+ "perry_ms": 13,
+ "perry_rss_kb": 6176,
+ "node_ms": 6,
+ "node_rss_kb": 70992,
+ "bun_ms": 6,
+ "bun_rss_kb": 51456,
+ "speed_ratio": 2.166667,
+ "memory_ratio": 0.086996
},
"13_factorial": {
"runtimes": {
"perry": {
"wall_ms": {
"samples": [
- 59,
- 60,
- 58,
- 60,
- 58
+ 132,
+ 94,
+ 94,
+ 93,
+ 94
],
"sample_count": 5,
- "median": 59,
- "p95": 60,
- "min": 58,
- "max": 60,
- "mad": 1,
- "stdev": 0.894427
+ "median": 94,
+ "p95": 132,
+ "min": 93,
+ "max": 132,
+ "mad": 0,
+ "stdev": 15.304901
},
"rss_kb": {
"samples": [
- 16580,
- 16572,
- 16824,
- 16932,
- 16800
+ 4384,
+ 4384,
+ 4384,
+ 4384,
+ 4400
],
"sample_count": 5,
- "median": 16800,
- "p95": 16932,
- "min": 16572,
- "max": 16932,
- "mad": 132,
- "stdev": 142.359545
+ "median": 4384,
+ "p95": 4400,
+ "min": 4384,
+ "max": 4400,
+ "mad": 0,
+ "stdev": 6.4
}
},
"node": {
@@ -1664,76 +1664,76 @@
95,
95,
95,
- 94
+ 95
],
"sample_count": 5,
"median": 95,
"p95": 95,
- "min": 94,
+ "min": 95,
"max": 95,
"mad": 0,
- "stdev": 0.4
+ "stdev": 0
},
"rss_kb": {
"samples": [
- 66760,
- 66844,
- 66536,
- 66880,
- 66720
+ 69808,
+ 69808,
+ 69904,
+ 69760,
+ 69792
],
"sample_count": 5,
- "median": 66760,
- "p95": 66880,
- "min": 66536,
- "max": 66880,
- "mad": 84,
- "stdev": 120.425911
+ "median": 69808,
+ "p95": 69904,
+ "min": 69760,
+ "max": 69904,
+ "mad": 16,
+ "stdev": 48.106548
}
},
"bun": {
"wall_ms": {
"samples": [
- 61,
- 60,
- 60,
- 61,
- 61
+ 95,
+ 95,
+ 95,
+ 95,
+ 95
],
"sample_count": 5,
- "median": 61,
- "p95": 61,
- "min": 60,
- "max": 61,
+ "median": 95,
+ "p95": 95,
+ "min": 95,
+ "max": 95,
"mad": 0,
- "stdev": 0.489898
+ "stdev": 0
},
"rss_kb": {
"samples": [
- 40868,
- 40640,
- 40760,
- 40768,
- 40552
+ 31280,
+ 31312,
+ 31312,
+ 31280,
+ 31296
],
"sample_count": 5,
- "median": 40760,
- "p95": 40868,
- "min": 40552,
- "max": 40868,
- "mad": 108,
- "stdev": 109.911965
+ "median": 31296,
+ "p95": 31312,
+ "min": 31280,
+ "max": 31312,
+ "mad": 16,
+ "stdev": 14.310835
}
}
},
"ratios": {
"perry_to_node": {
- "wall_time": 0.621053,
- "rss": 0.251648
+ "wall_time": 0.989474,
+ "rss": 0.062801
},
"perry_to_bun": {
- "wall_time": 0.967213,
- "rss": 0.412169
+ "wall_time": 0.989474,
+ "rss": 0.140082
}
},
"correctness": {
@@ -1747,128 +1747,128 @@
],
"reason": "all 5 Perry sample(s) matched node semantic output"
},
- "perry_ms": 59,
- "perry_rss_kb": 16800,
+ "perry_ms": 94,
+ "perry_rss_kb": 4384,
"node_ms": 95,
- "node_rss_kb": 66760,
- "bun_ms": 61,
- "bun_rss_kb": 40760,
- "speed_ratio": 0.621053,
- "memory_ratio": 0.251648
+ "node_rss_kb": 69808,
+ "bun_ms": 95,
+ "bun_rss_kb": 31296,
+ "speed_ratio": 0.989474,
+ "memory_ratio": 0.062801
},
"14_closure": {
"runtimes": {
"perry": {
"wall_ms": {
"samples": [
- 29,
- 28,
- 28,
- 29,
- 30
+ 88,
+ 47,
+ 47,
+ 47,
+ 47
],
"sample_count": 5,
- "median": 29,
- "p95": 30,
- "min": 28,
- "max": 30,
- "mad": 1,
- "stdev": 0.748331
+ "median": 47,
+ "p95": 88,
+ "min": 47,
+ "max": 88,
+ "mad": 0,
+ "stdev": 16.4
},
"rss_kb": {
"samples": [
- 17168,
- 16988,
- 16904,
- 17180,
- 17068
+ 4432,
+ 4432,
+ 4432,
+ 4432,
+ 4432
],
"sample_count": 5,
- "median": 17068,
- "p95": 17180,
- "min": 16904,
- "max": 17180,
- "mad": 100,
- "stdev": 105.484786
+ "median": 4432,
+ "p95": 4432,
+ "min": 4432,
+ "max": 4432,
+ "mad": 0,
+ "stdev": 0
}
},
"node": {
"wall_ms": {
"samples": [
- 30,
- 30,
- 30,
- 30,
- 30
+ 49,
+ 48,
+ 49,
+ 49,
+ 48
],
"sample_count": 5,
- "median": 30,
- "p95": 30,
- "min": 30,
- "max": 30,
+ "median": 49,
+ "p95": 49,
+ "min": 48,
+ "max": 49,
"mad": 0,
- "stdev": 0
+ "stdev": 0.489898
},
"rss_kb": {
"samples": [
- 67512,
- 67512,
- 67448,
- 67400,
- 67304
+ 70896,
+ 70768,
+ 70832,
+ 70720,
+ 70752
],
"sample_count": 5,
- "median": 67448,
- "p95": 67512,
- "min": 67304,
- "max": 67512,
- "mad": 64,
- "stdev": 77.990769
+ "median": 70768,
+ "p95": 70896,
+ "min": 70720,
+ "max": 70896,
+ "mad": 48,
+ "stdev": 62.870025
}
},
"bun": {
"wall_ms": {
"samples": [
- 30,
- 29,
- 29,
- 30,
- 29
+ 49,
+ 49,
+ 49,
+ 49,
+ 49
],
"sample_count": 5,
- "median": 29,
- "p95": 30,
- "min": 29,
- "max": 30,
+ "median": 49,
+ "p95": 49,
+ "min": 49,
+ "max": 49,
"mad": 0,
- "stdev": 0.489898
+ "stdev": 0
},
"rss_kb": {
"samples": [
- 40240,
- 40616,
- 40324,
- 40296,
- 40304
+ 31232,
+ 31264,
+ 31248,
+ 31232,
+ 31232
],
"sample_count": 5,
- "median": 40304,
- "p95": 40616,
- "min": 40240,
- "max": 40616,
- "mad": 20,
- "stdev": 132.954127
+ "median": 31232,
+ "p95": 31264,
+ "min": 31232,
+ "max": 31264,
+ "mad": 0,
+ "stdev": 12.8
}
}
},
"ratios": {
"perry_to_node": {
- "wall_time": 0.966667,
- "rss": 0.253054
+ "wall_time": 0.959184,
+ "rss": 0.062627
},
"perry_to_bun": {
- "wall_time": 1.0,
- "rss": 0.423482
+ "wall_time": 0.959184,
+ "rss": 0.141906
}
},
"correctness": {
@@ -1882,128 +1882,128 @@
],
"reason": "all 5 Perry sample(s) matched node semantic output"
},
- "perry_ms": 29,
- "perry_rss_kb": 17068,
- "node_ms": 30,
- "node_rss_kb": 67448,
- "bun_ms": 29,
- "bun_rss_kb": 40304,
- "speed_ratio": 0.966667,
- "memory_ratio": 0.253054
+ "perry_ms": 47,
+ "perry_rss_kb": 4432,
+ "node_ms": 49,
+ "node_rss_kb": 70768,
+ "bun_ms": 49,
+ "bun_rss_kb": 31232,
+ "speed_ratio": 0.959184,
+ "memory_ratio": 0.062627
},
"15_mandelbrot": {
"runtimes": {
"perry": {
"wall_ms": {
"samples": [
- 15,
- 15,
- 14,
- 15,
- 14
+ 62,
+ 25,
+ 25,
+ 25,
+ 25
],
"sample_count": 5,
- "median": 15,
- "p95": 15,
- "min": 14,
- "max": 15,
+ "median": 25,
+ "p95": 62,
+ "min": 25,
+ "max": 62,
"mad": 0,
- "stdev": 0.489898
+ "stdev": 14.8
},
"rss_kb": {
"samples": [
- 17040,
- 16556,
- 16944,
- 16876,
- 16932
+ 4368,
+ 4368,
+ 4368,
+ 4368,
+ 4384
],
"sample_count": 5,
- "median": 16932,
- "p95": 17040,
- "min": 16556,
- "max": 17040,
- "mad": 56,
- "stdev": 165.439536
+ "median": 4368,
+ "p95": 4384,
+ "min": 4368,
+ "max": 4384,
+ "mad": 0,
+ "stdev": 6.4
}
},
"node": {
"wall_ms": {
"samples": [
- 17,
- 17,
- 17,
- 16,
- 17
+ 25,
+ 24,
+ 24,
+ 24,
+ 24
],
"sample_count": 5,
- "median": 17,
- "p95": 17,
- "min": 16,
- "max": 17,
+ "median": 24,
+ "p95": 25,
+ "min": 24,
+ "max": 25,
"mad": 0,
"stdev": 0.4
},
"rss_kb": {
"samples": [
- 67452,
- 67376,
- 67352,
- 67324,
- 67268
+ 70608,
+ 70544,
+ 70512,
+ 70576,
+ 70640
],
"sample_count": 5,
- "median": 67352,
- "p95": 67452,
- "min": 67268,
- "max": 67452,
- "mad": 28,
- "stdev": 60.6419
+ "median": 70576,
+ "p95": 70640,
+ "min": 70512,
+ "max": 70640,
+ "mad": 32,
+ "stdev": 45.254834
}
},
"bun": {
"wall_ms": {
"samples": [
- 16,
- 15,
- 16,
- 15,
- 16
+ 29,
+ 28,
+ 29,
+ 29,
+ 29
],
"sample_count": 5,
- "median": 16,
- "p95": 16,
- "min": 15,
- "max": 16,
+ "median": 29,
+ "p95": 29,
+ "min": 28,
+ "max": 29,
"mad": 0,
- "stdev": 0.489898
+ "stdev": 0.4
},
"rss_kb": {
"samples": [
- 40832,
- 40572,
- 40896,
- 40600,
- 40680
+ 31408,
+ 31424,
+ 31440,
+ 31424,
+ 31440
],
"sample_count": 5,
- "median": 40680,
- "p95": 40896,
- "min": 40572,
- "max": 40896,
- "mad": 108,
- "stdev": 127.549206
+ "median": 31424,
+ "p95": 31440,
+ "min": 31408,
+ "max": 31440,
+ "mad": 16,
+ "stdev": 11.973304
}
}
},
"ratios": {
"perry_to_node": {
- "wall_time": 0.882353,
- "rss": 0.251396
+ "wall_time": 1.041667,
+ "rss": 0.061891
},
"perry_to_bun": {
- "wall_time": 0.9375,
- "rss": 0.416224
+ "wall_time": 0.862069,
+ "rss": 0.139002
}
},
"correctness": {
@@ -2017,128 +2017,128 @@
],
"reason": "all 5 Perry sample(s) matched node semantic output"
},
- "perry_ms": 15,
- "perry_rss_kb": 16932,
- "node_ms": 17,
- "node_rss_kb": 67352,
- "bun_ms": 16,
- "bun_rss_kb": 40680,
- "speed_ratio": 0.882353,
- "memory_ratio": 0.251396
+ "perry_ms": 25,
+ "perry_rss_kb": 4368,
+ "node_ms": 24,
+ "node_rss_kb": 70576,
+ "bun_ms": 29,
+ "bun_rss_kb": 31424,
+ "speed_ratio": 1.041667,
+ "memory_ratio": 0.061891
},
"16_matrix_multiply": {
"runtimes": {
"perry": {
"wall_ms": {
"samples": [
- 22,
- 23,
- 23,
- 21,
- 21
+ 55,
+ 18,
+ 18,
+ 18,
+ 19
],
"sample_count": 5,
- "median": 22,
- "p95": 23,
- "min": 21,
- "max": 23,
- "mad": 1,
- "stdev": 0.894427
+ "median": 18,
+ "p95": 55,
+ "min": 18,
+ "max": 55,
+ "mad": 0,
+ "stdev": 14.705101
},
"rss_kb": {
"samples": [
- 31876,
- 31820,
- 31784,
- 31868,
- 31852
+ 9840,
+ 9856,
+ 9856,
+ 9856,
+ 9840
],
"sample_count": 5,
- "median": 31852,
- "p95": 31876,
- "min": 31784,
- "max": 31876,
- "mad": 24,
- "stdev": 33.941125
+ "median": 9856,
+ "p95": 9856,
+ "min": 9840,
+ "max": 9856,
+ "mad": 0,
+ "stdev": 7.838367
}
},
"node": {
"wall_ms": {
"samples": [
- 24,
- 24,
- 24,
- 24,
- 23
+ 32,
+ 33,
+ 32,
+ 33,
+ 32
],
"sample_count": 5,
- "median": 24,
- "p95": 24,
- "min": 23,
- "max": 24,
+ "median": 32,
+ "p95": 33,
+ "min": 32,
+ "max": 33,
"mad": 0,
- "stdev": 0.4
+ "stdev": 0.489898
},
"rss_kb": {
"samples": [
- 71912,
- 72052,
- 71700,
- 72052,
- 72100
+ 74800,
+ 74656,
+ 74912,
+ 74896,
+ 74752
],
"sample_count": 5,
- "median": 72052,
- "p95": 72100,
- "min": 71700,
- "max": 72100,
- "mad": 48,
- "stdev": 145.863498
+ "median": 74800,
+ "p95": 74912,
+ "min": 74656,
+ "max": 74912,
+ "mad": 96,
+ "stdev": 94.603171
}
},
"bun": {
"wall_ms": {
"samples": [
- 22,
- 22,
- 22,
- 22,
- 22
+ 33,
+ 34,
+ 33,
+ 33,
+ 33
],
"sample_count": 5,
- "median": 22,
- "p95": 22,
- "min": 22,
- "max": 22,
+ "median": 33,
+ "p95": 34,
+ "min": 33,
+ "max": 34,
"mad": 0,
- "stdev": 0
+ "stdev": 0.4
},
"rss_kb": {
"samples": [
- 47088,
- 46904,
- 47044,
- 47020,
- 46992
+ 37872,
+ 37840,
+ 37856,
+ 37872,
+ 37872
],
"sample_count": 5,
- "median": 47020,
- "p95": 47088,
- "min": 46904,
- "max": 47088,
- "mad": 28,
- "stdev": 61.480403
+ "median": 37872,
+ "p95": 37872,
+ "min": 37840,
+ "max": 37872,
+ "mad": 0,
+ "stdev": 12.8
}
}
},
"ratios": {
"perry_to_node": {
- "wall_time": 0.916667,
- "rss": 0.44207
+ "wall_time": 0.5625,
+ "rss": 0.131765
},
"perry_to_bun": {
- "wall_time": 1.0,
- "rss": 0.677414
+ "wall_time": 0.545455,
+ "rss": 0.260245
}
},
"correctness": {
@@ -2152,59 +2152,59 @@
],
"reason": "all 5 Perry sample(s) matched node semantic output"
},
- "perry_ms": 22,
- "perry_rss_kb": 31852,
- "node_ms": 24,
- "node_rss_kb": 72052,
- "bun_ms": 22,
- "bun_rss_kb": 47020,
- "speed_ratio": 0.916667,
- "memory_ratio": 0.44207
+ "perry_ms": 18,
+ "perry_rss_kb": 9856,
+ "node_ms": 32,
+ "node_rss_kb": 74800,
+ "bun_ms": 33,
+ "bun_rss_kb": 37872,
+ "speed_ratio": 0.5625,
+ "memory_ratio": 0.131765
},
"bench_gc_pressure": {
"runtimes": {
"perry": {
"wall_ms": {
"samples": [
- 12,
- 12,
+ 45,
13,
- 12,
- 12
+ 13,
+ 13,
+ 13
],
"sample_count": 5,
- "median": 12,
- "p95": 13,
- "min": 12,
- "max": 13,
+ "median": 13,
+ "p95": 45,
+ "min": 13,
+ "max": 45,
"mad": 0,
- "stdev": 0.4
+ "stdev": 12.8
},
"rss_kb": {
"samples": [
- 40064,
- 39784,
- 39924,
- 39868,
- 39924
+ 17936,
+ 17952,
+ 17936,
+ 17952,
+ 17952
],
"sample_count": 5,
- "median": 39924,
- "p95": 40064,
- "min": 39784,
- "max": 40064,
- "mad": 56,
- "stdev": 91.333236
+ "median": 17952,
+ "p95": 17952,
+ "min": 17936,
+ "max": 17952,
+ "mad": 0,
+ "stdev": 7.838367
}
},
"node": {
"wall_ms": {
"samples": [
15,
+ 16,
15,
15,
- 16,
- 15
+ 16
],
"sample_count": 5,
"median": 15,
@@ -2212,68 +2212,68 @@
"min": 15,
"max": 16,
"mad": 0,
- "stdev": 0.4
+ "stdev": 0.489898
},
"rss_kb": {
"samples": [
- 74660,
- 74484,
- 74380,
- 74680,
- 74736
+ 77712,
+ 77680,
+ 77888,
+ 77712,
+ 77680
],
"sample_count": 5,
- "median": 74660,
- "p95": 74736,
- "min": 74380,
- "max": 74736,
- "mad": 76,
- "stdev": 133.889507
+ "median": 77712,
+ "p95": 77888,
+ "min": 77680,
+ "max": 77888,
+ "mad": 32,
+ "stdev": 78.121956
}
},
"bun": {
"wall_ms": {
"samples": [
- 28,
- 29,
- 29,
- 28,
- 28
+ 19,
+ 20,
+ 19,
+ 20,
+ 20
],
"sample_count": 5,
- "median": 28,
- "p95": 29,
- "min": 28,
- "max": 29,
+ "median": 20,
+ "p95": 20,
+ "min": 19,
+ "max": 20,
"mad": 0,
"stdev": 0.489898
},
"rss_kb": {
"samples": [
- 86652,
- 86560,
- 86816,
- 86728,
- 86640
+ 77568,
+ 77632,
+ 77552,
+ 77584,
+ 77568
],
"sample_count": 5,
- "median": 86652,
- "p95": 86816,
- "min": 86560,
- "max": 86816,
- "mad": 76,
- "stdev": 86.69579
+ "median": 77568,
+ "p95": 77632,
+ "min": 77552,
+ "max": 77632,
+ "mad": 16,
+ "stdev": 27.527441
}
}
},
"ratios": {
"perry_to_node": {
- "wall_time": 0.8,
- "rss": 0.534744
+ "wall_time": 0.866667,
+ "rss": 0.231007
},
"perry_to_bun": {
- "wall_time": 0.428571,
- "rss": 0.46074
+ "wall_time": 0.65,
+ "rss": 0.231436
}
},
"correctness": {
@@ -2287,128 +2287,128 @@
],
"reason": "all 5 Perry sample(s) matched node semantic output"
},
- "perry_ms": 12,
- "perry_rss_kb": 39924,
+ "perry_ms": 13,
+ "perry_rss_kb": 17952,
"node_ms": 15,
- "node_rss_kb": 74660,
- "bun_ms": 28,
- "bun_rss_kb": 86652,
- "speed_ratio": 0.8,
- "memory_ratio": 0.534744
+ "node_rss_kb": 77712,
+ "bun_ms": 20,
+ "bun_rss_kb": 77568,
+ "speed_ratio": 0.866667,
+ "memory_ratio": 0.231007
},
"bench_json_roundtrip": {
"runtimes": {
"perry": {
"wall_ms": {
"samples": [
- 184,
- 185,
- 185,
- 184,
- 184
+ 156,
+ 142,
+ 142,
+ 143,
+ 142
],
"sample_count": 5,
- "median": 184,
- "p95": 185,
- "min": 184,
- "max": 185,
+ "median": 142,
+ "p95": 156,
+ "min": 142,
+ "max": 156,
"mad": 0,
- "stdev": 0.489898
+ "stdev": 5.51362
},
"rss_kb": {
"samples": [
- 121624,
- 121604,
- 121740,
- 121620,
- 121744
+ 96624,
+ 96144,
+ 96608,
+ 96128,
+ 96144
],
"sample_count": 5,
- "median": 121624,
- "p95": 121744,
- "min": 121604,
- "max": 121744,
- "mad": 20,
- "stdev": 62.101852
+ "median": 96144,
+ "p95": 96624,
+ "min": 96128,
+ "max": 96624,
+ "mad": 16,
+ "stdev": 233.972306
}
},
"node": {
"wall_ms": {
"samples": [
- 378,
- 394,
- 380,
- 378,
- 381
+ 383,
+ 387,
+ 386,
+ 391,
+ 387
],
"sample_count": 5,
- "median": 380,
- "p95": 394,
- "min": 378,
- "max": 394,
- "mad": 2,
- "stdev": 6.013319
+ "median": 387,
+ "p95": 391,
+ "min": 383,
+ "max": 391,
+ "mad": 1,
+ "stdev": 2.56125
},
"rss_kb": {
"samples": [
- 116492,
- 116256,
- 117152,
- 117424,
- 116364
+ 121920,
+ 121840,
+ 121872,
+ 121888,
+ 121872
],
"sample_count": 5,
- "median": 116492,
- "p95": 117424,
- "min": 116256,
- "max": 117424,
- "mad": 236,
- "stdev": 463.617774
+ "median": 121872,
+ "p95": 121920,
+ "min": 121840,
+ "max": 121920,
+ "mad": 16,
+ "stdev": 25.996923
}
},
"bun": {
"wall_ms": {
"samples": [
- 186,
- 186,
- 184,
- 185,
- 183
+ 220,
+ 219,
+ 219,
+ 220,
+ 220
],
"sample_count": 5,
- "median": 185,
- "p95": 186,
- "min": 183,
- "max": 186,
- "mad": 1,
- "stdev": 1.16619
+ "median": 220,
+ "p95": 220,
+ "min": 219,
+ "max": 220,
+ "mad": 0,
+ "stdev": 0.489898
},
"rss_kb": {
"samples": [
- 90752,
- 90920,
- 94180,
- 94336,
- 90500
+ 85504,
+ 83296,
+ 82304,
+ 85488,
+ 85552
],
"sample_count": 5,
- "median": 90920,
- "p95": 94336,
- "min": 90500,
- "max": 94336,
- "mad": 420,
- "stdev": 1737.154639
+ "median": 85488,
+ "p95": 85552,
+ "min": 82304,
+ "max": 85552,
+ "mad": 64,
+ "stdev": 1366.568608
}
}
},
"ratios": {
"perry_to_node": {
- "wall_time": 0.484211,
- "rss": 1.044055
+ "wall_time": 0.366925,
+ "rss": 0.788893
},
"perry_to_bun": {
- "wall_time": 0.994595,
- "rss": 1.337703
+ "wall_time": 0.645455,
+ "rss": 1.124649
}
},
"correctness": {
@@ -2422,128 +2422,128 @@
],
"reason": "all 5 Perry sample(s) matched node semantic output"
},
- "perry_ms": 184,
- "perry_rss_kb": 121624,
- "node_ms": 380,
- "node_rss_kb": 116492,
- "bun_ms": 185,
- "bun_rss_kb": 90920,
- "speed_ratio": 0.484211,
- "memory_ratio": 1.044055
+ "perry_ms": 142,
+ "perry_rss_kb": 96144,
+ "node_ms": 387,
+ "node_rss_kb": 121872,
+ "bun_ms": 220,
+ "bun_rss_kb": 85488,
+ "speed_ratio": 0.366925,
+ "memory_ratio": 0.788893
},
"bench_object_property": {
"runtimes": {
"perry": {
"wall_ms": {
"samples": [
- 25,
- 25,
- 26,
28,
- 26
+ 8,
+ 9,
+ 8,
+ 9
],
"sample_count": 5,
- "median": 26,
+ "median": 9,
"p95": 28,
- "min": 25,
+ "min": 8,
"max": 28,
"mad": 1,
- "stdev": 1.095445
+ "stdev": 7.81281
},
"rss_kb": {
"samples": [
- 57112,
- 57232,
- 57028,
- 56752,
- 56968
+ 16992,
+ 16976,
+ 16992,
+ 16992,
+ 16976
],
"sample_count": 5,
- "median": 57028,
- "p95": 57232,
- "min": 56752,
- "max": 57232,
- "mad": 84,
- "stdev": 159.992
+ "median": 16992,
+ "p95": 16992,
+ "min": 16976,
+ "max": 16992,
+ "mad": 0,
+ "stdev": 7.838367
}
},
"node": {
"wall_ms": {
"samples": [
- 13,
+ 16,
+ 16,
15,
- 12,
- 14,
- 13
+ 16,
+ 16
],
"sample_count": 5,
- "median": 13,
- "p95": 15,
- "min": 12,
- "max": 15,
- "mad": 1,
- "stdev": 1.019804
+ "median": 16,
+ "p95": 16,
+ "min": 15,
+ "max": 16,
+ "mad": 0,
+ "stdev": 0.4
},
"rss_kb": {
"samples": [
- 67180,
- 67360,
- 67120,
- 67276,
- 67280
+ 70640,
+ 70704,
+ 70656,
+ 70656,
+ 70592
],
"sample_count": 5,
- "median": 67276,
- "p95": 67360,
- "min": 67120,
- "max": 67360,
- "mad": 84,
- "stdev": 83.958085
+ "median": 70656,
+ "p95": 70704,
+ "min": 70592,
+ "max": 70704,
+ "mad": 16,
+ "stdev": 35.919911
}
},
"bun": {
"wall_ms": {
"samples": [
- 17,
- 17,
- 17,
- 17,
- 17
+ 10,
+ 6,
+ 16,
+ 16,
+ 9
],
"sample_count": 5,
- "median": 17,
- "p95": 17,
- "min": 17,
- "max": 17,
- "mad": 0,
- "stdev": 0
+ "median": 10,
+ "p95": 16,
+ "min": 6,
+ "max": 16,
+ "mad": 4,
+ "stdev": 3.97995
},
"rss_kb": {
"samples": [
- 55436,
- 55576,
- 55324,
- 55512,
- 55168
+ 37296,
+ 33136,
+ 46032,
+ 46000,
+ 37120
],
"sample_count": 5,
- "median": 55436,
- "p95": 55576,
- "min": 55168,
- "max": 55576,
- "mad": 112,
- "stdev": 144.474773
+ "median": 37296,
+ "p95": 46032,
+ "min": 33136,
+ "max": 46032,
+ "mad": 4160,
+ "stdev": 5197.517192
}
}
},
"ratios": {
"perry_to_node": {
- "wall_time": 2.0,
- "rss": 0.847672
+ "wall_time": 0.5625,
+ "rss": 0.240489
},
"perry_to_bun": {
- "wall_time": 1.529412,
- "rss": 1.028718
+ "wall_time": 0.9,
+ "rss": 0.455598
}
},
"correctness": {
@@ -2557,128 +2557,128 @@
],
"reason": "all 5 Perry sample(s) matched node semantic output"
},
- "perry_ms": 26,
- "perry_rss_kb": 57028,
- "node_ms": 13,
- "node_rss_kb": 67276,
- "bun_ms": 17,
- "bun_rss_kb": 55436,
- "speed_ratio": 2.0,
- "memory_ratio": 0.847672
+ "perry_ms": 9,
+ "perry_rss_kb": 16992,
+ "node_ms": 16,
+ "node_rss_kb": 70656,
+ "bun_ms": 10,
+ "bun_rss_kb": 37296,
+ "speed_ratio": 0.5625,
+ "memory_ratio": 0.240489
},
"bench_int_arithmetic": {
"runtimes": {
"perry": {
"wall_ms": {
"samples": [
- 37,
- 37,
- 37,
- 36,
- 36
+ 94,
+ 52,
+ 52,
+ 52,
+ 53
],
"sample_count": 5,
- "median": 37,
- "p95": 37,
- "min": 36,
- "max": 37,
+ "median": 52,
+ "p95": 94,
+ "min": 52,
+ "max": 94,
"mad": 0,
- "stdev": 0.489898
+ "stdev": 16.70449
},
"rss_kb": {
"samples": [
- 19092,
- 18944,
- 18732,
- 19164,
- 19168
+ 4800,
+ 4800,
+ 4800,
+ 4800,
+ 4800
],
"sample_count": 5,
- "median": 19092,
- "p95": 19168,
- "min": 18732,
- "max": 19168,
- "mad": 76,
- "stdev": 165.253744
+ "median": 4800,
+ "p95": 4800,
+ "min": 4800,
+ "max": 4800,
+ "mad": 0,
+ "stdev": 0
}
},
"node": {
"wall_ms": {
"samples": [
- 77,
- 78,
- 77,
- 78,
- 77
+ 93,
+ 93,
+ 94,
+ 94,
+ 93
],
"sample_count": 5,
- "median": 77,
- "p95": 78,
- "min": 77,
- "max": 78,
+ "median": 93,
+ "p95": 94,
+ "min": 93,
+ "max": 94,
"mad": 0,
"stdev": 0.489898
},
"rss_kb": {
"samples": [
- 67168,
- 67252,
- 67152,
- 66964,
- 67296
- ],
- "sample_count": 5,
- "median": 67168,
- "p95": 67296,
- "min": 66964,
- "max": 67296,
- "mad": 84,
- "stdev": 114.279657
+ 69184,
+ 69152,
+ 69136,
+ 69024,
+ 69120
+ ],
+ "sample_count": 5,
+ "median": 69136,
+ "p95": 69184,
+ "min": 69024,
+ "max": 69184,
+ "mad": 16,
+ "stdev": 53.927359
}
},
- "bun": {
- "wall_ms": {
- "samples": [
- 36,
- 36,
- 36,
- 36,
- 36
+ "bun": {
+ "wall_ms": {
+ "samples": [
+ 38,
+ 38,
+ 38,
+ 38,
+ 38
],
"sample_count": 5,
- "median": 36,
- "p95": 36,
- "min": 36,
- "max": 36,
+ "median": 38,
+ "p95": 38,
+ "min": 38,
+ "max": 38,
"mad": 0,
"stdev": 0
},
"rss_kb": {
"samples": [
- 45032,
- 44844,
- 44968,
- 44856,
- 45096
+ 35984,
+ 35984,
+ 35968,
+ 36016,
+ 36000
],
"sample_count": 5,
- "median": 44968,
- "p95": 45096,
- "min": 44844,
- "max": 45096,
- "mad": 112,
- "stdev": 97.992653
+ "median": 35984,
+ "p95": 36016,
+ "min": 35968,
+ "max": 36016,
+ "mad": 16,
+ "stdev": 16.316862
}
}
},
"ratios": {
"perry_to_node": {
- "wall_time": 0.480519,
- "rss": 0.284242
+ "wall_time": 0.55914,
+ "rss": 0.069428
},
"perry_to_bun": {
- "wall_time": 1.027778,
- "rss": 0.424569
+ "wall_time": 1.368421,
+ "rss": 0.133393
}
},
"correctness": {
@@ -2692,128 +2692,128 @@
],
"reason": "all 5 Perry sample(s) matched node semantic output"
},
- "perry_ms": 37,
- "perry_rss_kb": 19092,
- "node_ms": 77,
- "node_rss_kb": 67168,
- "bun_ms": 36,
- "bun_rss_kb": 44968,
- "speed_ratio": 0.480519,
- "memory_ratio": 0.284242
+ "perry_ms": 52,
+ "perry_rss_kb": 4800,
+ "node_ms": 93,
+ "node_rss_kb": 69136,
+ "bun_ms": 38,
+ "bun_rss_kb": 35984,
+ "speed_ratio": 0.55914,
+ "memory_ratio": 0.069428
},
"bench_buffer_readwrite": {
"runtimes": {
"perry": {
"wall_ms": {
"samples": [
- 79,
- 78,
- 79,
- 80,
- 80
+ 75,
+ 32,
+ 32,
+ 32,
+ 32
],
"sample_count": 5,
- "median": 79,
- "p95": 80,
- "min": 78,
- "max": 80,
- "mad": 1,
- "stdev": 0.748331
+ "median": 32,
+ "p95": 75,
+ "min": 32,
+ "max": 75,
+ "mad": 0,
+ "stdev": 17.2
},
"rss_kb": {
"samples": [
- 18916,
- 18936,
- 19192,
- 18880,
- 19116
+ 5680,
+ 5680,
+ 5680,
+ 5680,
+ 5680
],
"sample_count": 5,
- "median": 18936,
- "p95": 19192,
- "min": 18880,
- "max": 19192,
- "mad": 56,
- "stdev": 122.924367
+ "median": 5680,
+ "p95": 5680,
+ "min": 5680,
+ "max": 5680,
+ "mad": 0,
+ "stdev": 0
}
},
"node": {
"wall_ms": {
"samples": [
- 59,
- 61,
- 60,
- 60,
- 61
+ 97,
+ 97,
+ 96,
+ 96,
+ 97
],
"sample_count": 5,
- "median": 60,
- "p95": 61,
- "min": 59,
- "max": 61,
- "mad": 1,
- "stdev": 0.748331
+ "median": 97,
+ "p95": 97,
+ "min": 96,
+ "max": 97,
+ "mad": 0,
+ "stdev": 0.489898
},
"rss_kb": {
"samples": [
- 67700,
- 67172,
- 67304,
- 67356,
- 67176
+ 69040,
+ 68896,
+ 68960,
+ 68960,
+ 68992
],
"sample_count": 5,
- "median": 67304,
- "p95": 67700,
- "min": 67172,
- "max": 67700,
- "mad": 128,
- "stdev": 193.007357
+ "median": 68960,
+ "p95": 69040,
+ "min": 68896,
+ "max": 69040,
+ "mad": 32,
+ "stdev": 47.030203
}
},
"bun": {
"wall_ms": {
"samples": [
- 150,
- 151,
- 76,
- 72,
- 72
+ 193,
+ 193,
+ 193,
+ 193,
+ 192
],
"sample_count": 5,
- "median": 76,
- "p95": 151,
- "min": 72,
- "max": 151,
- "mad": 4,
- "stdev": 37.833319
+ "median": 193,
+ "p95": 193,
+ "min": 192,
+ "max": 193,
+ "mad": 0,
+ "stdev": 0.4
},
"rss_kb": {
"samples": [
- 43304,
- 43532,
- 43296,
- 43052,
- 43644
+ 34240,
+ 34208,
+ 34208,
+ 34208,
+ 34208
],
"sample_count": 5,
- "median": 43304,
- "p95": 43644,
- "min": 43052,
- "max": 43644,
- "mad": 228,
- "stdev": 205.999612
+ "median": 34208,
+ "p95": 34240,
+ "min": 34208,
+ "max": 34240,
+ "mad": 0,
+ "stdev": 12.8
}
}
},
"ratios": {
"perry_to_node": {
- "wall_time": 1.316667,
- "rss": 0.28135
+ "wall_time": 0.329897,
+ "rss": 0.082367
},
"perry_to_bun": {
- "wall_time": 1.039474,
- "rss": 0.437281
+ "wall_time": 0.165803,
+ "rss": 0.166043
}
},
"correctness": {
@@ -2827,128 +2827,128 @@
],
"reason": "all 5 Perry sample(s) matched node semantic output"
},
- "perry_ms": 79,
- "perry_rss_kb": 18936,
- "node_ms": 60,
- "node_rss_kb": 67304,
- "bun_ms": 76,
- "bun_rss_kb": 43304,
- "speed_ratio": 1.316667,
- "memory_ratio": 0.28135
+ "perry_ms": 32,
+ "perry_rss_kb": 5680,
+ "node_ms": 97,
+ "node_rss_kb": 68960,
+ "bun_ms": 193,
+ "bun_rss_kb": 34208,
+ "speed_ratio": 0.329897,
+ "memory_ratio": 0.082367
},
"bench_array_grow": {
"runtimes": {
"perry": {
"wall_ms": {
"samples": [
+ 19,
8,
- 7,
8,
8,
- 9
+ 10
],
"sample_count": 5,
"median": 8,
- "p95": 9,
- "min": 7,
- "max": 9,
+ "p95": 19,
+ "min": 8,
+ "max": 19,
"mad": 0,
- "stdev": 0.632456
+ "stdev": 4.270831
},
"rss_kb": {
"samples": [
- 79200,
- 79240,
- 79124,
- 79620,
- 79020
+ 45376,
+ 45376,
+ 45360,
+ 45376,
+ 45376
],
"sample_count": 5,
- "median": 79200,
- "p95": 79620,
- "min": 79020,
- "max": 79620,
- "mad": 76,
- "stdev": 203.888597
+ "median": 45376,
+ "p95": 45376,
+ "min": 45360,
+ "max": 45376,
+ "mad": 0,
+ "stdev": 6.4
}
},
"node": {
"wall_ms": {
"samples": [
- 29,
- 28,
- 28,
- 28,
- 29
+ 13,
+ 14,
+ 13,
+ 14,
+ 13
],
"sample_count": 5,
- "median": 28,
- "p95": 29,
- "min": 28,
- "max": 29,
+ "median": 13,
+ "p95": 14,
+ "min": 13,
+ "max": 14,
"mad": 0,
"stdev": 0.489898
},
"rss_kb": {
"samples": [
- 128484,
- 128376,
- 128144,
- 128336,
- 128212
+ 132912,
+ 132688,
+ 132816,
+ 132880,
+ 132960
],
"sample_count": 5,
- "median": 128336,
- "p95": 128484,
- "min": 128144,
- "max": 128484,
- "mad": 124,
- "stdev": 120.388704
+ "median": 132880,
+ "p95": 132960,
+ "min": 132688,
+ "max": 132960,
+ "mad": 64,
+ "stdev": 94.060406
}
},
"bun": {
"wall_ms": {
"samples": [
- 19,
- 16,
- 21,
- 19,
- 19
+ 9,
+ 9,
+ 9,
+ 9,
+ 9
],
"sample_count": 5,
- "median": 19,
- "p95": 21,
- "min": 16,
- "max": 21,
+ "median": 9,
+ "p95": 9,
+ "min": 9,
+ "max": 9,
"mad": 0,
- "stdev": 1.6
+ "stdev": 0
},
"rss_kb": {
"samples": [
- 93464,
- 79744,
- 93308,
- 93328,
- 93600
+ 75696,
+ 66864,
+ 66864,
+ 70832,
+ 75712
],
"sample_count": 5,
- "median": 93328,
- "p95": 93600,
- "min": 79744,
- "max": 93600,
- "mad": 136,
- "stdev": 5473.409409
+ "median": 70832,
+ "p95": 75712,
+ "min": 66864,
+ "max": 75712,
+ "mad": 3968,
+ "stdev": 3957.503536
}
}
},
"ratios": {
"perry_to_node": {
- "wall_time": 0.285714,
- "rss": 0.61713
+ "wall_time": 0.615385,
+ "rss": 0.341481
},
"perry_to_bun": {
- "wall_time": 0.421053,
- "rss": 0.84862
+ "wall_time": 0.888889,
+ "rss": 0.640614
}
},
"correctness": {
@@ -2965,127 +2965,127 @@
"reason": "all 5 Perry sample(s) matched node semantic output"
},
"perry_ms": 8,
- "perry_rss_kb": 79200,
- "node_ms": 28,
- "node_rss_kb": 128336,
- "bun_ms": 19,
- "bun_rss_kb": 93328,
- "speed_ratio": 0.285714,
- "memory_ratio": 0.61713
+ "perry_rss_kb": 45376,
+ "node_ms": 13,
+ "node_rss_kb": 132880,
+ "bun_ms": 9,
+ "bun_rss_kb": 70832,
+ "speed_ratio": 0.615385,
+ "memory_ratio": 0.341481
},
"bench_string_heavy": {
"runtimes": {
"perry": {
"wall_ms": {
"samples": [
- 32,
- 32,
- 32,
- 32,
- 32
+ 80,
+ 35,
+ 36,
+ 36,
+ 36
],
"sample_count": 5,
- "median": 32,
- "p95": 32,
- "min": 32,
- "max": 32,
+ "median": 36,
+ "p95": 80,
+ "min": 35,
+ "max": 80,
"mad": 0,
- "stdev": 0
+ "stdev": 17.704237
},
"rss_kb": {
"samples": [
- 47908,
- 48020,
- 47688,
- 47820,
- 48044
+ 26208,
+ 26224,
+ 26224,
+ 26208,
+ 26208
],
"sample_count": 5,
- "median": 47908,
- "p95": 48044,
- "min": 47688,
- "max": 48044,
- "mad": 112,
- "stdev": 131.502091
+ "median": 26208,
+ "p95": 26224,
+ "min": 26208,
+ "max": 26224,
+ "mad": 0,
+ "stdev": 7.838367
}
},
"node": {
"wall_ms": {
"samples": [
- 37,
- 37,
- 37,
- 35,
- 36
+ 42,
+ 42,
+ 41,
+ 42,
+ 42
],
"sample_count": 5,
- "median": 37,
- "p95": 37,
- "min": 35,
- "max": 37,
+ "median": 42,
+ "p95": 42,
+ "min": 41,
+ "max": 42,
"mad": 0,
- "stdev": 0.8
+ "stdev": 0.4
},
"rss_kb": {
"samples": [
- 63828,
- 64008,
- 63872,
- 64040,
- 63900
+ 68448,
+ 68464,
+ 68528,
+ 68720,
+ 68560
],
"sample_count": 5,
- "median": 63900,
- "p95": 64040,
- "min": 63828,
- "max": 64040,
- "mad": 72,
- "stdev": 81.057017
+ "median": 68528,
+ "p95": 68720,
+ "min": 68448,
+ "max": 68720,
+ "mad": 64,
+ "stdev": 97.060806
}
},
"bun": {
"wall_ms": {
"samples": [
- 30,
- 31,
- 31,
- 31,
- 30
+ 28,
+ 28,
+ 29,
+ 28,
+ 29
],
"sample_count": 5,
- "median": 31,
- "p95": 31,
- "min": 30,
- "max": 31,
+ "median": 28,
+ "p95": 29,
+ "min": 28,
+ "max": 29,
"mad": 0,
"stdev": 0.489898
},
"rss_kb": {
"samples": [
- 71092,
- 70932,
- 70940,
- 70916,
- 70892
+ 62432,
+ 62416,
+ 62448,
+ 62464,
+ 62464
],
"sample_count": 5,
- "median": 70932,
- "p95": 71092,
- "min": 70892,
- "max": 71092,
+ "median": 62448,
+ "p95": 62464,
+ "min": 62416,
+ "max": 62464,
"mad": 16,
- "stdev": 70.726516
+ "stdev": 18.659046
}
}
},
"ratios": {
"perry_to_node": {
- "wall_time": 0.864865,
- "rss": 0.749734
+ "wall_time": 0.857143,
+ "rss": 0.382442
},
"perry_to_bun": {
- "wall_time": 1.032258,
- "rss": 0.675407
+ "wall_time": 1.285714,
+ "rss": 0.419677
}
},
"correctness": {
@@ -3099,128 +3099,128 @@
],
"reason": "all 5 Perry sample(s) matched node semantic output"
},
- "perry_ms": 32,
- "perry_rss_kb": 47908,
- "node_ms": 37,
- "node_rss_kb": 63900,
- "bun_ms": 31,
- "bun_rss_kb": 70932,
- "speed_ratio": 0.864865,
- "memory_ratio": 0.749734
+ "perry_ms": 36,
+ "perry_rss_kb": 26208,
+ "node_ms": 42,
+ "node_rss_kb": 68528,
+ "bun_ms": 28,
+ "bun_rss_kb": 62448,
+ "speed_ratio": 0.857143,
+ "memory_ratio": 0.382442
},
"bench_numeric_array_numeric": {
"runtimes": {
"perry": {
"wall_ms": {
"samples": [
- 4,
- 4,
- 4,
- 4,
- 4
+ 10,
+ 7,
+ 7,
+ 6,
+ 6
],
"sample_count": 5,
- "median": 4,
- "p95": 4,
- "min": 4,
- "max": 4,
- "mad": 0,
- "stdev": 0
+ "median": 7,
+ "p95": 10,
+ "min": 6,
+ "max": 10,
+ "mad": 1,
+ "stdev": 1.469694
},
"rss_kb": {
"samples": [
- 54404,
- 54100,
- 54352,
- 54348,
- 54360
+ 24816,
+ 24800,
+ 24816,
+ 24816,
+ 24800
],
"sample_count": 5,
- "median": 54352,
- "p95": 54404,
- "min": 54100,
- "max": 54404,
- "mad": 8,
- "stdev": 108.263383
+ "median": 24816,
+ "p95": 24816,
+ "min": 24800,
+ "max": 24816,
+ "mad": 0,
+ "stdev": 7.838367
}
},
"node": {
"wall_ms": {
"samples": [
5,
- 6,
5,
5,
- 6
+ 5,
+ 5
],
"sample_count": 5,
"median": 5,
- "p95": 6,
+ "p95": 5,
"min": 5,
- "max": 6,
+ "max": 5,
"mad": 0,
- "stdev": 0.489898
+ "stdev": 0
},
"rss_kb": {
"samples": [
- 85788,
- 85572,
- 85724,
- 85372,
- 85564
+ 89552,
+ 89296,
+ 89216,
+ 89216,
+ 89280
],
"sample_count": 5,
- "median": 85572,
- "p95": 85788,
- "min": 85372,
- "max": 85788,
- "mad": 152,
- "stdev": 144.709364
+ "median": 89280,
+ "p95": 89552,
+ "min": 89216,
+ "max": 89552,
+ "mad": 64,
+ "stdev": 124.347899
}
},
"bun": {
"wall_ms": {
"samples": [
- 3,
4,
- 3,
- 3,
- 3
+ 4,
+ 4,
+ 4,
+ 4
],
"sample_count": 5,
- "median": 3,
+ "median": 4,
"p95": 4,
- "min": 3,
+ "min": 4,
"max": 4,
"mad": 0,
- "stdev": 0.4
+ "stdev": 0
},
"rss_kb": {
"samples": [
- 55680,
- 55040,
- 55160,
- 55208,
- 55596
+ 46544,
+ 46544,
+ 46544,
+ 46560,
+ 46576
],
"sample_count": 5,
- "median": 55208,
- "p95": 55680,
- "min": 55040,
- "max": 55680,
- "mad": 168,
- "stdev": 253.341193
+ "median": 46544,
+ "p95": 46576,
+ "min": 46544,
+ "max": 46576,
+ "mad": 0,
+ "stdev": 12.8
}
}
},
"ratios": {
"perry_to_node": {
- "wall_time": 0.8,
- "rss": 0.635161
+ "wall_time": 1.4,
+ "rss": 0.277957
},
"perry_to_bun": {
- "wall_time": 1.333333,
- "rss": 0.984495
+ "wall_time": 1.75,
+ "rss": 0.533173
}
},
"correctness": {
@@ -3234,55 +3234,55 @@
],
"reason": "all 5 Perry sample(s) matched node semantic output"
},
- "perry_ms": 4,
- "perry_rss_kb": 54352,
+ "perry_ms": 7,
+ "perry_rss_kb": 24816,
"node_ms": 5,
- "node_rss_kb": 85572,
- "bun_ms": 3,
- "bun_rss_kb": 55208,
- "speed_ratio": 0.8,
- "memory_ratio": 0.635161
+ "node_rss_kb": 89280,
+ "bun_ms": 4,
+ "bun_rss_kb": 46544,
+ "speed_ratio": 1.4,
+ "memory_ratio": 0.277957
},
"bench_numeric_array_downgrade": {
"runtimes": {
"perry": {
"wall_ms": {
"samples": [
+ 7,
+ 3,
+ 3,
4,
- 5,
- 4,
- 5,
4
],
"sample_count": 5,
"median": 4,
- "p95": 5,
- "min": 4,
- "max": 5,
- "mad": 0,
- "stdev": 0.489898
+ "p95": 7,
+ "min": 3,
+ "max": 7,
+ "mad": 1,
+ "stdev": 1.469694
},
"rss_kb": {
"samples": [
- 54756,
- 54884,
- 54784,
- 54760,
- 54400
+ 25392,
+ 25376,
+ 25392,
+ 25376,
+ 25392
],
"sample_count": 5,
- "median": 54760,
- "p95": 54884,
- "min": 54400,
- "max": 54884,
- "mad": 24,
- "stdev": 165.067744
+ "median": 25392,
+ "p95": 25392,
+ "min": 25376,
+ "max": 25392,
+ "mad": 0,
+ "stdev": 7.838367
}
},
"node": {
"wall_ms": {
"samples": [
- 5,
+ 6,
6,
6,
6,
@@ -3291,26 +3291,26 @@
"sample_count": 5,
"median": 6,
"p95": 6,
- "min": 5,
+ "min": 6,
"max": 6,
"mad": 0,
- "stdev": 0.4
+ "stdev": 0
},
"rss_kb": {
"samples": [
- 86244,
- 86304,
- 86348,
- 86404,
- 86364
+ 89472,
+ 89424,
+ 89376,
+ 89376,
+ 89360
],
"sample_count": 5,
- "median": 86348,
- "p95": 86404,
- "min": 86244,
- "max": 86404,
- "mad": 44,
- "stdev": 54.751804
+ "median": 89376,
+ "p95": 89472,
+ "min": 89360,
+ "max": 89472,
+ "mad": 16,
+ "stdev": 41.229116
}
},
"bun": {
@@ -3318,44 +3318,44 @@
"samples": [
5,
5,
+ 6,
5,
- 5,
- 4
+ 6
],
"sample_count": 5,
"median": 5,
- "p95": 5,
- "min": 4,
- "max": 5,
+ "p95": 6,
+ "min": 5,
+ "max": 6,
"mad": 0,
- "stdev": 0.4
+ "stdev": 0.489898
},
"rss_kb": {
"samples": [
- 56444,
- 56180,
- 56416,
- 56424,
- 56316
+ 47760,
+ 47984,
+ 47968,
+ 47984,
+ 47952
],
"sample_count": 5,
- "median": 56416,
- "p95": 56444,
- "min": 56180,
- "max": 56444,
- "mad": 28,
- "stdev": 98.533243
+ "median": 47968,
+ "p95": 47984,
+ "min": 47760,
+ "max": 47984,
+ "mad": 16,
+ "stdev": 85.626164
}
}
},
"ratios": {
"perry_to_node": {
"wall_time": 0.666667,
- "rss": 0.634178
+ "rss": 0.284103
},
"perry_to_bun": {
"wall_time": 0.8,
- "rss": 0.970647
+ "rss": 0.529353
}
},
"correctness": {
@@ -3370,25 +3370,25 @@
"reason": "all 5 Perry sample(s) matched node semantic output"
},
"perry_ms": 4,
- "perry_rss_kb": 54760,
+ "perry_rss_kb": 25392,
"node_ms": 6,
- "node_rss_kb": 86348,
+ "node_rss_kb": 89376,
"bun_ms": 5,
- "bun_rss_kb": 56416,
+ "bun_rss_kb": 47968,
"speed_ratio": 0.666667,
- "memory_ratio": 0.634178
+ "memory_ratio": 0.284103
}
}
},
"polyglot": {
"schema_version": 1,
"suite": "polyglot",
- "commit": "827a92bad5a589e94e1630994185693ada903fe2",
- "generated_at": "2026-09-01T13:54:18Z",
+ "commit": "689b1ffbab1b9cc1825ce69d6cf7cbe50fabb168",
+ "generated_at": "2026-09-22T15:13:15Z",
"run_config": {
"warmup": "none beyond benchmark-specific setup",
"requested_samples": 11,
- "pinning": "Linux strict (taskset -c 0)"
+ "pinning": "macOS scheduler hint (taskpolicy -t 0 -l 0 \u2014 P-core preferred via throughput/latency tiers, NOT strict affinity)"
},
"commands": {
"perry": [
@@ -3399,11 +3399,11 @@
""
],
"node": [
- "/root/.cache/perry-bench-tools/node-v22.23.1-linux-x64/bin/node",
+ "/Users/perry/public-baseline-toolchains/node-v22.23.1-darwin-arm64/bin/node",
""
],
"bun": [
- "/root/.cache/perry-bench-tools/bun-1.3.14/bun",
+ "/Users/perry/.bun/bin/bun",
"run",
""
],
@@ -3414,16 +3414,16 @@
},
"runtime_metadata": {
"perry": {
- "version": "perry 0.5.1519",
+ "version": "perry 0.5.1636",
"resolved_executable": "target/release/perry"
},
"node": {
"version": "v22.23.1",
- "resolved_executable": "~/.cache/perry-bench-tools/node-v22.23.1-linux-x64/bin/node"
+ "resolved_executable": "~/public-baseline-toolchains/node-v22.23.1-darwin-arm64/bin/node"
},
"bun": {
"version": "1.3.14",
- "resolved_executable": "~/.cache/perry-bench-tools/bun-1.3.14/bun"
+ "resolved_executable": "~/.bun/bin/bun"
}
},
"benchmarks": {
@@ -3437,107 +3437,188 @@
"perry": {
"wall_ms": {
"samples": [
- 57.0,
- 57.0,
- 57.0,
- 58.0,
- 57.0,
- 58.0,
- 58.0,
- 59.0,
- 58.0,
- 62.0,
- 58.0
+ 137.0,
+ 93.0,
+ 94.0,
+ 94.0,
+ 93.0,
+ 94.0,
+ 94.0,
+ 94.0,
+ 94.0,
+ 94.0,
+ 94.0
],
"sample_count": 11,
- "median": 58.0,
- "p95": 62.0,
- "min": 57.0,
- "max": 62.0,
- "stdev": 1.378704626191191
+ "median": 94.0,
+ "p95": 137.0,
+ "min": 93.0,
+ "max": 137.0,
+ "stdev": 12.424981500559918
},
"output_sha256": "45e7000362b678343915ceae0bbf34e9c236096552f86ca83f6cb91d6b0b5c67"
},
"node": {
"wall_ms": {
"samples": [
- 168.0,
- 172.0,
- 164.0,
- 162.0,
- 165.0,
- 157.0,
- 159.0,
- 131.0,
- 166.0,
- 101.0,
- 101.0
+ 95.0,
+ 94.0,
+ 94.0,
+ 95.0,
+ 95.0,
+ 95.0,
+ 94.0,
+ 95.0,
+ 94.0,
+ 95.0,
+ 95.0
+ ],
+ "sample_count": 11,
+ "median": 95.0,
+ "p95": 95.0,
+ "min": 94.0,
+ "max": 95.0,
+ "stdev": 0.48104569292083466
+ },
+ "output_sha256": "45e7000362b678343915ceae0bbf34e9c236096552f86ca83f6cb91d6b0b5c67"
+ },
+ "bun": {
+ "wall_ms": {
+ "samples": [
+ 95.0,
+ 94.0,
+ 95.0,
+ 95.0,
+ 95.0,
+ 95.0,
+ 95.0,
+ 95.0,
+ 94.0,
+ 94.0,
+ 95.0
+ ],
+ "sample_count": 11,
+ "median": 95.0,
+ "p95": 95.0,
+ "min": 94.0,
+ "max": 95.0,
+ "stdev": 0.4453617714151233
+ },
+ "output_sha256": "45e7000362b678343915ceae0bbf34e9c236096552f86ca83f6cb91d6b0b5c67"
+ }
+ }
+ },
+ "array_read": {
+ "correctness": {
+ "status": "pass",
+ "reference": "node+bun",
+ "output_sha256": "9a59b9a771dcc3170ca6608099bc1dbe482831939679e81ae72f7bf4bd249674"
+ },
+ "runtimes": {
+ "perry": {
+ "wall_ms": {
+ "samples": [
+ 24.0,
+ 10.0,
+ 10.0,
+ 10.0,
+ 9.0,
+ 9.0,
+ 9.0,
+ 9.0,
+ 10.0,
+ 9.0,
+ 9.0
+ ],
+ "sample_count": 11,
+ "median": 9.0,
+ "p95": 24.0,
+ "min": 9.0,
+ "max": 24.0,
+ "stdev": 4.223116236122522
+ },
+ "output_sha256": "9a59b9a771dcc3170ca6608099bc1dbe482831939679e81ae72f7bf4bd249674"
+ },
+ "node": {
+ "wall_ms": {
+ "samples": [
+ 10.0,
+ 11.0,
+ 11.0,
+ 11.0,
+ 10.0,
+ 11.0,
+ 11.0,
+ 11.0,
+ 10.0,
+ 11.0,
+ 11.0
],
"sample_count": 11,
- "median": 162.0,
- "p95": 172.0,
- "min": 101.0,
- "max": 172.0,
- "stdev": 25.082673220128843
+ "median": 11.0,
+ "p95": 11.0,
+ "min": 10.0,
+ "max": 11.0,
+ "stdev": 0.4453617714151233
},
- "output_sha256": "45e7000362b678343915ceae0bbf34e9c236096552f86ca83f6cb91d6b0b5c67"
+ "output_sha256": "9a59b9a771dcc3170ca6608099bc1dbe482831939679e81ae72f7bf4bd249674"
},
"bun": {
"wall_ms": {
"samples": [
- 72.0,
- 72.0,
- 69.0,
- 72.0,
- 76.0,
- 72.0,
- 70.0,
- 72.0,
- 73.0,
- 71.0,
- 72.0
+ 13.0,
+ 13.0,
+ 13.0,
+ 13.0,
+ 14.0,
+ 14.0,
+ 13.0,
+ 14.0,
+ 13.0,
+ 14.0,
+ 13.0
],
"sample_count": 11,
- "median": 72.0,
- "p95": 76.0,
- "min": 69.0,
- "max": 76.0,
- "stdev": 1.6762808104168887
+ "median": 13.0,
+ "p95": 14.0,
+ "min": 13.0,
+ "max": 14.0,
+ "stdev": 0.48104569292083466
},
- "output_sha256": "45e7000362b678343915ceae0bbf34e9c236096552f86ca83f6cb91d6b0b5c67"
+ "output_sha256": "9a59b9a771dcc3170ca6608099bc1dbe482831939679e81ae72f7bf4bd249674"
}
}
},
- "array_read": {
+ "array_write": {
"correctness": {
"status": "pass",
"reference": "node+bun",
- "output_sha256": "9a59b9a771dcc3170ca6608099bc1dbe482831939679e81ae72f7bf4bd249674"
+ "output_sha256": "a76ae1255a79f86acf51281a91633021374b072ef8c7fc75e6f1adf69e1e9ed4"
},
"runtimes": {
"perry": {
"wall_ms": {
"samples": [
- 6.0,
- 5.0,
- 6.0,
- 6.0,
- 5.0,
- 5.0,
- 6.0,
- 6.0,
- 6.0,
- 5.0,
- 6.0
+ 3.0,
+ 2.0,
+ 1.0,
+ 1.0,
+ 1.0,
+ 1.0,
+ 1.0,
+ 2.0,
+ 1.0,
+ 1.0,
+ 1.0
],
"sample_count": 11,
- "median": 6.0,
- "p95": 6.0,
- "min": 5.0,
- "max": 6.0,
- "stdev": 0.48104569292083466
+ "median": 1.0,
+ "p95": 3.0,
+ "min": 1.0,
+ "max": 3.0,
+ "stdev": 0.6428243465332251
},
- "output_sha256": "9a59b9a771dcc3170ca6608099bc1dbe482831939679e81ae72f7bf4bd249674"
+ "output_sha256": "a76ae1255a79f86acf51281a91633021374b072ef8c7fc75e6f1adf69e1e9ed4"
},
"node": {
"wall_ms": {
@@ -3550,85 +3631,28 @@
7.0,
7.0,
7.0,
- 8.0,
- 8.0,
+ 7.0,
+ 7.0,
7.0
],
"sample_count": 11,
"median": 7.0,
- "p95": 8.0,
+ "p95": 7.0,
"min": 7.0,
- "max": 8.0,
- "stdev": 0.38569460791993504
- },
- "output_sha256": "9a59b9a771dcc3170ca6608099bc1dbe482831939679e81ae72f7bf4bd249674"
- },
- "bun": {
- "wall_ms": {
- "samples": [
- 16.0,
- 17.0,
- 17.0,
- 17.0,
- 16.0,
- 18.0,
- 17.0,
- 17.0,
- 18.0,
- 16.0,
- 18.0
- ],
- "sample_count": 11,
- "median": 17.0,
- "p95": 18.0,
- "min": 16.0,
- "max": 18.0,
- "stdev": 0.7385489458759964
- },
- "output_sha256": "9a59b9a771dcc3170ca6608099bc1dbe482831939679e81ae72f7bf4bd249674"
- }
- }
- },
- "array_write": {
- "correctness": {
- "status": "pass",
- "reference": "node+bun",
- "output_sha256": "a76ae1255a79f86acf51281a91633021374b072ef8c7fc75e6f1adf69e1e9ed4"
- },
- "runtimes": {
- "perry": {
- "wall_ms": {
- "samples": [
- 3.0,
- 3.0,
- 4.0,
- 4.0,
- 3.0,
- 4.0,
- 4.0,
- 3.0,
- 3.0,
- 4.0,
- 4.0
- ],
- "sample_count": 11,
- "median": 4.0,
- "p95": 4.0,
- "min": 3.0,
- "max": 4.0,
- "stdev": 0.4979295977319692
+ "max": 7.0,
+ "stdev": 0.0
},
"output_sha256": "a76ae1255a79f86acf51281a91633021374b072ef8c7fc75e6f1adf69e1e9ed4"
},
- "node": {
+ "bun": {
"wall_ms": {
"samples": [
- 4.0,
5.0,
- 4.0,
5.0,
- 4.0,
- 4.0,
+ 5.0,
+ 5.0,
+ 5.0,
+ 5.0,
5.0,
5.0,
5.0,
@@ -3638,33 +3662,9 @@
"sample_count": 11,
"median": 5.0,
"p95": 5.0,
- "min": 4.0,
+ "min": 5.0,
"max": 5.0,
- "stdev": 0.48104569292083466
- },
- "output_sha256": "a76ae1255a79f86acf51281a91633021374b072ef8c7fc75e6f1adf69e1e9ed4"
- },
- "bun": {
- "wall_ms": {
- "samples": [
- 9.0,
- 9.0,
- 11.0,
- 9.0,
- 10.0,
- 9.0,
- 9.0,
- 10.0,
- 9.0,
- 11.0,
- 10.0
- ],
- "sample_count": 11,
- "median": 9.0,
- "p95": 11.0,
- "min": 9.0,
- "max": 11.0,
- "stdev": 0.7713892158398701
+ "stdev": 0.0
},
"output_sha256": "a76ae1255a79f86acf51281a91633021374b072ef8c7fc75e6f1adf69e1e9ed4"
}
@@ -3680,72 +3680,72 @@
"perry": {
"wall_ms": {
"samples": [
- 322.0,
- 323.0,
- 323.0,
- 323.0,
- 323.0,
- 325.0,
- 323.0,
- 322.0,
- 322.0,
- 323.0,
- 322.0
+ 382.0,
+ 339.0,
+ 338.0,
+ 338.0,
+ 338.0,
+ 337.0,
+ 337.0,
+ 338.0,
+ 337.0,
+ 337.0,
+ 338.0
],
"sample_count": 11,
- "median": 323.0,
- "p95": 325.0,
- "min": 322.0,
- "max": 325.0,
- "stdev": 0.8331955809010618
+ "median": 338.0,
+ "p95": 382.0,
+ "min": 337.0,
+ "max": 382.0,
+ "stdev": 12.74997974394761
},
"output_sha256": "834774a30aeb60ab0f0a8dac4482efb07689d7b249da0942aa1260a78a3fa77d"
},
"node": {
"wall_ms": {
"samples": [
- 708.0,
- 709.0,
- 708.0,
- 713.0,
- 709.0,
- 709.0,
- 709.0,
- 708.0,
- 707.0,
- 707.0,
- 706.0
+ 923.0,
+ 912.0,
+ 912.0,
+ 912.0,
+ 912.0,
+ 912.0,
+ 912.0,
+ 911.0,
+ 912.0,
+ 912.0,
+ 912.0
],
"sample_count": 11,
- "median": 708.0,
- "p95": 713.0,
- "min": 706.0,
- "max": 713.0,
- "stdev": 1.7248787237282068
+ "median": 912.0,
+ "p95": 923.0,
+ "min": 911.0,
+ "max": 923.0,
+ "stdev": 3.203820033946563
},
"output_sha256": "834774a30aeb60ab0f0a8dac4482efb07689d7b249da0942aa1260a78a3fa77d"
},
"bun": {
"wall_ms": {
"samples": [
- 676.0,
- 685.0,
- 694.0,
- 549.0,
- 466.0,
- 442.0,
- 458.0,
- 464.0,
- 469.0,
- 477.0,
- 440.0
+ 513.0,
+ 504.0,
+ 505.0,
+ 499.0,
+ 503.0,
+ 504.0,
+ 500.0,
+ 504.0,
+ 500.0,
+ 504.0,
+ 505.0
],
"sample_count": 11,
- "median": 469.0,
- "p95": 694.0,
- "min": 440.0,
- "max": 694.0,
- "stdev": 99.36109952679446
+ "median": 504.0,
+ "p95": 513.0,
+ "min": 499.0,
+ "max": 513.0,
+ "stdev": 3.5698461665585204
},
"output_sha256": "834774a30aeb60ab0f0a8dac4482efb07689d7b249da0942aa1260a78a3fa77d"
}
@@ -3761,72 +3761,72 @@
"perry": {
"wall_ms": {
"samples": [
- 112.0,
- 111.0,
- 112.0,
- 112.0,
- 112.0,
- 112.0,
- 112.0,
- 112.0,
- 112.0,
- 112.0,
- 112.0
+ 261.0,
+ 219.0,
+ 219.0,
+ 219.0,
+ 219.0,
+ 218.0,
+ 219.0,
+ 219.0,
+ 219.0,
+ 218.0,
+ 219.0
],
"sample_count": 11,
- "median": 112.0,
- "p95": 112.0,
- "min": 111.0,
- "max": 112.0,
- "stdev": 0.28747978728803447
+ "median": 219.0,
+ "p95": 261.0,
+ "min": 218.0,
+ "max": 261.0,
+ "stdev": 12.137640382281342
},
"output_sha256": "6cb3a76d1ca7915e12bb42333de96a572ad2f85a93f3d7bb6c2148d08be2bb2d"
},
"node": {
"wall_ms": {
"samples": [
- 116.0,
- 116.0,
- 116.0,
- 115.0,
- 115.0,
- 115.0,
- 115.0,
- 116.0,
- 115.0,
- 115.0,
- 115.0
+ 222.0,
+ 221.0,
+ 221.0,
+ 221.0,
+ 221.0,
+ 221.0,
+ 221.0,
+ 221.0,
+ 221.0,
+ 221.0,
+ 221.0
],
"sample_count": 11,
- "median": 115.0,
- "p95": 116.0,
- "min": 115.0,
- "max": 116.0,
- "stdev": 0.48104569292083466
+ "median": 221.0,
+ "p95": 222.0,
+ "min": 221.0,
+ "max": 222.0,
+ "stdev": 0.28747978728803447
},
"output_sha256": "6cb3a76d1ca7915e12bb42333de96a572ad2f85a93f3d7bb6c2148d08be2bb2d"
},
"bun": {
"wall_ms": {
"samples": [
- 125.0,
- 124.0,
- 124.0,
- 124.0,
- 127.0,
- 125.0,
- 124.0,
- 125.0,
- 123.0,
- 122.0,
- 122.0
+ 221.0,
+ 221.0,
+ 221.0,
+ 221.0,
+ 220.0,
+ 220.0,
+ 221.0,
+ 221.0,
+ 221.0,
+ 221.0,
+ 221.0
],
"sample_count": 11,
- "median": 124.0,
- "p95": 127.0,
- "min": 122.0,
- "max": 127.0,
- "stdev": 1.378704626191191
+ "median": 221.0,
+ "p95": 221.0,
+ "min": 220.0,
+ "max": 221.0,
+ "stdev": 0.38569460791993504
},
"output_sha256": "6cb3a76d1ca7915e12bb42333de96a572ad2f85a93f3d7bb6c2148d08be2bb2d"
}
@@ -3842,72 +3842,72 @@
"perry": {
"wall_ms": {
"samples": [
- 74.0,
- 74.0,
- 74.0,
- 74.0,
- 74.0,
- 74.0,
- 75.0,
- 75.0,
- 74.0,
- 74.0,
- 75.0
+ 166.0,
+ 125.0,
+ 125.0,
+ 125.0,
+ 125.0,
+ 125.0,
+ 125.0,
+ 125.0,
+ 125.0,
+ 125.0,
+ 125.0
],
"sample_count": 11,
- "median": 74.0,
- "p95": 75.0,
- "min": 74.0,
- "max": 75.0,
- "stdev": 0.4453617714151233
+ "median": 125.0,
+ "p95": 166.0,
+ "min": 125.0,
+ "max": 166.0,
+ "stdev": 11.786671278809413
},
"output_sha256": "bbdf35a7b000c5e4255d4405e5c3ea7a863991e0ae764edbdcdb3809dc331b65"
},
"node": {
"wall_ms": {
"samples": [
- 79.0,
- 77.0,
- 76.0,
- 76.0,
- 77.0,
- 76.0,
- 76.0,
- 76.0,
- 76.0,
- 77.0,
- 76.0
+ 127.0,
+ 126.0,
+ 126.0,
+ 126.0,
+ 126.0,
+ 126.0,
+ 127.0,
+ 127.0,
+ 126.0,
+ 126.0,
+ 127.0
],
"sample_count": 11,
- "median": 76.0,
- "p95": 79.0,
- "min": 76.0,
- "max": 79.0,
- "stdev": 0.8907235428302466
+ "median": 126.0,
+ "p95": 127.0,
+ "min": 126.0,
+ "max": 127.0,
+ "stdev": 0.48104569292083466
},
"output_sha256": "bbdf35a7b000c5e4255d4405e5c3ea7a863991e0ae764edbdcdb3809dc331b65"
},
"bun": {
"wall_ms": {
"samples": [
- 84.0,
- 83.0,
- 83.0,
- 81.0,
- 83.0,
- 81.0,
- 81.0,
- 84.0,
- 81.0,
- 81.0,
- 83.0
+ 126.0,
+ 126.0,
+ 126.0,
+ 126.0,
+ 126.0,
+ 126.0,
+ 126.0,
+ 125.0,
+ 126.0,
+ 126.0,
+ 126.0
],
"sample_count": 11,
- "median": 83.0,
- "p95": 84.0,
- "min": 81.0,
- "max": 84.0,
- "stdev": 1.2128785512842122
+ "median": 126.0,
+ "p95": 126.0,
+ "min": 125.0,
+ "max": 126.0,
+ "stdev": 0.28747978728803447
},
"output_sha256": "bbdf35a7b000c5e4255d4405e5c3ea7a863991e0ae764edbdcdb3809dc331b65"
}
@@ -3923,72 +3923,72 @@
"perry": {
"wall_ms": {
"samples": [
- 51.0,
- 54.0,
- 55.0,
- 55.0,
- 53.0,
- 53.0,
- 50.0,
- 45.0,
- 44.0,
- 44.0,
- 51.0
+ 90.0,
+ 48.0,
+ 48.0,
+ 47.0,
+ 47.0,
+ 48.0,
+ 48.0,
+ 48.0,
+ 47.0,
+ 48.0,
+ 48.0
],
"sample_count": 11,
- "median": 51.0,
- "p95": 55.0,
- "min": 44.0,
- "max": 55.0,
- "stdev": 4.053363056292355
+ "median": 48.0,
+ "p95": 90.0,
+ "min": 47.0,
+ "max": 90.0,
+ "stdev": 12.16824209581973
},
"output_sha256": "02dbcc45c8e22eb2287af9c9106f65c992f093273c79f14f5fa49a4fc7ef0289"
},
"node": {
"wall_ms": {
"samples": [
- 43.0,
- 44.0,
- 44.0,
- 44.0,
- 45.0,
- 44.0,
- 45.0,
- 44.0,
- 45.0,
- 44.0,
- 45.0
+ 49.0,
+ 49.0,
+ 48.0,
+ 49.0,
+ 49.0,
+ 49.0,
+ 49.0,
+ 49.0,
+ 48.0,
+ 48.0,
+ 49.0
],
"sample_count": 11,
- "median": 44.0,
- "p95": 45.0,
- "min": 43.0,
- "max": 45.0,
- "stdev": 0.616575453011388
+ "median": 49.0,
+ "p95": 49.0,
+ "min": 48.0,
+ "max": 49.0,
+ "stdev": 0.4453617714151233
},
"output_sha256": "02dbcc45c8e22eb2287af9c9106f65c992f093273c79f14f5fa49a4fc7ef0289"
},
"bun": {
"wall_ms": {
"samples": [
- 54.0,
- 55.0,
- 52.0,
- 55.0,
- 56.0,
- 56.0,
- 55.0,
- 53.0,
- 56.0,
- 54.0,
- 53.0
+ 49.0,
+ 49.0,
+ 49.0,
+ 49.0,
+ 48.0,
+ 48.0,
+ 49.0,
+ 49.0,
+ 49.0,
+ 49.0,
+ 49.0
],
"sample_count": 11,
- "median": 55.0,
- "p95": 56.0,
- "min": 52.0,
- "max": 56.0,
- "stdev": 1.3047909176733932
+ "median": 49.0,
+ "p95": 49.0,
+ "min": 48.0,
+ "max": 49.0,
+ "stdev": 0.38569460791993504
},
"output_sha256": "02dbcc45c8e22eb2287af9c9106f65c992f093273c79f14f5fa49a4fc7ef0289"
}
@@ -4004,72 +4004,72 @@
"perry": {
"wall_ms": {
"samples": [
- 26.0,
- 26.0,
- 25.0,
- 25.0,
- 26.0,
- 25.0,
- 26.0,
- 26.0,
- 26.0,
- 25.0,
- 26.0
+ 43.0,
+ 20.0,
+ 17.0,
+ 17.0,
+ 17.0,
+ 17.0,
+ 17.0,
+ 17.0,
+ 17.0,
+ 17.0,
+ 17.0
],
"sample_count": 11,
- "median": 26.0,
- "p95": 26.0,
- "min": 25.0,
- "max": 26.0,
- "stdev": 0.48104569292083466
+ "median": 17.0,
+ "p95": 43.0,
+ "min": 17.0,
+ "max": 43.0,
+ "stdev": 7.437897152393731
},
"output_sha256": "8e77f4e216b88148ae91a1b1fafd99b59948aa3d0a447313af68e39a25cc21e2"
},
"node": {
"wall_ms": {
"samples": [
- 13.0,
- 14.0,
- 15.0,
- 15.0,
18.0,
- 15.0,
- 17.0,
- 14.0,
- 14.0,
- 15.0,
- 14.0
+ 18.0,
+ 18.0,
+ 18.0,
+ 18.0,
+ 18.0,
+ 18.0,
+ 18.0,
+ 18.0,
+ 18.0,
+ 18.0
],
"sample_count": 11,
- "median": 15.0,
+ "median": 18.0,
"p95": 18.0,
- "min": 13.0,
+ "min": 18.0,
"max": 18.0,
- "stdev": 1.378704626191191
+ "stdev": 0.0
},
"output_sha256": "8e77f4e216b88148ae91a1b1fafd99b59948aa3d0a447313af68e39a25cc21e2"
},
"bun": {
"wall_ms": {
"samples": [
- 27.0,
- 26.0,
- 27.0,
- 24.0,
- 26.0,
- 22.0,
- 26.0,
- 22.0,
- 22.0,
- 25.0,
- 26.0
+ 19.0,
+ 19.0,
+ 18.0,
+ 18.0,
+ 19.0,
+ 19.0,
+ 19.0,
+ 19.0,
+ 19.0,
+ 19.0,
+ 18.0
],
"sample_count": 11,
- "median": 26.0,
- "p95": 27.0,
- "min": 22.0,
- "max": 27.0,
- "stdev": 1.8982375470746455
+ "median": 19.0,
+ "p95": 19.0,
+ "min": 18.0,
+ "max": 19.0,
+ "stdev": 0.4453617714151233
},
"output_sha256": "8e77f4e216b88148ae91a1b1fafd99b59948aa3d0a447313af68e39a25cc21e2"
}
@@ -4085,24 +4085,24 @@
"perry": {
"wall_ms": {
"samples": [
- 4.0,
- 4.0,
- 4.0,
- 4.0,
- 4.0,
- 4.0,
- 4.0,
- 3.0,
- 3.0,
- 3.0,
- 4.0
+ 20.0,
+ 12.0,
+ 8.0,
+ 8.0,
+ 8.0,
+ 8.0,
+ 8.0,
+ 8.0,
+ 8.0,
+ 9.0,
+ 9.0
],
"sample_count": 11,
- "median": 4.0,
- "p95": 4.0,
- "min": 3.0,
- "max": 4.0,
- "stdev": 0.4453617714151233
+ "median": 8.0,
+ "p95": 20.0,
+ "min": 8.0,
+ "max": 20.0,
+ "stdev": 3.471251471279415
},
"output_sha256": "e70c38907b55a22165abecab6fbc7e4901cc69e6aeee9fb0c32635455ec55134"
},
@@ -4112,45 +4112,45 @@
5.0,
5.0,
5.0,
- 7.0,
- 8.0,
- 8.0,
- 7.0,
5.0,
- 7.0,
- 7.0,
- 8.0
+ 5.0,
+ 5.0,
+ 5.0,
+ 5.0,
+ 5.0,
+ 5.0,
+ 5.0
],
"sample_count": 11,
- "median": 7.0,
- "p95": 8.0,
+ "median": 5.0,
+ "p95": 5.0,
"min": 5.0,
- "max": 8.0,
- "stdev": 1.233150906022776
+ "max": 5.0,
+ "stdev": 0.0
},
"output_sha256": "e70c38907b55a22165abecab6fbc7e4901cc69e6aeee9fb0c32635455ec55134"
},
"bun": {
"wall_ms": {
"samples": [
- 17.0,
- 20.0,
- 20.0,
- 20.0,
- 20.0,
- 20.0,
- 21.0,
- 20.0,
- 15.0,
- 20.0,
- 20.0
+ 6.0,
+ 5.0,
+ 5.0,
+ 5.0,
+ 5.0,
+ 5.0,
+ 5.0,
+ 5.0,
+ 5.0,
+ 5.0,
+ 5.0
],
"sample_count": 11,
- "median": 20.0,
- "p95": 21.0,
- "min": 15.0,
- "max": 21.0,
- "stdev": 1.6663911618021237
+ "median": 5.0,
+ "p95": 6.0,
+ "min": 5.0,
+ "max": 6.0,
+ "stdev": 0.28747978728803447
},
"output_sha256": "e70c38907b55a22165abecab6fbc7e4901cc69e6aeee9fb0c32635455ec55134"
}
@@ -4161,27 +4161,27 @@
"json_polyglot": {
"schema_version": 1,
"suite": "json_polyglot",
- "commit": "827a92bad5a589e94e1630994185693ada903fe2",
- "generated_at": "2026-09-01T13:56:31Z",
+ "commit": "689b1ffbab1b9cc1825ce69d6cf7cbe50fabb168",
+ "generated_at": "2026-09-22T15:18:08Z",
"run_config": {
"warmup": "3 untimed iterations inside each benchmark process",
"requested_samples": 11,
- "pinning": "Linux strict (taskset -c 0)"
+ "pinning": "macOS scheduler hint (taskpolicy -t 0 -l 0 \u2014 P-core preferred via throughput/latency tiers, NOT strict affinity)"
},
"commands": {
"perry": [
- "/root/perry-issue-9338-public-827a92b/target/release/perry",
+ "/Users/perry/projects/perry-public-baseline-20260922-astra/target/release/perry",
"compile",
"bench.ts",
"-o",
""
],
"node": [
- "/root/.cache/perry-bench-tools/node-v22.23.1-linux-x64/bin/node",
+ "/Users/perry/public-baseline-toolchains/node-v22.23.1-darwin-arm64/bin/node",
""
],
"bun": [
- "/root/.cache/perry-bench-tools/bun-1.3.14/bun",
+ "/Users/perry/.bun/bin/bun",
"bench.ts"
],
"runner": [
@@ -4190,16 +4190,16 @@
},
"runtime_metadata": {
"perry": {
- "version": "perry 0.5.1519",
+ "version": "perry 0.5.1636",
"resolved_executable": "target/release/perry"
},
"node": {
"version": "v22.23.1",
- "resolved_executable": "~/.cache/perry-bench-tools/node-v22.23.1-linux-x64/bin/node"
+ "resolved_executable": "~/public-baseline-toolchains/node-v22.23.1-darwin-arm64/bin/node"
},
"bun": {
"version": "1.3.14",
- "resolved_executable": "~/.cache/perry-bench-tools/bun-1.3.14/bun"
+ "resolved_executable": "~/.bun/bin/bun"
}
},
"benchmarks": {
@@ -4213,70 +4213,70 @@
"perry": {
"wall_ms": {
"samples": [
- 186.0,
- 185.0,
- 186.0,
- 184.0,
- 186.0,
- 186.0,
- 188.0,
- 188.0,
- 184.0,
- 184.0,
- 185.0
+ 155.0,
+ 142.0,
+ 143.0,
+ 142.0,
+ 142.0,
+ 142.0,
+ 142.0,
+ 142.0,
+ 142.0,
+ 142.0,
+ 143.0
],
"sample_count": 11,
- "median": 186.0,
- "p95": 188.0,
- "min": 184.0,
- "max": 188.0,
- "stdev": 1.3666633071248098
+ "median": 142.0,
+ "p95": 155.0,
+ "min": 142.0,
+ "max": 155.0,
+ "stdev": 3.699452718068328
}
},
"node": {
"wall_ms": {
"samples": [
- 463.0,
- 560.0,
- 383.0,
- 383.0,
- 384.0,
- 407.0,
- 471.0,
- 669.0,
- 447.0,
382.0,
- 378.0
+ 380.0,
+ 382.0,
+ 373.0,
+ 371.0,
+ 375.0,
+ 389.0,
+ 389.0,
+ 374.0,
+ 384.0,
+ 383.0
],
"sample_count": 11,
- "median": 407.0,
- "p95": 669.0,
- "min": 378.0,
- "max": 669.0,
- "stdev": 88.22641796223103
+ "median": 382.0,
+ "p95": 389.0,
+ "min": 371.0,
+ "max": 389.0,
+ "stdev": 5.920967086521375
}
},
"bun": {
"wall_ms": {
"samples": [
- 189.0,
- 189.0,
- 195.0,
- 192.0,
- 189.0,
- 189.0,
- 191.0,
- 190.0,
- 194.0,
- 188.0,
- 188.0
+ 219.0,
+ 219.0,
+ 220.0,
+ 218.0,
+ 218.0,
+ 218.0,
+ 220.0,
+ 219.0,
+ 219.0,
+ 220.0,
+ 218.0
],
"sample_count": 11,
- "median": 189.0,
- "p95": 195.0,
- "min": 188.0,
- "max": 195.0,
- "stdev": 2.2672661660618045
+ "median": 219.0,
+ "p95": 220.0,
+ "min": 218.0,
+ "max": 220.0,
+ "stdev": 0.7925270806437589
}
}
}
@@ -4291,70 +4291,70 @@
"perry": {
"wall_ms": {
"samples": [
- 1013.0,
- 758.0,
- 885.0,
- 951.0,
- 895.0,
- 880.0,
- 643.0,
- 551.0,
- 550.0,
- 548.0,
- 548.0
+ 320.0,
+ 316.0,
+ 315.0,
+ 315.0,
+ 315.0,
+ 315.0,
+ 315.0,
+ 315.0,
+ 316.0,
+ 316.0,
+ 316.0
],
"sample_count": 11,
- "median": 758.0,
- "p95": 1013.0,
- "min": 548.0,
- "max": 1013.0,
- "stdev": 175.38807030870592
+ "median": 315.0,
+ "p95": 320.0,
+ "min": 315.0,
+ "max": 320.0,
+ "stdev": 1.4024771473219557
}
},
"node": {
"wall_ms": {
"samples": [
- 385.0,
- 382.0,
- 382.0,
+ 380.0,
+ 378.0,
377.0,
382.0,
- 379.0,
- 381.0,
- 383.0,
- 380.0,
+ 375.0,
383.0,
- 377.0
+ 384.0,
+ 385.0,
+ 377.0,
+ 386.0,
+ 385.0
],
"sample_count": 11,
"median": 382.0,
- "p95": 385.0,
- "min": 377.0,
- "max": 385.0,
- "stdev": 2.412090756622109
+ "p95": 386.0,
+ "min": 375.0,
+ "max": 386.0,
+ "stdev": 3.6792920626996475
}
},
"bun": {
"wall_ms": {
"samples": [
- 204.0,
- 202.0,
- 206.0,
- 203.0,
- 198.0,
- 198.0,
- 198.0,
- 198.0,
- 205.0,
- 198.0,
- 198.0
+ 220.0,
+ 221.0,
+ 221.0,
+ 221.0,
+ 222.0,
+ 221.0,
+ 221.0,
+ 221.0,
+ 221.0,
+ 221.0,
+ 221.0
],
"sample_count": 11,
- "median": 198.0,
- "p95": 206.0,
- "min": 198.0,
- "max": 206.0,
- "stdev": 3.13603423830188
+ "median": 221.0,
+ "p95": 222.0,
+ "min": 220.0,
+ "max": 222.0,
+ "stdev": 0.4264014327112209
}
}
}
@@ -4364,8 +4364,8 @@
"app_patterns": {
"schema_version": 1,
"suite": "app_patterns",
- "commit": "827a92bad5a589e94e1630994185693ada903fe2",
- "generated_at": "2026-09-01T14:02:47Z",
+ "commit": "689b1ffbab1b9cc1825ce69d6cf7cbe50fabb168",
+ "generated_at": "2026-09-22T15:24:01Z",
"run_config": {
"warmup": 3,
"requested_samples": 15,
@@ -4373,18 +4373,18 @@
},
"commands": {
"perry": [
- "/root/perry-issue-9338-public-827a92b/target/release/perry",
+ "/Users/perry/projects/perry-public-baseline-20260922-astra/target/release/perry",
"",
"-o",
""
],
"node": [
- "/root/.cache/perry-bench-tools/node-v22.23.1-linux-x64/bin/node",
+ "/Users/perry/public-baseline-toolchains/node-v22.23.1-darwin-arm64/bin/node",
"--experimental-strip-types",
""
],
"bun": [
- "/root/.cache/perry-bench-tools/bun-1.3.14/bun",
+ "/Users/perry/.bun/bin/bun",
"run",
""
],
@@ -4398,16 +4398,16 @@
},
"runtime_metadata": {
"perry": {
- "version": "perry 0.5.1519",
+ "version": "perry 0.5.1636",
"resolved_executable": "target/release/perry"
},
"node": {
"version": "v22.23.1",
- "resolved_executable": "~/.cache/perry-bench-tools/node-v22.23.1-linux-x64/bin/node"
+ "resolved_executable": "~/public-baseline-toolchains/node-v22.23.1-darwin-arm64/bin/node"
},
"bun": {
"version": "1.3.14",
- "resolved_executable": "~/.cache/perry-bench-tools/bun-1.3.14/bun"
+ "resolved_executable": "~/.bun/bin/bun"
}
},
"benchmarks": {
@@ -4421,82 +4421,82 @@
"perry": {
"wall_ms": {
"samples": [
- 60.241799,
- 60.191896,
- 60.34418,
- 60.621277,
- 60.674898,
- 60.461308,
- 60.748054,
- 60.877936,
- 60.484351,
- 60.582014,
- 60.288216,
- 62.016833,
- 60.720603,
- 59.996601,
- 60.137985
+ 21.225036,
+ 21.298078,
+ 21.305828,
+ 21.199912,
+ 21.255286,
+ 21.204578,
+ 21.250619,
+ 21.270245,
+ 21.169536,
+ 21.23112,
+ 21.13612,
+ 21.315369,
+ 21.216745,
+ 21.408953,
+ 21.304537
],
"sample_count": 15,
- "median": 60.484351,
- "p95": 62.016833,
- "min": 59.996601,
- "max": 62.016833,
- "stdev": 0.45972527311014266
+ "median": 21.250619,
+ "p95": 21.408953,
+ "min": 21.13612,
+ "max": 21.408953,
+ "stdev": 0.06550477353482656
}
},
"node": {
"wall_ms": {
"samples": [
- 62.181029,
- 62.274915,
- 62.357991,
- 63.878229,
- 61.489187,
- 63.53643,
- 62.334807,
- 63.086982,
- 62.253876,
- 63.868862,
- 63.693334,
- 63.433498,
- 63.56263,
- 63.24122,
- 62.826505
+ 69.553411,
+ 70.97212,
+ 71.050161,
+ 70.188036,
+ 69.730453,
+ 69.275369,
+ 69.76537,
+ 70.78637,
+ 69.927578,
+ 69.478995,
+ 69.635078,
+ 68.45587,
+ 69.432203,
+ 68.426911,
+ 69.003203
],
"sample_count": 15,
- "median": 63.086982,
- "p95": 63.878229,
- "min": 61.489187,
- "max": 63.878229,
- "stdev": 0.7174624891472258
+ "median": 69.635078,
+ "p95": 71.050161,
+ "min": 68.426911,
+ "max": 71.050161,
+ "stdev": 0.7700702303173137
}
},
"bun": {
"wall_ms": {
"samples": [
- 26.592804,
- 22.325065,
- 22.246278,
- 23.399131,
- 22.249424,
- 25.043612,
- 21.958521,
- 22.168903,
- 22.646976,
- 21.632702,
- 21.948442,
- 22.629343,
- 22.244054,
- 21.7922,
- 23.477577
+ 24.224244,
+ 24.357078,
+ 24.400536,
+ 24.498911,
+ 24.267995,
+ 24.589828,
+ 24.401828,
+ 24.264828,
+ 24.393453,
+ 24.458411,
+ 24.405828,
+ 24.392453,
+ 24.529703,
+ 24.26937,
+ 24.448495
],
"sample_count": 15,
- "median": 22.249424,
- "p95": 26.592804,
- "min": 21.632702,
- "max": 26.592804,
- "stdev": 1.3073002848897521
+ "median": 24.400536,
+ "p95": 24.589828,
+ "min": 24.224244,
+ "max": 24.589828,
+ "stdev": 0.1011294989944196
}
}
}
@@ -4511,82 +4511,82 @@
"perry": {
"wall_ms": {
"samples": [
- 52.029945,
- 51.346358,
- 51.903448,
- 51.694238,
- 51.710448,
- 51.388748,
- 52.280884,
- 52.248612,
- 51.741987,
- 51.391111,
- 51.094658,
- 51.815975,
- 53.223924,
- 52.042327,
- 51.907616
+ 53.785714,
+ 54.017505,
+ 54.107547,
+ 53.890797,
+ 53.720588,
+ 53.864213,
+ 53.868671,
+ 54.002797,
+ 53.866339,
+ 53.909088,
+ 53.565505,
+ 54.046505,
+ 53.682838,
+ 53.759546,
+ 53.652797
],
"sample_count": 15,
- "median": 51.815975,
- "p95": 53.223924,
- "min": 51.094658,
- "max": 53.223924,
- "stdev": 0.49068163426869205
+ "median": 53.866339,
+ "p95": 54.107547,
+ "min": 53.565505,
+ "max": 54.107547,
+ "stdev": 0.15036587598683718
}
},
"node": {
"wall_ms": {
"samples": [
- 67.838284,
- 68.682579,
- 69.308349,
- 71.346965,
- 67.95884,
- 67.157323,
- 69.001866,
- 69.119245,
- 68.109581,
- 67.329584,
- 68.154233,
- 68.426072,
- 67.387763,
- 68.087869,
- 68.472147
+ 80.343172,
+ 80.712005,
+ 80.543213,
+ 80.942088,
+ 80.03763,
+ 81.65288,
+ 79.983088,
+ 80.105255,
+ 80.758922,
+ 80.46338,
+ 80.400047,
+ 83.37438,
+ 82.258505,
+ 81.519421,
+ 81.516338
],
"sample_count": 15,
- "median": 68.154233,
- "p95": 71.346965,
- "min": 67.157323,
- "max": 71.346965,
- "stdev": 0.9977410486314237
+ "median": 80.712005,
+ "p95": 83.37438,
+ "min": 79.983088,
+ "max": 83.37438,
+ "stdev": 0.908011660769311
}
},
"bun": {
"wall_ms": {
"samples": [
- 48.324264,
- 43.977257,
- 47.757206,
- 47.633875,
- 48.106368,
- 48.009226,
- 48.442136,
- 47.983999,
- 48.110135,
- 47.719786,
- 43.514784,
- 48.456972,
- 48.028112,
- 47.851462,
- 47.420046
+ 40.254047,
+ 40.15438,
+ 40.438047,
+ 40.111297,
+ 40.137755,
+ 40.21188,
+ 40.280713,
+ 40.429588,
+ 40.218297,
+ 40.361172,
+ 40.273255,
+ 40.025422,
+ 40.38288,
+ 40.232755,
+ 40.551797
],
"sample_count": 15,
- "median": 47.983999,
- "p95": 48.456972,
- "min": 43.514784,
- "max": 48.456972,
- "stdev": 1.4710274022542293
+ "median": 40.254047,
+ "p95": 40.551797,
+ "min": 40.025422,
+ "max": 40.551797,
+ "stdev": 0.13609802497203607
}
}
}
@@ -4601,82 +4601,82 @@
"perry": {
"wall_ms": {
"samples": [
- 28.394869,
- 28.445374,
- 28.009791,
- 27.788577,
- 28.185178,
- 27.989452,
- 28.001845,
- 28.596416,
- 27.843049,
- 28.000894,
- 28.130175,
- 28.650467,
- 28.228098,
- 28.542174,
- 28.326382
+ 32.692407,
+ 33.002283,
+ 32.770241,
+ 32.702158,
+ 32.655116,
+ 32.710366,
+ 32.671866,
+ 32.706283,
+ 33.714699,
+ 32.604074,
+ 32.630158,
+ 32.631616,
+ 32.710074,
+ 32.730574,
+ 32.731657
],
"sample_count": 15,
- "median": 28.185178,
- "p95": 28.650467,
- "min": 27.788577,
- "max": 28.650467,
- "stdev": 0.26484151445290194
+ "median": 32.706283,
+ "p95": 33.714699,
+ "min": 32.604074,
+ "max": 33.714699,
+ "stdev": 0.2657659013399749
}
},
"node": {
"wall_ms": {
"samples": [
- 79.67116,
- 81.672267,
- 81.379421,
- 80.842647,
- 81.760792,
- 81.434813,
- 80.89746,
- 80.30852,
- 81.362368,
- 79.768932,
- 81.951789,
- 83.278736,
- 80.097276,
- 79.696677,
- 81.067667
+ 109.055074,
+ 111.016658,
+ 111.012658,
+ 110.834658,
+ 109.614575,
+ 109.609407,
+ 109.352825,
+ 108.956782,
+ 109.129282,
+ 109.751575,
+ 112.39595,
+ 109.348282,
+ 110.768866,
+ 110.566908,
+ 110.645533
],
"sample_count": 15,
- "median": 81.067667,
- "p95": 83.278736,
- "min": 79.67116,
- "max": 83.278736,
- "stdev": 0.9627773757066698
+ "median": 109.751575,
+ "p95": 112.39595,
+ "min": 108.956782,
+ "max": 112.39595,
+ "stdev": 0.9482844980677381
}
},
"bun": {
"wall_ms": {
"samples": [
- 43.14897,
- 41.006139,
- 44.479505,
- 43.757086,
- 43.340569,
- 42.789088,
- 44.178804,
- 43.129734,
- 43.085893,
- 41.364859,
- 43.459981,
- 39.506118,
- 43.440425,
- 43.585545,
- 43.817508
+ 43.123783,
+ 43.585991,
+ 43.312033,
+ 43.740783,
+ 43.142366,
+ 43.156616,
+ 43.145283,
+ 43.322157,
+ 43.756491,
+ 43.463616,
+ 43.298824,
+ 43.394782,
+ 43.166533,
+ 43.034574,
+ 43.615158
],
"sample_count": 15,
- "median": 43.340569,
- "p95": 44.479505,
- "min": 39.506118,
- "max": 44.479505,
- "stdev": 1.2800131123105194
+ "median": 43.312033,
+ "p95": 43.756491,
+ "min": 43.034574,
+ "max": 43.756491,
+ "stdev": 0.22663293068415424
}
}
}
@@ -4691,82 +4691,82 @@
"perry": {
"wall_ms": {
"samples": [
- 86.503624,
- 84.108061,
- 84.313845,
- 84.154517,
- 84.858221,
- 84.126516,
- 84.672154,
- 85.696828,
- 85.588776,
- 84.029403,
- 84.543213,
- 83.939987,
- 84.172221,
- 85.265141,
- 84.184734
+ 56.659322,
+ 56.698322,
+ 56.21849,
+ 56.209865,
+ 56.299864,
+ 56.474448,
+ 56.387781,
+ 56.358156,
+ 56.338031,
+ 56.544823,
+ 56.194406,
+ 56.314572,
+ 56.458573,
+ 56.476323,
+ 56.768114
],
"sample_count": 15,
- "median": 84.313845,
- "p95": 86.503624,
- "min": 83.939987,
- "max": 86.503624,
- "stdev": 0.7346611376502589
+ "median": 56.387781,
+ "p95": 56.768114,
+ "min": 56.194406,
+ "max": 56.768114,
+ "stdev": 0.17344178465166743
}
},
"node": {
"wall_ms": {
"samples": [
- 117.388727,
- 114.800053,
- 116.210066,
- 112.588855,
- 115.739368,
- 115.753173,
- 117.431067,
- 115.078493,
- 112.228221,
- 114.221123,
- 116.075054,
- 119.933839,
- 117.338884,
- 114.74426,
- 117.265067
+ 120.248031,
+ 119.021031,
+ 120.102739,
+ 120.685365,
+ 118.540364,
+ 119.626323,
+ 119.017031,
+ 118.360406,
+ 120.548281,
+ 120.940531,
+ 119.520322,
+ 118.247572,
+ 117.871698,
+ 121.255698,
+ 118.049865
],
"sample_count": 15,
- "median": 115.753173,
- "p95": 119.933839,
- "min": 112.228221,
- "max": 119.933839,
- "stdev": 1.9188801724928934
+ "median": 119.520322,
+ "p95": 121.255698,
+ "min": 117.871698,
+ "max": 121.255698,
+ "stdev": 1.0829430662754078
}
},
"bun": {
"wall_ms": {
"samples": [
- 71.150033,
- 72.225963,
- 71.860991,
- 72.517998,
- 71.142249,
- 72.680391,
- 72.79726,
- 72.741755,
- 72.821865,
- 73.362255,
- 71.811418,
- 72.855599,
- 74.017808,
- 72.371565,
- 73.603424
+ 64.948364,
+ 65.054114,
+ 65.225156,
+ 65.091156,
+ 65.289531,
+ 65.368114,
+ 65.374739,
+ 65.263365,
+ 65.319531,
+ 65.79849,
+ 65.296031,
+ 65.348281,
+ 65.496989,
+ 65.429698,
+ 65.431406
],
"sample_count": 15,
- "median": 72.680391,
- "p95": 74.017808,
- "min": 71.142249,
- "max": 74.017808,
- "stdev": 0.7874142143211518
+ "median": 65.319531,
+ "p95": 65.79849,
+ "min": 64.948364,
+ "max": 65.79849,
+ "stdev": 0.19415391703995039
}
}
}
@@ -4781,82 +4781,82 @@
"perry": {
"wall_ms": {
"samples": [
- 75.563826,
- 76.139361,
- 75.366267,
- 75.665456,
- 80.052558,
- 75.778868,
- 76.17613,
- 75.133814,
- 75.97218,
- 75.020953,
- 74.931876,
- 74.89121,
- 75.397576,
- 75.733583,
- 76.598238
+ 74.044755,
+ 73.94288,
+ 73.889046,
+ 74.091797,
+ 74.276338,
+ 73.925839,
+ 74.282964,
+ 74.329213,
+ 73.988088,
+ 74.094255,
+ 73.985296,
+ 74.20788,
+ 74.126546,
+ 74.005963,
+ 74.131005
],
"sample_count": 15,
- "median": 75.665456,
- "p95": 80.052558,
- "min": 74.89121,
- "max": 80.052558,
- "stdev": 1.2091869763930623
+ "median": 74.091797,
+ "p95": 74.329213,
+ "min": 73.889046,
+ "max": 74.329213,
+ "stdev": 0.13304010447814502
}
},
"node": {
"wall_ms": {
"samples": [
- 81.404884,
- 82.142872,
- 81.853472,
- 81.507436,
- 80.959853,
- 80.981763,
- 81.842582,
- 82.616917,
- 81.673446,
- 85.535237,
- 81.983915,
- 79.52328,
- 80.322262,
- 80.512688,
- 80.756093
+ 88.76813,
+ 89.425255,
+ 88.362713,
+ 88.261963,
+ 89.01313,
+ 88.24913,
+ 89.754171,
+ 88.432797,
+ 88.954255,
+ 88.518463,
+ 90.024296,
+ 88.674296,
+ 91.439339,
+ 90.557547,
+ 88.93363
],
"sample_count": 15,
- "median": 81.507436,
- "p95": 85.535237,
- "min": 79.52328,
- "max": 85.535237,
- "stdev": 1.3104567970187926
+ "median": 88.93363,
+ "p95": 91.439339,
+ "min": 88.24913,
+ "max": 91.439339,
+ "stdev": 0.8957565896065764
}
},
"bun": {
"wall_ms": {
"samples": [
- 31.251911,
- 35.312524,
- 36.09779,
- 33.103208,
- 34.87135,
- 34.301856,
- 32.513797,
- 32.099613,
- 34.829381,
- 31.559065,
- 35.521003,
- 31.720125,
- 33.825116,
- 33.973423,
- 31.79764
+ 36.034089,
+ 35.90038,
+ 35.938922,
+ 36.070463,
+ 35.915547,
+ 35.909547,
+ 36.061588,
+ 36.075338,
+ 36.218297,
+ 36.100713,
+ 35.91688,
+ 35.991964,
+ 35.615963,
+ 35.96213,
+ 35.765296
],
"sample_count": 15,
- "median": 33.825116,
- "p95": 36.09779,
- "min": 31.251911,
- "max": 36.09779,
- "stdev": 1.5644373472274256
+ "median": 35.96213,
+ "p95": 36.218297,
+ "min": 35.615963,
+ "max": 36.218297,
+ "stdev": 0.14026458915438667
}
}
}
@@ -4871,82 +4871,82 @@
"perry": {
"wall_ms": {
"samples": [
- 170.590371,
- 152.343238,
- 172.323698,
- 157.884475,
- 165.615451,
- 160.427814,
- 167.977272,
- 172.397115,
- 169.779949,
- 171.534635,
- 156.138795,
- 180.519593,
- 159.554885,
- 166.212276,
- 162.742256
+ 161.748804,
+ 161.634179,
+ 161.540471,
+ 161.954803,
+ 161.362971,
+ 161.46322,
+ 161.503178,
+ 161.459221,
+ 161.636428,
+ 161.355804,
+ 161.63697,
+ 161.337762,
+ 161.982012,
+ 161.352428,
+ 161.596429
],
"sample_count": 15,
- "median": 166.212276,
- "p95": 180.519593,
- "min": 152.343238,
- "max": 180.519593,
- "stdev": 7.27367173220972
+ "median": 161.540471,
+ "p95": 161.982012,
+ "min": 161.337762,
+ "max": 161.982012,
+ "stdev": 0.19706562875673814
}
},
"node": {
"wall_ms": {
"samples": [
- 228.915875,
- 228.965668,
- 278.214223,
- 241.003527,
- 254.944199,
- 270.599584,
- 229.80193,
- 224.149675,
- 282.302116,
- 241.013535,
- 245.987834,
- 267.880756,
- 225.565479,
- 216.361162,
- 290.516885
+ 246.374179,
+ 247.729887,
+ 244.593595,
+ 244.619179,
+ 250.069095,
+ 246.647762,
+ 246.807137,
+ 248.07422,
+ 247.012471,
+ 247.327387,
+ 248.689928,
+ 246.384012,
+ 246.972637,
+ 246.998554,
+ 246.068054
],
"sample_count": 15,
- "median": 241.013535,
- "p95": 290.516885,
- "min": 216.361162,
- "max": 290.516885,
- "stdev": 23.211344296020417
+ "median": 246.972637,
+ "p95": 250.069095,
+ "min": 244.593595,
+ "max": 250.069095,
+ "stdev": 1.3491560522743045
}
},
"bun": {
"wall_ms": {
"samples": [
- 278.820615,
- 255.66729,
- 255.454062,
- 290.183453,
- 269.279548,
- 247.777597,
- 281.571832,
- 253.371994,
- 262.618981,
- 281.0778,
- 269.729889,
- 271.279333,
- 251.917808,
- 251.016685,
- 286.833237
+ 213.112762,
+ 212.970845,
+ 214.262554,
+ 212.686679,
+ 213.132304,
+ 213.400262,
+ 212.585345,
+ 213.925846,
+ 212.392429,
+ 214.269053,
+ 213.661262,
+ 213.107387,
+ 213.276054,
+ 215.253721,
+ 213.370762
],
"sample_count": 15,
- "median": 269.279548,
- "p95": 290.183453,
- "min": 247.777597,
- "max": 290.183453,
- "stdev": 13.737939242994571
+ "median": 213.276054,
+ "p95": 215.253721,
+ "min": 212.392429,
+ "max": 215.253721,
+ "stdev": 0.7255856457178164
}
}
}
@@ -4961,82 +4961,82 @@
"perry": {
"wall_ms": {
"samples": [
- 16.579118,
- 17.441649,
- 17.52251,
- 17.513403,
- 16.669918,
- 17.034068,
- 17.405292,
- 17.102055,
- 17.004122,
- 16.637909,
- 16.820249,
- 16.923372,
- 17.395323,
- 17.034799,
- 17.362331
+ 17.984582,
+ 18.233207,
+ 18.078041,
+ 17.997249,
+ 17.992583,
+ 18.105207,
+ 18.036665,
+ 17.866999,
+ 18.002833,
+ 17.999666,
+ 17.991832,
+ 18.066082,
+ 17.946207,
+ 18.074124,
+ 18.074999
],
"sample_count": 15,
- "median": 17.034799,
- "p95": 17.52251,
- "min": 16.579118,
- "max": 17.52251,
- "stdev": 0.31751676320930783
+ "median": 18.002833,
+ "p95": 18.233207,
+ "min": 17.866999,
+ "max": 18.233207,
+ "stdev": 0.07992343075702728
}
},
"node": {
"wall_ms": {
"samples": [
- 40.183366,
- 42.454547,
- 40.704218,
- 43.81623,
- 41.64261,
- 43.527941,
- 44.281799,
- 43.120771,
- 41.868843,
- 43.889787,
- 41.148718,
- 43.847087,
- 43.712065,
- 43.78936,
- 41.73331
+ 54.20779,
+ 52.602832,
+ 51.784665,
+ 55.933958,
+ 51.959416,
+ 52.203291,
+ 52.28454,
+ 53.425124,
+ 53.050416,
+ 51.870624,
+ 53.544582,
+ 53.662207,
+ 51.956374,
+ 51.628415,
+ 52.788291
],
"sample_count": 15,
- "median": 43.120771,
- "p95": 44.281799,
- "min": 40.183366,
- "max": 44.281799,
- "stdev": 1.2920057506246567
+ "median": 52.602832,
+ "p95": 55.933958,
+ "min": 51.628415,
+ "max": 55.933958,
+ "stdev": 1.1209183447742406
}
},
"bun": {
"wall_ms": {
"samples": [
- 15.624045,
- 15.737798,
- 18.501158,
- 15.898177,
- 16.747593,
- 17.135006,
- 18.295033,
- 15.874122,
- 17.489689,
- 16.331547,
- 15.882628,
- 15.314577,
- 15.96382,
- 18.044415,
- 16.566615
+ 15.924457,
+ 15.971915,
+ 16.011332,
+ 16.041457,
+ 16.063332,
+ 16.07554,
+ 16.118207,
+ 16.129207,
+ 16.076082,
+ 16.127333,
+ 16.06379,
+ 16.089416,
+ 15.943499,
+ 16.105707,
+ 16.087874
],
"sample_count": 15,
- "median": 16.331547,
- "p95": 18.501158,
- "min": 15.314577,
- "max": 18.501158,
- "stdev": 1.0007533854437776
+ "median": 16.07554,
+ "p95": 16.129207,
+ "min": 15.924457,
+ "max": 16.129207,
+ "stdev": 0.06274258580567312
}
}
}
@@ -5051,82 +5051,82 @@
"perry": {
"wall_ms": {
"samples": [
- 81.303687,
- 80.199514,
- 81.398174,
- 80.892568,
- 83.179048,
- 83.419998,
- 82.137715,
- 82.308974,
- 82.883968,
- 81.902765,
- 83.812842,
- 79.861974,
- 81.675672,
- 81.314086,
- 82.291531
+ 85.534496,
+ 85.612413,
+ 85.980454,
+ 86.162538,
+ 85.988163,
+ 85.802538,
+ 85.96883,
+ 85.737871,
+ 85.751497,
+ 85.935329,
+ 85.713663,
+ 85.763205,
+ 85.801538,
+ 85.73608,
+ 85.622663
],
"sample_count": 15,
- "median": 81.902765,
- "p95": 83.812842,
- "min": 79.861974,
- "max": 83.812842,
- "stdev": 1.0957886745197716
+ "median": 85.763205,
+ "p95": 86.162538,
+ "min": 85.534496,
+ "max": 86.162538,
+ "stdev": 0.16363363435914266
}
},
"node": {
"wall_ms": {
"samples": [
- 48.427175,
- 50.998136,
- 49.685604,
- 50.380071,
- 50.215845,
- 47.651707,
- 51.144409,
- 48.33899,
- 49.120339,
- 48.248021,
- 48.966091,
- 48.814949,
- 46.66825,
- 45.71496,
- 46.963281
+ 58.977955,
+ 58.622871,
+ 59.032705,
+ 58.512663,
+ 58.467913,
+ 60.325121,
+ 59.191413,
+ 59.867663,
+ 58.534955,
+ 59.248871,
+ 57.83933,
+ 58.46658,
+ 60.25833,
+ 59.119538,
+ 58.208496
],
"sample_count": 15,
- "median": 48.814949,
- "p95": 51.144409,
- "min": 45.71496,
- "max": 51.144409,
- "stdev": 1.5302492063937914
+ "median": 58.977955,
+ "p95": 60.325121,
+ "min": 57.83933,
+ "max": 60.325121,
+ "stdev": 0.6993716060826612
}
},
"bun": {
"wall_ms": {
"samples": [
- 23.529643,
- 22.108648,
- 22.481235,
- 24.42793,
- 22.346834,
- 23.692737,
- 23.883674,
- 22.464524,
- 22.197715,
- 22.964527,
- 22.18948,
- 22.588395,
- 23.10532,
- 22.551366,
- 21.741844
+ 21.194372,
+ 20.89233,
+ 20.928288,
+ 20.740955,
+ 21.016247,
+ 20.839622,
+ 20.84083,
+ 21.004205,
+ 20.896913,
+ 20.906997,
+ 20.85833,
+ 20.773913,
+ 21.088913,
+ 20.820996,
+ 20.85083
],
"sample_count": 15,
- "median": 22.551366,
- "p95": 24.42793,
- "min": 21.741844,
- "max": 24.42793,
- "stdev": 0.7361343429761414
+ "median": 20.89233,
+ "p95": 21.194372,
+ "min": 20.740955,
+ "max": 21.194372,
+ "stdev": 0.11684530017580262
}
}
}
@@ -5141,82 +5141,82 @@
"perry": {
"wall_ms": {
"samples": [
- 53.287071,
- 54.643794,
- 54.393797,
- 54.01536,
- 53.496632,
- 53.401343,
- 53.872644,
- 53.974845,
- 53.307989,
- 53.92361,
- 53.734707,
- 54.304991,
- 55.519539,
- 53.728084,
- 54.564857
+ 750.301846,
+ 749.893054,
+ 749.887221,
+ 750.444971,
+ 749.686137,
+ 754.42318,
+ 750.490013,
+ 749.596762,
+ 749.906554,
+ 753.386846,
+ 942.661471,
+ 749.826679,
+ 749.322137,
+ 749.926846,
+ 756.37693
],
"sample_count": 15,
- "median": 53.92361,
- "p95": 55.519539,
- "min": 53.287071,
- "max": 55.519539,
- "stdev": 0.5805099718208935
+ "median": 749.926846,
+ "p95": 942.661471,
+ "min": 749.322137,
+ "max": 942.661471,
+ "stdev": 47.86007714265081
}
},
"node": {
"wall_ms": {
"samples": [
- 71.388382,
- 72.58153,
- 71.64482,
- 72.978721,
- 71.308913,
- 72.127362,
- 71.837941,
- 72.094821,
- 72.644778,
- 72.199366,
- 73.198452,
- 72.12616,
- 73.19216,
- 74.370771,
- 72.403127
+ 97.533388,
+ 97.912513,
+ 97.112929,
+ 98.31893,
+ 97.775138,
+ 97.805262,
+ 97.014429,
+ 97.979346,
+ 96.809137,
+ 98.420221,
+ 97.025013,
+ 97.446096,
+ 97.445137,
+ 98.009554,
+ 99.28243
],
"sample_count": 15,
- "median": 72.199366,
- "p95": 74.370771,
- "min": 71.308913,
- "max": 74.370771,
- "stdev": 0.7728261726051538
+ "median": 97.775138,
+ "p95": 99.28243,
+ "min": 96.809137,
+ "max": 99.28243,
+ "stdev": 0.6246382321264253
}
},
"bun": {
"wall_ms": {
"samples": [
- 40.475316,
- 40.302154,
- 40.164086,
- 41.550074,
- 38.007148,
- 38.529824,
- 40.036907,
- 39.938714,
- 41.153283,
- 40.710656,
- 40.660633,
- 38.38356,
- 37.444086,
- 42.090673,
- 41.324673
+ 49.549096,
+ 49.392762,
+ 49.464846,
+ 49.378929,
+ 49.60618,
+ 49.497137,
+ 49.472096,
+ 49.486929,
+ 49.526055,
+ 49.672179,
+ 49.817554,
+ 49.437679,
+ 49.430221,
+ 49.325763,
+ 49.650346
],
"sample_count": 15,
- "median": 40.302154,
- "p95": 42.090673,
- "min": 37.444086,
- "max": 42.090673,
- "stdev": 1.3263467789092902
+ "median": 49.486929,
+ "p95": 49.817554,
+ "min": 49.325763,
+ "max": 49.817554,
+ "stdev": 0.1243754544004383
}
}
}
@@ -5231,82 +5231,82 @@
"perry": {
"wall_ms": {
"samples": [
- 29.213564,
- 28.442884,
- 28.749247,
- 28.550315,
- 28.391388,
- 28.721755,
- 28.38668,
- 29.292882,
- 28.739548,
- 28.828445,
- 28.625956,
- 28.707879,
- 28.985558,
- 28.517935,
- 28.198067
+ 31.541524,
+ 31.628941,
+ 31.681858,
+ 31.596608,
+ 31.503316,
+ 31.767732,
+ 31.793733,
+ 31.584566,
+ 31.810149,
+ 31.765858,
+ 31.623482,
+ 31.740191,
+ 31.556149,
+ 31.594983,
+ 31.678525
],
"sample_count": 15,
- "median": 28.707879,
- "p95": 29.292882,
- "min": 28.198067,
- "max": 29.292882,
- "stdev": 0.2931276073456064
+ "median": 31.628941,
+ "p95": 31.810149,
+ "min": 31.503316,
+ "max": 31.810149,
+ "stdev": 0.09522909264155195
}
},
"node": {
"wall_ms": {
"samples": [
- 75.598501,
- 75.204965,
- 75.618207,
- 75.204384,
- 77.250606,
- 75.987657,
- 75.368661,
- 75.789617,
- 78.762449,
- 78.292862,
- 76.867671,
- 77.33336,
- 75.38367,
- 76.237213,
- 76.748237
+ 81.759483,
+ 82.907358,
+ 83.264024,
+ 81.260649,
+ 82.747857,
+ 81.738649,
+ 82.127899,
+ 81.577149,
+ 82.766775,
+ 80.593524,
+ 81.534524,
+ 82.656274,
+ 82.196316,
+ 81.571649,
+ 82.142357
],
"sample_count": 15,
- "median": 75.987657,
- "p95": 78.762449,
- "min": 75.204384,
- "max": 78.762449,
- "stdev": 1.091402729977752
+ "median": 82.127899,
+ "p95": 83.264024,
+ "min": 80.593524,
+ "max": 83.264024,
+ "stdev": 0.6955346811592611
}
},
"bun": {
"wall_ms": {
"samples": [
- 30.469609,
- 33.574467,
- 30.317556,
- 30.533739,
- 30.501208,
- 30.176732,
- 29.62913,
- 29.93428,
- 30.060195,
- 29.515177,
- 32.916148,
- 29.82187,
- 29.573987,
- 30.427641,
- 30.315532
+ 26.898816,
+ 26.867733,
+ 26.943107,
+ 26.945108,
+ 26.732441,
+ 26.806232,
+ 26.967066,
+ 26.91215,
+ 26.795441,
+ 27.081108,
+ 26.999358,
+ 26.668316,
+ 26.924316,
+ 26.763316,
+ 26.798191
],
"sample_count": 15,
- "median": 30.315532,
- "p95": 33.574467,
- "min": 29.515177,
- "max": 33.574467,
- "stdev": 1.1261613484266193
+ "median": 26.898816,
+ "p95": 27.081108,
+ "min": 26.668316,
+ "max": 27.081108,
+ "stdev": 0.10734594050294691
}
}
}
@@ -5321,82 +5321,82 @@
"perry": {
"wall_ms": {
"samples": [
- 34.421847,
- 33.774659,
- 34.767022,
- 34.355132,
- 33.736036,
- 34.012593,
- 33.613839,
- 33.954755,
- 33.919258,
- 34.097671,
- 33.95774,
- 33.745925,
- 34.188741,
- 34.460349,
- 34.648109
+ 36.117978,
+ 35.838687,
+ 35.722479,
+ 36.153187,
+ 35.639771,
+ 36.217812,
+ 36.130854,
+ 36.044687,
+ 35.79102,
+ 36.154104,
+ 36.047604,
+ 35.843687,
+ 35.658062,
+ 36.210604,
+ 35.727187
],
"sample_count": 15,
- "median": 34.012593,
- "p95": 34.767022,
- "min": 33.613839,
- "max": 34.767022,
- "stdev": 0.33978982507985034
+ "median": 36.044687,
+ "p95": 36.217812,
+ "min": 35.639771,
+ "max": 36.217812,
+ "stdev": 0.205539156244859
}
},
"node": {
"wall_ms": {
"samples": [
- 70.772567,
- 69.615145,
- 69.676058,
- 70.99441,
- 71.203822,
- 71.560006,
- 72.739539,
- 69.193288,
- 69.809668,
- 70.611596,
- 71.958321,
- 70.44254,
- 70.808443,
- 70.793966,
- 71.168636
+ 76.599812,
+ 75.91852,
+ 74.718229,
+ 75.14052,
+ 74.79352,
+ 74.354395,
+ 74.757062,
+ 74.847853,
+ 74.409104,
+ 74.378396,
+ 76.362812,
+ 76.17377,
+ 74.243895,
+ 75.294229,
+ 76.724353
],
"sample_count": 15,
- "median": 70.793966,
- "p95": 72.739539,
- "min": 69.193288,
- "max": 72.739539,
- "stdev": 0.9085919586240142
+ "median": 74.847853,
+ "p95": 76.724353,
+ "min": 74.243895,
+ "max": 76.724353,
+ "stdev": 0.8455852627889303
}
},
"bun": {
"wall_ms": {
"samples": [
- 55.41093,
- 56.56169,
- 56.428771,
- 56.865067,
- 56.176991,
- 55.897159,
- 56.005,
- 56.446785,
- 51.41032,
- 56.77589,
- 56.607044,
- 58.1467,
- 56.6532,
- 55.394881,
- 57.106066
+ 45.970729,
+ 43.366604,
+ 43.34877,
+ 45.962104,
+ 43.552228,
+ 43.452354,
+ 43.432312,
+ 44.542603,
+ 44.266479,
+ 43.648853,
+ 43.360395,
+ 43.335437,
+ 43.255645,
+ 43.406895,
+ 43.347853
],
"sample_count": 15,
- "median": 56.446785,
- "p95": 58.1467,
- "min": 51.41032,
- "max": 58.1467,
- "stdev": 1.420309439594085
+ "median": 43.432312,
+ "p95": 45.970729,
+ "min": 43.255645,
+ "max": 45.970729,
+ "stdev": 0.8887394736562155
}
}
}
@@ -5411,82 +5411,82 @@
"perry": {
"wall_ms": {
"samples": [
- 46.442185,
- 46.898607,
- 47.372001,
- 47.373043,
- 47.362744,
- 47.139397,
- 47.095856,
- 46.755361,
- 46.838455,
- 47.522142,
- 47.387961,
- 47.017931,
- 47.490463,
- 47.587514,
- 47.676721
+ 37.921377,
+ 37.857585,
+ 37.924294,
+ 38.189377,
+ 37.881794,
+ 37.938918,
+ 38.018335,
+ 38.126252,
+ 37.959335,
+ 38.077461,
+ 38.025669,
+ 37.939294,
+ 38.131627,
+ 37.993586,
+ 37.912961
],
"sample_count": 15,
- "median": 47.362744,
- "p95": 47.676721,
- "min": 46.442185,
- "max": 47.676721,
- "stdev": 0.33941327024331547
+ "median": 37.959335,
+ "p95": 38.189377,
+ "min": 37.857585,
+ "max": 38.189377,
+ "stdev": 0.09601499375340643
}
},
"node": {
"wall_ms": {
"samples": [
- 91.919517,
- 91.697883,
- 91.512056,
- 93.451158,
- 90.842676,
- 90.449602,
- 91.783003,
- 93.432362,
- 94.058952,
- 91.463145,
- 91.878872,
- 92.351725,
- 93.212622,
- 93.25973,
- 93.988982
+ 98.655544,
+ 99.411752,
+ 100.729127,
+ 100.765086,
+ 100.299793,
+ 99.942586,
+ 99.878752,
+ 103.244585,
+ 97.678252,
+ 98.704877,
+ 97.875044,
+ 99.361127,
+ 98.990502,
+ 99.605044,
+ 99.732961
],
"sample_count": 15,
- "median": 91.919517,
- "p95": 94.058952,
- "min": 90.449602,
- "max": 94.058952,
- "stdev": 1.0981378484469473
+ "median": 99.605044,
+ "p95": 103.244585,
+ "min": 97.678252,
+ "max": 103.244585,
+ "stdev": 1.301092004920731
}
},
"bun": {
"wall_ms": {
"samples": [
- 53.116839,
- 53.422179,
- 55.296329,
- 55.248399,
- 53.843225,
- 53.902756,
- 53.670062,
- 57.384829,
- 55.632066,
- 55.383151,
- 58.098381,
- 54.361784,
- 55.693851,
- 56.380364,
- 57.989949
+ 40.646044,
+ 40.883544,
+ 40.698585,
+ 40.306168,
+ 40.31771,
+ 41.415543,
+ 43.337169,
+ 40.330627,
+ 40.064627,
+ 43.312752,
+ 40.446085,
+ 42.412086,
+ 41.106669,
+ 43.08696,
+ 40.245711
],
"sample_count": 15,
- "median": 55.296329,
- "p95": 58.098381,
- "min": 53.116839,
- "max": 58.098381,
- "stdev": 1.5654368599708093
+ "median": 40.698585,
+ "p95": 43.337169,
+ "min": 40.064627,
+ "max": 43.337169,
+ "stdev": 1.1503929589976158
}
}
}
@@ -5496,8 +5496,8 @@
"honest_bench": {
"schema_version": 1,
"suite": "honest_bench",
- "commit": "827a92bad5a589e94e1630994185693ada903fe2",
- "generated_at": "2026-09-01T14:14:47.564994Z",
+ "commit": "689b1ffbab1b9cc1825ce69d6cf7cbe50fabb168",
+ "generated_at": "2026-09-22T15:30:43.487566Z",
"run_config": {
"warmup": 5,
"requested_samples": 20
@@ -5507,18 +5507,18 @@
""
],
"perry_compile": [
- "/root/perry-issue-9338-public-827a92b/target/release/perry",
+ "/Users/perry/projects/perry-public-baseline-20260922-astra/target/release/perry",
"",
"-o",
""
],
"node": [
- "/root/.cache/perry-bench-tools/node-v22.23.1-linux-x64/bin/node",
+ "/Users/perry/public-baseline-toolchains/node-v22.23.1-darwin-arm64/bin/node",
"--experimental-strip-types",
""
],
"bun": [
- "/root/.cache/perry-bench-tools/bun-1.3.14/bun",
+ "/Users/perry/.bun/bin/bun",
"run",
""
],
@@ -5526,7 +5526,7 @@
""
],
"perry_http_compile": [
- "/root/perry-issue-9338-public-827a92b/target/release/perry",
+ "/Users/perry/projects/perry-public-baseline-20260922-astra/target/release/perry",
"",
"-o",
""
@@ -5558,16 +5558,16 @@
},
"runtime_metadata": {
"perry": {
- "version": "perry 0.5.1519",
+ "version": "perry 0.5.1636",
"resolved_executable": "target/release/perry"
},
"node": {
"version": "v22.23.1",
- "resolved_executable": "~/.cache/perry-bench-tools/node-v22.23.1-linux-x64/bin/node"
+ "resolved_executable": "~/public-baseline-toolchains/node-v22.23.1-darwin-arm64/bin/node"
},
"bun": {
"version": "1.3.14",
- "resolved_executable": "~/.cache/perry-bench-tools/bun-1.3.14/bun"
+ "resolved_executable": "~/.bun/bin/bun"
}
},
"benchmarks": {
@@ -5580,63 +5580,63 @@
"perry": {
"wall_ms": {
"samples": [
- 1203.29221,
- 1203.576601,
- 1202.635374,
- 1205.451492,
- 1204.519432,
- 1203.465042,
- 1202.606922,
- 1203.688289,
- 1203.786463,
- 1202.470486,
- 1204.333425,
- 1203.61874,
- 1205.85694,
- 1204.794987,
- 1205.210102,
- 1205.37002,
- 1205.074649,
- 1941.538199,
- 2014.706841,
- 1966.355061
+ 2265.803209,
+ 2266.099292,
+ 2265.985291,
+ 2266.667458,
+ 2266.568917,
+ 2265.91175,
+ 2265.814334,
+ 2266.933708,
+ 2266.440542,
+ 2266.20525,
+ 2266.255833,
+ 2266.330375,
+ 2266.222833,
+ 2266.107208,
+ 2266.401125,
+ 2266.42775,
+ 2266.517417,
+ 2265.946208,
+ 2266.32025,
+ 2265.826167
],
"sample_count": 20,
- "median": 1204.4264285,
- "p95": 1966.355061,
- "min": 1202.470486,
- "max": 2014.706841,
- "stdev": 275.23294280866907
+ "median": 2266.239333,
+ "p95": 2266.667458,
+ "min": 2265.803209,
+ "max": 2266.933708,
+ "stdev": 0.30053968326595876
},
"rss_kb": {
"samples": [
- 80800.0,
- 80764.0,
- 80788.0,
- 81076.0,
- 80992.0,
- 80684.0,
- 81084.0,
- 81108.0,
- 80944.0,
- 80764.0,
- 80964.0,
- 81092.0,
- 80840.0,
- 81080.0,
- 80676.0,
- 80888.0,
- 80676.0,
- 81072.0,
- 81092.0,
- 81008.0
+ 61296.0,
+ 61280.0,
+ 61296.0,
+ 61296.0,
+ 61280.0,
+ 61280.0,
+ 61296.0,
+ 61280.0,
+ 61280.0,
+ 61296.0,
+ 61280.0,
+ 61296.0,
+ 61296.0,
+ 61280.0,
+ 61296.0,
+ 61280.0,
+ 61296.0,
+ 61280.0,
+ 61296.0,
+ 61280.0
],
"sample_count": 20,
- "median": 80954.0,
- "p95": 81092.0,
- "min": 80676.0,
- "max": 81108.0,
- "stdev": 153.71610195421948
+ "median": 61288.0,
+ "p95": 61296.0,
+ "min": 61280.0,
+ "max": 61296.0,
+ "stdev": 8.0
},
"measured_command": [
"benchmarks/honest_bench/workloads/3_image_convolution/perry/image_conv"
@@ -5645,66 +5645,66 @@
"node": {
"wall_ms": {
"samples": [
- 973.375217,
- 971.447546,
- 972.381591,
- 975.271227,
- 969.634,
- 972.660041,
- 977.805128,
- 975.870926,
- 986.876377,
- 979.976894,
- 977.929181,
- 979.803641,
- 1183.670039,
- 974.71618,
- 1093.290109,
- 1252.292942,
- 974.618267,
- 966.695012,
- 967.978879,
- 965.920996
+ 1221.743,
+ 1214.71925,
+ 1220.740125,
+ 1219.192209,
+ 1218.804958,
+ 1219.129417,
+ 1219.205833,
+ 1220.855042,
+ 1219.4495,
+ 1212.219375,
+ 1221.84,
+ 1219.785916,
+ 1221.851,
+ 1220.485875,
+ 1222.851125,
+ 1221.922834,
+ 1219.272583,
+ 1219.798583,
+ 1219.347,
+ 1220.001625
],
"sample_count": 20,
- "median": 974.9937035,
- "p95": 1183.670039,
- "min": 965.920996,
- "max": 1252.292942,
- "stdev": 76.6011457979885
+ "median": 1219.7922495,
+ "p95": 1221.922834,
+ "min": 1212.219375,
+ "max": 1222.851125,
+ "stdev": 2.388808079878716
},
"rss_kb": {
"samples": [
- 118424.0,
- 118636.0,
- 118372.0,
- 118236.0,
- 118656.0,
- 118508.0,
- 118720.0,
- 118632.0,
- 118076.0,
- 118484.0,
- 118592.0,
- 118364.0,
- 118432.0,
- 117956.0,
- 117988.0,
- 118280.0,
- 118532.0,
- 118420.0,
- 118116.0,
- 118492.0
+ 120528.0,
+ 120672.0,
+ 120512.0,
+ 120768.0,
+ 120496.0,
+ 120608.0,
+ 120528.0,
+ 120480.0,
+ 120496.0,
+ 120464.0,
+ 120832.0,
+ 120624.0,
+ 120544.0,
+ 120640.0,
+ 120688.0,
+ 120720.0,
+ 120640.0,
+ 120528.0,
+ 120576.0,
+ 120560.0
],
"sample_count": 20,
- "median": 118428.0,
- "p95": 118656.0,
- "min": 117956.0,
- "max": 118720.0,
- "stdev": 218.6850703637539
+ "median": 120568.0,
+ "p95": 120768.0,
+ "min": 120464.0,
+ "max": 120832.0,
+ "stdev": 98.96746940282954
},
"measured_command": [
- "~/.cache/perry-bench-tools/node-v22.23.1-linux-x64/bin/node",
+ "~/public-baseline-toolchains/node-v22.23.1-darwin-arm64/bin/node",
"--experimental-strip-types",
"--disable-warning=MODULE_TYPELESS_PACKAGE_JSON",
"benchmarks/honest_bench/workloads/3_image_convolution/node/image_conv.ts"
@@ -5713,66 +5713,66 @@
"bun": {
"wall_ms": {
"samples": [
- 523.357448,
- 523.303468,
- 544.101685,
- 538.859747,
- 557.809563,
- 544.497604,
- 543.87429,
- 543.083173,
- 553.869625,
- 550.315568,
- 544.095113,
- 522.549449,
- 539.650903,
- 519.266388,
- 671.222823,
- 566.700675,
- 521.688942,
- 630.710774,
- 559.09371,
- 541.397535
+ 996.611,
+ 893.461542,
+ 864.725292,
+ 860.684167,
+ 899.233167,
+ 860.561209,
+ 898.880375,
+ 865.333083,
+ 920.659542,
+ 915.15075,
+ 920.525375,
+ 898.782209,
+ 893.602166,
+ 888.214542,
+ 914.669,
+ 893.247042,
+ 898.584833,
+ 892.887917,
+ 893.300458,
+ 865.156333
],
"sample_count": 20,
- "median": 543.9847015,
- "p95": 630.710774,
- "min": 519.266388,
- "max": 671.222823,
- "stdev": 36.042828813476895
+ "median": 893.5318540000001,
+ "p95": 920.659542,
+ "min": 860.561209,
+ "max": 996.611,
+ "stdev": 29.614866610485592
},
"rss_kb": {
"samples": [
- 93436.0,
- 93540.0,
- 93848.0,
- 93348.0,
- 94300.0,
- 93380.0,
- 93796.0,
- 93912.0,
- 94216.0,
- 93928.0,
- 93572.0,
- 93488.0,
- 93024.0,
- 93736.0,
- 93384.0,
- 94040.0,
- 93236.0,
- 93852.0,
- 93788.0,
- 93456.0
+ 85104.0,
+ 84976.0,
+ 84912.0,
+ 84896.0,
+ 84960.0,
+ 84880.0,
+ 84960.0,
+ 84912.0,
+ 85056.0,
+ 85072.0,
+ 85056.0,
+ 84960.0,
+ 84976.0,
+ 85024.0,
+ 85040.0,
+ 84960.0,
+ 84960.0,
+ 84976.0,
+ 84960.0,
+ 84912.0
],
"sample_count": 20,
- "median": 93654.0,
- "p95": 94216.0,
- "min": 93024.0,
- "max": 94300.0,
- "stdev": 323.3202746503844
+ "median": 84960.0,
+ "p95": 85072.0,
+ "min": 84880.0,
+ "max": 85104.0,
+ "stdev": 60.9051721941577
},
"measured_command": [
- "~/.cache/perry-bench-tools/bun-1.3.14/bun",
+ "~/.bun/bin/bun",
"run",
"benchmarks/honest_bench/workloads/3_image_convolution/node/image_conv.ts"
]
@@ -5788,207 +5788,207 @@
"perry": {
"wall_ms": {
"samples": [
- 1835.684334,
- 1830.917012,
- 1820.831388,
- 1902.209639,
- 1896.768158,
- 1902.603285,
- 1831.581021,
- 1808.209619,
- 1828.928679,
- 1813.872353,
- 1829.227837,
- 1843.676358,
- 1839.095554,
- 1813.338195,
- 1831.451449,
- 1841.129201,
- 1815.767993,
- 1814.921954,
- 1843.768319,
- 1809.612619
+ 2125.74275,
+ 2118.867458,
+ 2126.556541,
+ 2143.62475,
+ 2125.217375,
+ 2124.28275,
+ 2120.7775,
+ 2126.303667,
+ 2124.806708,
+ 2126.673875,
+ 2124.945958,
+ 2133.391958,
+ 2126.010125,
+ 2123.865041,
+ 2125.50225,
+ 2125.618709,
+ 2126.467875,
+ 2126.620416,
+ 2125.141459,
+ 2123.684959
],
"sample_count": 20,
- "median": 1831.1842305,
- "p95": 1902.209639,
- "min": 1808.209619,
- "max": 1902.603285,
- "stdev": 28.57335238605387
+ "median": 2125.5604795,
+ "p95": 2133.391958,
+ "min": 2118.867458,
+ "max": 2143.62475,
+ "stdev": 4.802340072536689
},
"rss_kb": {
"samples": [
- 794516.0,
- 794448.0,
- 794688.0,
- 790400.0,
- 794476.0,
- 802608.0,
- 794492.0,
- 802804.0,
- 794380.0,
- 794476.0,
- 794412.0,
- 802628.0,
- 802696.0,
- 790556.0,
- 794812.0,
- 794464.0,
- 794468.0,
- 802672.0,
- 794480.0,
- 802876.0
+ 691536.0,
+ 691520.0,
+ 691536.0,
+ 691536.0,
+ 691552.0,
+ 691520.0,
+ 691520.0,
+ 691520.0,
+ 691520.0,
+ 691552.0,
+ 691520.0,
+ 691520.0,
+ 691520.0,
+ 691520.0,
+ 691536.0,
+ 691504.0,
+ 691552.0,
+ 691552.0,
+ 691536.0,
+ 691504.0
],
"sample_count": 20,
- "median": 794486.0,
- "p95": 802804.0,
- "min": 790400.0,
- "max": 802876.0,
- "stdev": 4194.647236657691
+ "median": 691520.0,
+ "p95": 691552.0,
+ "min": 691504.0,
+ "max": 691552.0,
+ "stdev": 14.729562111617575
},
"measured_command": [
"benchmarks/honest_bench/workloads/1_json_pipeline/perry/json_pipeline",
"benchmarks/honest_bench/assets/input.json",
- "/tmp/out_perry.json"
+ "/private/tmp/out_perry.json"
]
},
"node": {
"wall_ms": {
"samples": [
- 1329.248393,
- 1227.612324,
- 1220.61599,
- 1248.038698,
- 1252.098939,
- 1284.885363,
- 1343.372498,
- 1214.058725,
- 1172.592754,
- 1194.454026,
- 1160.372635,
- 1310.195014,
- 1137.366935,
- 1134.893957,
- 1156.61586,
- 1156.097962,
- 1161.174972,
- 1158.708467,
- 1170.386123,
- 1155.237786
+ 859.66525,
+ 866.193333,
+ 872.967958,
+ 894.762083,
+ 869.156083,
+ 866.419042,
+ 865.216917,
+ 863.695625,
+ 866.723084,
+ 863.324458,
+ 870.498125,
+ 863.730792,
+ 865.380209,
+ 863.84175,
+ 861.174375,
+ 859.415042,
+ 861.901,
+ 857.734458,
+ 871.634667,
+ 879.45875
],
"sample_count": 20,
- "median": 1183.52339,
- "p95": 1329.248393,
- "min": 1134.893957,
- "max": 1343.372498,
- "stdev": 63.90039831765598
+ "median": 865.2985630000001,
+ "p95": 879.45875,
+ "min": 857.734458,
+ "max": 894.762083,
+ "stdev": 8.088863849702065
},
"rss_kb": {
"samples": [
- 579536.0,
- 578028.0,
- 579748.0,
- 581364.0,
- 581292.0,
- 579344.0,
- 579840.0,
- 581136.0,
- 580952.0,
- 580956.0,
- 579660.0,
- 579420.0,
- 580764.0,
- 579800.0,
- 581292.0,
- 580600.0,
- 580776.0,
- 581368.0,
- 580820.0,
- 581160.0
+ 793600.0,
+ 793200.0,
+ 793520.0,
+ 793456.0,
+ 793376.0,
+ 793600.0,
+ 793376.0,
+ 793344.0,
+ 793776.0,
+ 793552.0,
+ 793616.0,
+ 793760.0,
+ 793568.0,
+ 793520.0,
+ 792944.0,
+ 793328.0,
+ 793744.0,
+ 793472.0,
+ 793520.0,
+ 793888.0
],
"sample_count": 20,
- "median": 580770.0,
- "p95": 581364.0,
- "min": 578028.0,
- "max": 581368.0,
- "stdev": 888.1086420027676
+ "median": 793520.0,
+ "p95": 793776.0,
+ "min": 792944.0,
+ "max": 793888.0,
+ "stdev": 209.89140049082525
},
"measured_command": [
- "~/.cache/perry-bench-tools/node-v22.23.1-linux-x64/bin/node",
+ "~/public-baseline-toolchains/node-v22.23.1-darwin-arm64/bin/node",
"--experimental-strip-types",
"--disable-warning=MODULE_TYPELESS_PACKAGE_JSON",
"benchmarks/honest_bench/workloads/1_json_pipeline/node/json_pipeline.ts",
"benchmarks/honest_bench/assets/input.json",
- "/tmp/out_node.json"
+ "/private/tmp/out_node.json"
]
},
"bun": {
"wall_ms": {
"samples": [
- 624.340689,
- 625.109945,
- 624.264216,
- 626.066722,
- 619.589467,
- 633.374158,
- 619.003492,
- 624.229,
- 621.666075,
- 618.004186,
- 624.870768,
- 627.110832,
- 623.766186,
- 621.193932,
- 624.222899,
- 622.828896,
- 626.464414,
- 623.176665,
- 621.693646,
- 635.261472
+ 553.527,
+ 555.022666,
+ 556.174208,
+ 554.580583,
+ 556.0665,
+ 555.823042,
+ 555.402208,
+ 555.143458,
+ 556.448125,
+ 559.463,
+ 555.009542,
+ 556.814083,
+ 553.749292,
+ 555.789833,
+ 553.118708,
+ 555.472334,
+ 554.166625,
+ 555.872791,
+ 556.340166,
+ 558.020167
],
"sample_count": 20,
- "median": 624.2259495000001,
- "p95": 633.374158,
- "min": 618.004186,
- "max": 635.261472,
- "stdev": 4.0997716152076675
+ "median": 555.6310835,
+ "p95": 558.020167,
+ "min": 553.118708,
+ "max": 559.463,
+ "stdev": 1.4516802680277923
},
"rss_kb": {
"samples": [
- 603524.0,
- 603600.0,
- 603804.0,
- 603488.0,
- 603620.0,
- 603596.0,
- 603300.0,
- 603464.0,
- 603580.0,
- 603688.0,
- 604032.0,
- 603720.0,
- 603484.0,
- 603712.0,
- 603436.0,
- 603716.0,
- 603520.0,
- 603468.0,
- 603244.0,
- 603968.0
+ 593248.0,
+ 594352.0,
+ 593472.0,
+ 591536.0,
+ 593536.0,
+ 594432.0,
+ 594288.0,
+ 594720.0,
+ 594288.0,
+ 593360.0,
+ 591568.0,
+ 593376.0,
+ 592832.0,
+ 593280.0,
+ 593488.0,
+ 593248.0,
+ 593408.0,
+ 594832.0,
+ 593632.0,
+ 593472.0
],
"sample_count": 20,
- "median": 603588.0,
- "p95": 603968.0,
- "min": 603244.0,
- "max": 604032.0,
- "stdev": 191.08730988739154
+ "median": 593472.0,
+ "p95": 594720.0,
+ "min": 591536.0,
+ "max": 594832.0,
+ "stdev": 847.5757429280288
},
"measured_command": [
- "~/.cache/perry-bench-tools/bun-1.3.14/bun",
+ "~/.bun/bin/bun",
"run",
"benchmarks/honest_bench/workloads/1_json_pipeline/node/json_pipeline.ts",
"benchmarks/honest_bench/assets/input.json",
- "/tmp/out_bun.json"
+ "/private/tmp/out_bun.json"
]
}
}
@@ -6002,207 +6002,207 @@
"perry": {
"wall_ms": {
"samples": [
- 19.778593,
- 19.461461,
- 19.82479,
- 19.624095,
- 19.053189,
- 19.859093,
- 19.576235,
- 19.538775,
- 20.551216,
- 19.78725,
- 20.096217,
- 19.569043,
- 18.936972,
- 19.509411,
- 19.145902,
- 19.995809,
- 19.759357,
- 19.237503,
- 19.449729,
- 19.568782
+ 55.80425,
+ 55.439084,
+ 55.579042,
+ 55.30675,
+ 55.495333,
+ 55.365083,
+ 55.629,
+ 55.605,
+ 55.594459,
+ 55.491583,
+ 55.422125,
+ 55.276625,
+ 55.580042,
+ 55.627708,
+ 55.766875,
+ 55.349625,
+ 55.509166,
+ 55.617584,
+ 55.348042,
+ 55.667042
],
"sample_count": 20,
- "median": 19.572639000000002,
- "p95": 20.096217,
- "min": 18.936972,
- "max": 20.551216,
- "stdev": 0.3636973517444003
+ "median": 55.544104000000004,
+ "p95": 55.766875,
+ "min": 55.276625,
+ "max": 55.80425,
+ "stdev": 0.14507209757561892
},
"rss_kb": {
"samples": [
- 35832.0,
- 35920.0,
- 35836.0,
- 36124.0,
- 35916.0,
- 36056.0,
- 36000.0,
- 35884.0,
- 35756.0,
- 35920.0,
- 35916.0,
- 35568.0,
- 36080.0,
- 35992.0,
- 35880.0,
- 35928.0,
- 36116.0,
- 35992.0,
- 36028.0,
- 35884.0
+ 11568.0,
+ 11568.0,
+ 11568.0,
+ 11568.0,
+ 11568.0,
+ 11568.0,
+ 11568.0,
+ 11584.0,
+ 11584.0,
+ 11568.0,
+ 11568.0,
+ 11568.0,
+ 11568.0,
+ 11584.0,
+ 11584.0,
+ 11584.0,
+ 11568.0,
+ 11584.0,
+ 11568.0,
+ 11568.0
],
"sample_count": 20,
- "median": 35920.0,
- "p95": 36116.0,
- "min": 35568.0,
- "max": 36124.0,
- "stdev": 126.46121935202112
+ "median": 11568.0,
+ "p95": 11584.0,
+ "min": 11568.0,
+ "max": 11584.0,
+ "stdev": 7.332121111929344
},
"measured_command": [
"benchmarks/honest_bench/workloads/1_json_pipeline/perry/json_pipeline",
"benchmarks/honest_bench/assets/input_small.json",
- "/tmp/out_perry.json"
+ "/private/tmp/out_perry.json"
]
},
"node": {
"wall_ms": {
"samples": [
- 54.736041,
- 53.614096,
- 53.743457,
- 51.094371,
- 53.587717,
- 52.98934,
- 51.670737,
- 53.009598,
- 54.034882,
- 50.515881,
- 51.521488,
- 52.47569,
- 54.06073,
- 52.984821,
- 50.570152,
- 51.398459,
- 50.739238,
- 53.55204,
- 51.235835,
- 53.238073
+ 102.07275,
+ 99.732875,
+ 101.541042,
+ 99.914667,
+ 99.369291,
+ 99.453083,
+ 102.510291,
+ 101.12325,
+ 99.672208,
+ 98.972417,
+ 99.009875,
+ 100.693166,
+ 101.206959,
+ 99.426291,
+ 99.600583,
+ 100.31025,
+ 98.49325,
+ 98.970417,
+ 99.412917,
+ 98.558292
],
"sample_count": 20,
- "median": 52.9870805,
- "p95": 54.06073,
- "min": 50.515881,
- "max": 54.736041,
- "stdev": 1.2905891382162678
+ "median": 99.63639549999999,
+ "p95": 102.07275,
+ "min": 98.49325,
+ "max": 102.510291,
+ "stdev": 1.12759068302204
},
"rss_kb": {
"samples": [
- 60952.0,
- 60724.0,
- 60800.0,
- 61004.0,
- 60952.0,
- 60796.0,
- 60640.0,
- 61096.0,
- 60976.0,
- 60880.0,
- 61228.0,
- 60968.0,
- 60752.0,
- 61016.0,
- 60676.0,
- 60852.0,
- 60984.0,
- 60932.0,
- 60868.0,
- 60856.0
+ 65760.0,
+ 65680.0,
+ 65536.0,
+ 65568.0,
+ 65680.0,
+ 65760.0,
+ 65648.0,
+ 65792.0,
+ 65696.0,
+ 65712.0,
+ 65648.0,
+ 65584.0,
+ 65648.0,
+ 65680.0,
+ 65568.0,
+ 65632.0,
+ 65680.0,
+ 65776.0,
+ 65808.0,
+ 65504.0
],
"sample_count": 20,
- "median": 60906.0,
- "p95": 61096.0,
- "min": 60640.0,
- "max": 61228.0,
- "stdev": 139.85363777892945
+ "median": 65680.0,
+ "p95": 65792.0,
+ "min": 65504.0,
+ "max": 65808.0,
+ "stdev": 83.88563643437415
},
"measured_command": [
- "~/.cache/perry-bench-tools/node-v22.23.1-linux-x64/bin/node",
+ "~/public-baseline-toolchains/node-v22.23.1-darwin-arm64/bin/node",
"--experimental-strip-types",
"--disable-warning=MODULE_TYPELESS_PACKAGE_JSON",
"benchmarks/honest_bench/workloads/1_json_pipeline/node/json_pipeline.ts",
"benchmarks/honest_bench/assets/input_small.json",
- "/tmp/out_node.json"
+ "/private/tmp/out_node.json"
]
},
"bun": {
"wall_ms": {
"samples": [
- 28.31262,
- 28.22738,
- 28.310285,
- 27.132165,
- 27.774024,
- 28.230075,
- 28.373233,
- 27.872147,
- 27.858562,
- 27.619265,
- 27.803158,
- 27.550486,
- 27.177049,
- 28.768351,
- 27.808929,
- 27.868961,
- 27.561156,
- 27.903646,
- 27.75583,
- 28.159423
+ 66.982167,
+ 66.788416,
+ 66.925042,
+ 66.822,
+ 66.835792,
+ 66.84625,
+ 66.534709,
+ 66.654917,
+ 66.677792,
+ 66.611708,
+ 66.83275,
+ 66.765834,
+ 67.18425,
+ 66.664625,
+ 66.728541,
+ 66.550208,
+ 66.600041,
+ 66.833709,
+ 66.766,
+ 66.814792
],
"sample_count": 20,
- "median": 27.8637615,
- "p95": 28.373233,
- "min": 27.132165,
- "max": 28.768351,
- "stdev": 0.3927842738369083
+ "median": 66.777208,
+ "p95": 66.982167,
+ "min": 66.534709,
+ "max": 67.18425,
+ "stdev": 0.15100341865013464
},
"rss_kb": {
"samples": [
- 40356.0,
- 40516.0,
- 40448.0,
- 40516.0,
- 40156.0,
- 40516.0,
- 40524.0,
- 40516.0,
- 40624.0,
- 40580.0,
- 40456.0,
- 40388.0,
- 40336.0,
- 40512.0,
- 40140.0,
- 40484.0,
- 40704.0,
- 40368.0,
- 40332.0,
- 40536.0
+ 30848.0,
+ 30912.0,
+ 30928.0,
+ 30848.0,
+ 30880.0,
+ 30880.0,
+ 30976.0,
+ 30944.0,
+ 30848.0,
+ 30864.0,
+ 30896.0,
+ 30896.0,
+ 30928.0,
+ 30912.0,
+ 30848.0,
+ 30880.0,
+ 30912.0,
+ 30928.0,
+ 30912.0,
+ 30864.0
],
"sample_count": 20,
- "median": 40498.0,
- "p95": 40624.0,
- "min": 40140.0,
- "max": 40704.0,
- "stdev": 137.09208584013885
+ "median": 30896.0,
+ "p95": 30944.0,
+ "min": 30848.0,
+ "max": 30976.0,
+ "stdev": 35.2272621700864
},
"measured_command": [
- "~/.cache/perry-bench-tools/bun-1.3.14/bun",
+ "~/.bun/bin/bun",
"run",
"benchmarks/honest_bench/workloads/1_json_pipeline/node/json_pipeline.ts",
"benchmarks/honest_bench/assets/input_small.json",
- "/tmp/out_bun.json"
+ "/private/tmp/out_bun.json"
]
}
}
diff --git a/benchmarks/suite/results/RESULTS.md b/benchmarks/suite/results/RESULTS.md
index 78212c19e1..45f3b43815 100644
--- a/benchmarks/suite/results/RESULTS.md
+++ b/benchmarks/suite/results/RESULTS.md
@@ -1,40 +1,40 @@
# suite/ Node and Bun Results (generated)
-Evidence: [`public-node-bun-v1.json`](../../results/public-node-bun-v1.json) · commit `827a92bad5a589e94e1630994185693ada903fe2`
-Perry: `perry 0.5.1519` · Node: `v22.23.1` · Bun: `1.3.14`
+Evidence: [`public-node-bun-v1.json`](../../results/public-node-bun-v1.json) · commit `689b1ffbab1b9cc1825ce69d6cf7cbe50fabb168`
+Perry: `perry 0.5.1636` · Node: `v22.23.1` · Bun: `1.3.14`
Policy: 5 measured samples per runtime and benchmark; incomplete or incorrect rows are rejected.
| Benchmark | Perry median | Node median | Bun median | Result |
|---|---:|---:|---:|---|
-| 02_loop_overhead | 74 ms | 75 ms | 74 ms | mixed |
-| 03_array_write | 4 ms | 5 ms | 5 ms | win vs both |
-| 04_array_read | 5 ms | 7 ms | 9 ms | win vs both |
-| 05_fibonacci | 315 ms | 698 ms | 426 ms | win vs both |
-| 06_math_intensive | 44 ms | 43 ms | 47 ms | mixed |
-| 07_object_create | 4 ms | 4 ms | 7 ms | mixed |
-| 08_string_concat | 5 ms | 37 ms | 12 ms | win vs both |
-| 09_method_calls | 6 ms | 9 ms | 4 ms | mixed |
-| 10_nested_loops | 25 ms | 12 ms | 12 ms | loss vs both |
-| 11_prime_sieve | 4 ms | 4 ms | 5 ms | mixed |
-| 12_binary_trees | 6 ms | 5 ms | 9 ms | mixed |
-| 13_factorial | 59 ms | 95 ms | 61 ms | win vs both |
-| 14_closure | 29 ms | 30 ms | 29 ms | mixed |
-| 15_mandelbrot | 15 ms | 17 ms | 16 ms | win vs both |
-| 16_matrix_multiply | 22 ms | 24 ms | 22 ms | mixed |
-| bench_gc_pressure | 12 ms | 15 ms | 28 ms | win vs both |
-| bench_json_roundtrip | 184 ms | 380 ms | 185 ms | win vs both |
-| bench_object_property | 26 ms | 13 ms | 17 ms | loss vs both |
-| bench_int_arithmetic | 37 ms | 77 ms | 36 ms | mixed |
-| bench_buffer_readwrite | 79 ms | 60 ms | 76 ms | loss vs both |
-| bench_array_grow | 8 ms | 28 ms | 19 ms | win vs both |
-| bench_string_heavy | 32 ms | 37 ms | 31 ms | mixed |
-| bench_numeric_array_numeric | 4 ms | 5 ms | 3 ms | mixed |
+| 02_loop_overhead | 125 ms | 126 ms | 126 ms | win vs both |
+| 03_array_write | 1 ms | 6 ms | 5 ms | win vs both |
+| 04_array_read | 9 ms | 11 ms | 14 ms | win vs both |
+| 05_fibonacci | 338 ms | 913 ms | 504 ms | win vs both |
+| 06_math_intensive | 48 ms | 49 ms | 49 ms | win vs both |
+| 07_object_create | 8 ms | 5 ms | 6 ms | loss vs both |
+| 08_string_concat | 5 ms | 31 ms | 6 ms | win vs both |
+| 09_method_calls | 34 ms | 11 ms | 8 ms | loss vs both |
+| 10_nested_loops | 17 ms | 18 ms | 19 ms | win vs both |
+| 11_prime_sieve | 6 ms | 5 ms | 5 ms | loss vs both |
+| 12_binary_trees | 13 ms | 6 ms | 6 ms | loss vs both |
+| 13_factorial | 94 ms | 95 ms | 95 ms | win vs both |
+| 14_closure | 47 ms | 49 ms | 49 ms | win vs both |
+| 15_mandelbrot | 25 ms | 24 ms | 29 ms | mixed |
+| 16_matrix_multiply | 18 ms | 32 ms | 33 ms | win vs both |
+| bench_gc_pressure | 13 ms | 15 ms | 20 ms | win vs both |
+| bench_json_roundtrip | 142 ms | 387 ms | 220 ms | win vs both |
+| bench_object_property | 9 ms | 16 ms | 10 ms | win vs both |
+| bench_int_arithmetic | 52 ms | 93 ms | 38 ms | mixed |
+| bench_buffer_readwrite | 32 ms | 97 ms | 193 ms | win vs both |
+| bench_array_grow | 8 ms | 13 ms | 9 ms | win vs both |
+| bench_string_heavy | 36 ms | 42 ms | 28 ms | mixed |
+| bench_numeric_array_numeric | 7 ms | 5 ms | 4 ms | loss vs both |
| bench_numeric_array_downgrade | 4 ms | 6 ms | 5 ms | win vs both |
## Summary
-- Wins versus both peers: **10**
-- Losses versus both peers: **3**
-- Mixed or tied rows: **11**
+- Wins versus both peers: **16**
+- Losses versus both peers: **5**
+- Mixed or tied rows: **3**
> Historical note: the former v0.5.908 single-run commentary is archived in Git history and is not current evidence.
diff --git a/changelog.d/10977-public-baseline-manifest.md b/changelog.d/10977-public-baseline-manifest.md
new file mode 100644
index 0000000000..2cb0672b9a
--- /dev/null
+++ b/changelog.d/10977-public-baseline-manifest.md
@@ -0,0 +1 @@
+Fix public benchmark input hashing to retain the complete root Cargo manifest while normalizing only the value of `[workspace.package].version`. Profiles, dependencies, features, workspace members and edition changes invalidate evidence. Tests exercise Git-discovered fingerprints and the validator in both directions. Regenerate the previously stale public artifact on the quiet Apple M1 mini with pinned Node v22.23.1 and Bun 1.3.14: 50 workloads, 1,443 raw timing samples, all correctness checks passing. Refresh the generated README and suite tables, including losses. Against the regenerated evidence, a release-version bump stays green while profile and dependency mutations fail and their reverts pass.
diff --git a/tests/test_public_baseline.py b/tests/test_public_baseline.py
index dbe22c1542..5f2b45b3d4 100644
--- a/tests/test_public_baseline.py
+++ b/tests/test_public_baseline.py
@@ -1,7 +1,12 @@
import json
+import subprocess
import tempfile
import unittest
from pathlib import Path
+from datetime import datetime, timezone
+from unittest.mock import patch
+
+from benchmarks import public_baseline as pb
from benchmarks.benchmark_gate import ArtifactError, build_artifact
from benchmarks.public_baseline import (
@@ -11,8 +16,7 @@
README_START,
ROOT,
SOURCE_PATHS,
- _CARGO_VERSION_RE,
- _cargo_profile_tables,
+ _normalize_cargo_workspace_version,
_is_resolved_path,
_normalize_checkout_newlines,
_replace_block,
@@ -30,6 +34,72 @@ def metric(values):
return {"wall_ms": distribution(values), "rss_kb": distribution([100] * len(values))}
+class CargoFingerprintTests(unittest.TestCase):
+ """Exercise Git discovery, byte normalization, hashing and the real validator."""
+
+ MANIFEST = b'''[workspace]
+members = ["crates/perry"]
+[workspace.package]
+version = "0.5.1635"
+edition = "2021"
+[workspace.dependencies]
+serde = { version = "1.0", features = ["derive"] }
+[workspace.dependencies.other]
+version = "2.0"
+[profile.release]
+opt-level = 3
+'''
+
+ def setUp(self):
+ directory = tempfile.TemporaryDirectory()
+ self.addCleanup(directory.cleanup)
+ root = Path(directory.name)
+ self.manifest = root / "Cargo.toml"
+ self.manifest.write_bytes(self.MANIFEST)
+ for args in (("init", "-q"), ("add", "Cargo.toml")):
+ subprocess.run(["git", *args], cwd=root, check=True, capture_output=True)
+ root_patch = patch.object(pb, "ROOT", root)
+ root_patch.start()
+ self.addCleanup(root_patch.stop)
+ self.original = pb.tracked_fingerprint(SOURCE_PATHS)
+ # In-memory validator fixture only; never rewrite published evidence.
+ self.artifact = json.loads(pb.DEFAULT_ARTIFACT.read_text())
+ self.artifact["generated_at"] = datetime.now(timezone.utc).isoformat()
+ self.artifact["freshness"] = {
+ "source_fingerprint": self.original,
+ "harness_fingerprint": pb.tracked_fingerprint(HARNESS_PATHS),
+ }
+ pb.validate_public(self.artifact, 45)
+
+ def test_version_only_bump_keeps_fingerprint_and_gate_green(self):
+ changed = self.MANIFEST.replace(b'0.5.1635', b'0.5.1636')
+ self.assertNotEqual(changed, self.MANIFEST)
+ self.manifest.write_bytes(changed)
+ self.assertEqual(pb.tracked_fingerprint(SOURCE_PATHS), self.original)
+ pb.validate_public(self.artifact, 45)
+
+ def test_real_manifest_changes_move_fingerprint_and_turn_gate_red(self):
+ changes = (
+ ("profile", b'opt-level = 3', b'opt-level = 2'),
+ ("inline dependency", b'version = "1.0"', b'version = "1.1"'),
+ ("dependency table", b'version = "2.0"', b'version = "2.1"'),
+ ("feature flags", b'["derive"]', b'["derive", "rc"]'),
+ ("workspace member", b'"crates/perry"', b'"crates/other"'),
+ ("edition", b'edition = "2021"', b'edition = "2024"'),
+ )
+ for label, old, new in changes:
+ with self.subTest(input=label):
+ changed = self.MANIFEST.replace(old, new)
+ self.assertNotEqual(changed, self.MANIFEST)
+ self.manifest.write_bytes(changed)
+ self.assertNotEqual(pb.tracked_fingerprint(SOURCE_PATHS), self.original)
+ with self.assertRaisesRegex(ArtifactError, "benchmark inputs changed"):
+ pb.validate_public(self.artifact, 45)
+ self.manifest.write_bytes(self.MANIFEST)
+ self.assertEqual(pb.tracked_fingerprint(SOURCE_PATHS), self.original)
+ pb.validate_public(self.artifact, 45)
+
+
class PublicBaselineTests(unittest.TestCase):
@staticmethod
def honest_metadata():
@@ -133,33 +203,20 @@ def test_generated_readme_reports_losses_and_wins(self):
self.assertIn("win vs both", block)
self.assertIn("`abcdef123456`", block)
- def test_cargo_version_bump_does_not_change_fingerprint_input(self):
- # A workspace version bump must not move the source fingerprint: the
- # volatile version line is normalized out before hashing. Regression
- # guard — before this, the freshness gate reddened on every PR that
- # followed a version bump (Cargo.toml is a fingerprinted source path).
- def normalize(data):
- normalized = _CARGO_VERSION_RE.sub(b'version = "0.0.0"', data)
- return _cargo_profile_tables(normalized)
-
- base = (
- b'[workspace.package]\nversion = "0.5.1258"\nedition = "2021"\n'
- b'[profile.release]\nopt-level = 3\n'
- )
- bumped = (
- b'[workspace.package]\nversion = "0.5.1300"\nedition = "2021"\n'
- b'[profile.release]\nopt-level = 3\n'
- )
- self.assertEqual(normalize(base), normalize(bumped))
-
- # Workspace/dependency plumbing is outside the extract, while a build
- # profile change must still move it.
- dependency_change = base.replace(
- b"[profile.release]", b'foo = "1"\n[profile.release]'
- )
- profile_change = base.replace(b"opt-level = 3", b"opt-level = 2")
- self.assertEqual(normalize(base), normalize(dependency_change))
- self.assertNotEqual(normalize(base), normalize(profile_change))
+ def test_only_workspace_package_version_value_is_normalized(self):
+ for quote in (b'"', b"'"):
+ with self.subTest(quote=quote):
+ base = (
+ b'[workspace.package] # release metadata\n'
+ b' version = ' + quote + b'0.5.1635' + quote + b' # release\n'
+ b'edition = "2021"\n'
+ b'[workspace.dependencies.serde] # dependency metadata\n'
+ b'version = "1.0"\n'
+ )
+ self.assertEqual(
+ _normalize_cargo_workspace_version(base),
+ base.replace(b'0.5.1635', b'0.0.0'),
+ )
def test_fingerprint_input_is_checkout_line_ending_independent(self):
self.assertEqual(