Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

adjust benchmark close to real-life usage #1537

Merged
merged 1 commit into from
Dec 24, 2023

Conversation

lifeart
Copy link
Contributor

@lifeart lifeart commented Dec 24, 2023

Referencing to https://github.com/krausest/js-framework-benchmark/blob/master/frameworks/keyed/ember/app/components/my-table.gjs

In short, I think it's good to use as many as possible glimmer-opcodes in benchmark.
Updated implementation includes ...attributes opcode, additional concat statement for class, fn and eq helper usage to improve DX (storing UI state outside of data models).

I don't think that we need to have very fast benchmark, because it's not target for us.
It may be slower comparing to krausest implementation, but should use most common patterns across ecosystem and highlight performance problems for it (example: #1321).

10k case reduced to 5k to reduce memory pressure (really bad on CI)
Throttle increased to 4 from 2 to increase resolution on relatively fast tasks (row select, row removal)

image

artifact-1.pdf

@lifeart lifeart force-pushed the adjust-benchmark branch 12 times, most recently from c6a826e to 07a522b Compare December 24, 2023 17:37
attempt to fix GC
reduce memory pressure
@lifeart lifeart marked this pull request as ready for review December 24, 2023 19:43
@NullVoxPopuli NullVoxPopuli merged commit 1070795 into glimmerjs:main Dec 24, 2023
6 checks passed
@lifeart lifeart deleted the adjust-benchmark branch December 24, 2023 19:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants