Using my GitHub Action to observe the performance regression fixed by PR #4440 #8
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This pull request mirrors #4440 which fixes the historical performance regression based on deep copy usage in indices for
shallow()
(as discovered in #4311) and includes twoatime
test cases - one to test for this (usessetindex()
), and one to check for another unrelated regression test case.This will trigger my GitHub Action, commenting a plot on this PR thread, along with the commit that generated it, the link to the artifact containing the test results, the elapsed time from the job's start to the completion of the installation steps, and the time it took to run all the tests. The comment will get updated on subsequent commits or pushes to this PR.
The plot is based on time and memory performance analysis using the
atime
package on different versions ofdata.table
, and will have the two test cases each with seven different labels for points associated with commits:after-integrating-4440
here),before-integrating-4440
here),data.table
on the platform),Since this replicates the PR that fixes the regression for 'Test regression fixed in #4440', I would expect the plot to show the commits associated with the HEAD, CRAN, Fixed, and Before labels to be fast and grouped together while base, merge-base, and Regression are slow.
For the other test case or 'Test regression fixed in #5463', I would expect all the commits to be fast except the one associated with 'Regression'. That and 'Before' as it stands, should be separate (the rest have the same performance).
Note that the positions of 'Before', 'Regression', and 'Fixed' don't vary from PR to PR as they are fixed commit SHAs set manually.
To reproduce on another fork, one can use the
git
commands I used locally on my clone of this repository:Then place my workflow under
.github/workflows
for thebefore-integrating-4440
branch, and include the tests underinst/atime
for theafter-integrating-4440
branch like I did here.