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
feat: "deno bench" subcommand #13713
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
mvp
- support for up to nanoseconds accuracy and formatting
- output should also contain min/max, can be displayed as
avg unit/op (min..max unit/op)
or we can take inspiration from criterion.rs BenchmarkDotNet hyperfine
optional/post mvp
- warmup before measuring (10-1000 iterations or 1s worth of iterations with minimum of 4-10 iterations)
time
option to limit benchmark to time quota- print hardware specs (see BenchmarkDotNet)
- benchmarks grouping / baseline to compare to (see hyperfine)
- compare results with previous run (see criterion)
Note to self: ops and resource sanitizers should be ripped out from the benchmarking setup. In preliminary tests they incurred significant cost and it's not clear that they are in anyway useful for benchmarking (might kick us out of some V8 optimizations). We can reconsider them at the later stage, but they shouldn't be added in the MVP PR. |
Co-authored-by: evan <github@evan.lol>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!
Closes #9175