-
-
Notifications
You must be signed in to change notification settings - Fork 10k
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
Implement custom delegators for drop methods #8183
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Memory Profile Summary--- master https://travis-ci.org/github/jekyll/jekyll/jobs/687015473
+++ PR https://travis-ci.org/github/jekyll/jekyll/jobs/687992324
- Total allocated: 299.74 MB (3113114 objects)
- Total retained: 19.37 MB (108879 objects)
+ Total allocated: 297.45 MB (3055734 objects)
+ Total retained: 19.37 MB (108887 objects) |
Workflow Summary--- master https://github.com/jekyll/jekyll/runs/1130077147
+++ PR https://github.com/jekyll/jekyll/runs/1133281825
- done in 25.671 seconds.
- done in 27.211 seconds.
- done in 25.857 seconds.
+ done in 24.043 seconds.
+ done in 25.37 seconds.
+ done in 24.911 seconds.
- Total allocated: 282.43 MB (2467827 objects)
+ Total allocated: 239.88 MB (1404029 objects)
Total retained: 37.81 MB (112069 objects) |
parkr
approved these changes
Sep 23, 2020
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.
This is neat! Nice optimization.
@jekyll: merge +dev |
jekyllbot
added a commit
that referenced
this pull request
Sep 23, 2020
This was referenced Mar 12, 2021
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Labels
feature
fix
frozen-due-to-age
internal
memory-optimization ⚡
Reduced memory usage for the work done
optimization ⚡
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.
Summary
While analyzing memory profile reports, I noticed that every call to a delegated method (generated by using Ruby's
Forwardable
module) results in allocation of an empty array.So, I propose to use an in-house set of delegator factories that addresses the above observation.