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

perf: remove setup operations from microbenchmarks #307

Merged
merged 1 commit into from
Jan 6, 2025
Merged

Conversation

reubeno
Copy link
Owner

@reubeno reubeno commented Jan 6, 2025

This makes no changes to the code-under-analysis; the perf deltas that show in the PR report are due to the changes in the definitions of the benchmarks.

Copy link

github-actions bot commented Jan 6, 2025

Test Results

    2 files      9 suites   1m 29s ⏱️
  572 tests   572 ✅ 0 💤 0 ❌
1 130 runs  1 130 ✅ 0 💤 0 ❌

Results for commit 8124f17.

♻️ This comment has been updated with latest results.

Copy link

github-actions bot commented Jan 6, 2025

Performance Benchmark Report

Benchmark name Baseline (μs) Test/PR (μs) Delta (μs) Delta %
expand_one_string 3.52 μs 2.31 μs -1.21 μs 🟢 -34.39%
for_loop 561998.39 μs 63.28 μs -561935.11 μs 🟢 -99.99%
instantiate_shell 61.99 μs 61.59 μs -0.40 μs ⚪ Unchanged
instantiate_shell_with_init_scripts 28666.65 μs 28262.13 μs -404.53 μs ⚪ Unchanged
parse_bash_completion 2820.16 μs 2850.73 μs 30.57 μs 🟠 +1.08%
parse_sample_script 4.36 μs 4.44 μs 0.08 μs 🟠 +1.88%
run_echo_builtin_command 91.97 μs 22.07 μs -69.90 μs ⚪ Unchanged
run_one_external_command 1825.26 μs 1901.14 μs 75.89 μs 🟠 +4.16%

Benchmarks removed:

  • run_one_external_command_directly
  • run_one_builtin_command

Benchmarks added:

  • function_call
  • eval_arithmetic
  • clone_shell_object

Code Coverage Report: Only Changed Files listed

Package Base Coverage New Coverage Difference
brush-shell/src/shell_factory.rs 🔴 34.78% 🔴 39.02% 🟢 4.24%
Overall Coverage 🟢 77.15% 🟢 76.9% 🔴 -0.25%

Minimum allowed coverage is 70%, this run produced 76.9%

@reubeno reubeno changed the title perf: update existing shell bench to be more microbenchmark-y perf: remove setup operations from microbenchmarks Jan 6, 2025
@reubeno reubeno marked this pull request as ready for review January 6, 2025 19:52
@reubeno reubeno enabled auto-merge (squash) January 6, 2025 19:52
@reubeno reubeno merged commit d72b7db into main Jan 6, 2025
16 of 17 checks passed
@reubeno reubeno deleted the benches branch January 6, 2025 19:58
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