Skip to content

wip: benchmark with no map change transform plugin#9621

Closed
sapphi-red wants to merge 1 commit into
05-29-perf_avoid_unnecessary_intermediate_sourcemapsfrom
06-01-wip_benchmark_with_no_map_change_transform_plugin
Closed

wip: benchmark with no map change transform plugin#9621
sapphi-red wants to merge 1 commit into
05-29-perf_avoid_unnecessary_intermediate_sourcemapsfrom
06-01-wip_benchmark_with_no_map_change_transform_plugin

Conversation

@sapphi-red

Copy link
Copy Markdown
Member

No description provided.

sapphi-red commented Jun 1, 2026

Copy link
Copy Markdown
Member Author

How to use the Graphite Merge Queue

Add the label graphite: merge-when-ready to this PR to add it to the merge queue.

You must have a Graphite account in order to use the merge queue. Sign up using this link.

An organization admin has enabled the Graphite Merge Queue in this repository.

Please do not merge from GitHub as this will restart CI on PRs being processed by the merge queue.

This stack of pull requests is managed by Graphite. Learn more about stacking.

@sapphi-red sapphi-red closed this Jun 1, 2026
graphite-app Bot pushed a commit that referenced this pull request Jun 2, 2026
Claude gave me the following result with #9621:

<details>

### Empirical before/after (threejs, ~600 modules, sourcemap = File, real-FS `Bundler`, default allocator, 8 iters/run)

| Mode (transform behavior)                        | Metric        | Before (`f6653cb7b^`) | After (`f6653cb7b`) | Δ                     |
| ------------------------------------------------ | ------------- | --------------------- | ------------------- | --------------------- |
| **omitted** (changed code, no map)               | peak RSS      | ~97–104 MiB           | **~73 MiB**         | **−25–30 MiB (~28%)** |
|                                                  | time (median) | ~60–62 ms             | ~52–58 ms           | ~8–12% faster         |
| **null** (changed code, `map: null`)             | peak RSS      | ~97 MiB               | **~80 MiB**         | **−16 MiB (~17%)**    |
|                                                  | time (median) | ~62 ms                | ~57 ms              | ~8% faster            |
| **none** (no map-omitting transform) — *control* | peak RSS      | ~80 MiB               | ~78–80 MiB          | within noise          |
|                                                  | time          | ~56 ms                | ~56 ms              | within noise          |

Numbers were stable across 3 repeat runs each.

**Key signal:** in the *before* build, the map-omitting transform inflates peak RSS from the ~80 MiB baseline (the `none` control) up to ~97–104 MiB — that ~17–24 MiB *is* the intermediate sourcemaps. In the *after* build, `omitted` drops back to ~73 MiB (at/below baseline): the overhead is eliminated. The `none` control is unchanged, confirming the optimization is correctly scoped and doesn't regress ordinary builds.

</details>

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant