Skip to content

Conversation

@BridgeAR
Copy link
Member

So far the benchmarks created a highly specialized function which
would inline exactly to the input. This changes it to provide a
more realistic view to actual input by changing the input on each
iteration. That prevents the function to be to specific.

It also reduces the number of iterations the benchmarks are run to
reduce the overall runtime. A microbenchmark should already show a
significant difference with lower iterations, otherwise the
significance for real world applications is only limited.

This is pulled out from #25278.

Checklist
  • make -j4 test (UNIX), or vcbuild test (Windows) passes
  • tests and/or benchmarks are included
  • documentation is changed or added
  • commit message follows commit guidelines

So far the benchmarks created a highly specialized function which would inline exactly to the input. This changes it to provide a more realistic view to actual input by changing the input on each iteration. That prevents the function to be to specific. It also reduces the number of iterations the benchmarks are run to reduce the overall runtime. A microbenchmark should already show a significant difference with lower iterations, otherwise the significance for real world applications is only limited.
@nodejs-github-botnodejs-github-bot added benchmark Issues and PRs related to the benchmark subsystem. path Issues and PRs related to the path subsystem. labels Feb 28, 2019
@Trott
Copy link
Member

Reminder since people often forget and/or don't know: Be sure to run make test-benchmark locally with these changes to make sure the benchmark tests don't need adjusting.

@BridgeAR
Copy link
MemberAuthor

@Trott I ran make test-benchmark locally and everything keeps on passing.

@BridgeARBridgeAR added the author ready PRs that have at least one approval, no pending requests for changes, and a CI started. label Mar 4, 2019
BridgeAR added a commit to BridgeAR/node that referenced this pull request Mar 5, 2019
So far the benchmarks created a highly specialized function which would inline exactly to the input. This changes it to provide a more realistic view to actual input by changing the input on each iteration. That prevents the function to be to specific. It also reduces the number of iterations the benchmarks are run to reduce the overall runtime. A microbenchmark should already show a significant difference with lower iterations, otherwise the significance for real world applications is only limited. PR-URL: nodejs#26359 Reviewed-By: Rich Trott <[email protected]> Reviewed-By: James M Snell <[email protected]>
@BridgeAR
Copy link
MemberAuthor

Landed in 038a1a4

@BridgeARBridgeAR closed this Mar 5, 2019
BridgeAR added a commit to BridgeAR/node that referenced this pull request Mar 12, 2019
So far the benchmarks created a highly specialized function which would inline exactly to the input. This changes it to provide a more realistic view to actual input by changing the input on each iteration. That prevents the function to be to specific. It also reduces the number of iterations the benchmarks are run to reduce the overall runtime. A microbenchmark should already show a significant difference with lower iterations, otherwise the significance for real world applications is only limited. PR-URL: nodejs#26359 Reviewed-By: Rich Trott <[email protected]> Reviewed-By: James M Snell <[email protected]>
BethGriggs pushed a commit that referenced this pull request Apr 16, 2019
So far the benchmarks created a highly specialized function which would inline exactly to the input. This changes it to provide a more realistic view to actual input by changing the input on each iteration. That prevents the function to be to specific. It also reduces the number of iterations the benchmarks are run to reduce the overall runtime. A microbenchmark should already show a significant difference with lower iterations, otherwise the significance for real world applications is only limited. PR-URL: #26359 Reviewed-By: Rich Trott <[email protected]> Reviewed-By: James M Snell <[email protected]>
@BethGriggsBethGriggs mentioned this pull request May 1, 2019
@BridgeARBridgeAR deleted the refactor-path-benchs branch January 20, 2020 11:53
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

author readyPRs that have at least one approval, no pending requests for changes, and a CI started.benchmarkIssues and PRs related to the benchmark subsystem.pathIssues and PRs related to the path subsystem.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@BridgeAR@nodejs-github-bot@Trott@jasnell