[not for merge] experiment: evaluate various strategies to improve performance#3276
[not for merge] experiment: evaluate various strategies to improve performance#3276dmaskasky wants to merge 19 commits intopmndrs:mainfrom
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
b98c6e2 to
f26a3ec
Compare
commit: |
|
This pull request is automatically built and testable in CodeSandbox. To see build info of the built libraries, click here or the icon next to each commit SHA. |
|
| Playground | Link |
|---|---|
| React demo | https://livecodes.io?x=id/5DMUJNTQU |
See documentations for usage instructions.
|
I ran some benchmarks to see how this change performs in practice. While the Symbol approach does show a nice improvement in atom creation (-25%), the overall impact on most hot paths appears to be modest (~1–4%). I hope this data is helpful for evaluating the direction. Benchmark Results: WeakMap → Symbol (PR #3276)Ran the same benchmark suite from #3275 against three versions: v2.10.0 (baseline), v2.19.0 (current), and this PR (built from source with the Symbol change applied on top of v2.19.0).
Results (median of 10 runs, ms — lower is better)
Summary
Ref: #3275 |
b7d878b to
e3e7435
Compare
d241006 to
cba0144
Compare
33772d6 to
ca523ee
Compare
ca523ee to
1a70e67
Compare
1a70e67 to
1dc9663
Compare
1dc9663 to
f179ef8
Compare
f179ef8 to
d46beba
Compare
d46beba to
cb5607b
Compare
cb5607b to
c76f4f5
Compare
Overwrite every benchmarks experiment with upstream/main internals so the next commit can reintroduce each variant as a focused diff. Made-with: Cursor
Reapply each experiment variant after the upstream-baseline commit so this latest commit cleanly shows how every experiment differs from upstream internals. Made-with: Cursor
16f68f3 to
7a19d66
Compare
Related Bug Reports or Discussions
#3275
Summary
Does the building block weak map negatively impact performance? This PR is an experiment to see if moving back to Symbol helps.
Check List
pnpm run fixfor formatting and linting code and docs