-
Notifications
You must be signed in to change notification settings - Fork 63
Manual GC Compaction #111
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
Merged
Merged
Manual GC Compaction #111
Conversation
This file contains hidden or 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
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66866 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67679 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
https://rubyci.org/logs/rubyci.s3.amazonaws.com/centos7/ruby-trunk/log/20190421T040003Z.fail.html.gz git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67678 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Re-committing ruby@7f09b5e
Backport changes from ruby/irb.
``` % ruby -ve 'p (nil..).first' ruby 2.6.3p62 (2019-04-16 revision 67580) [x86_64-darwin18] nil % ruby -ve 'p (nil..).begin' ruby 2.6.3p62 (2019-04-16 revision 67580) [x86_64-darwin18] nil ```
Wercker seems to randomly fail https://app.wercker.com/ruby/ruby/runs/mjit-test1/5cc3c1c423fcb70008db9b64?step=5cc3c46a03f4460007da0659 To help debugging, let me isolate the impact from GC.compact in the JIT testing on Wercker.
r59829 stopped clearing stack_start and enabled the code for !FIBER_USE_NATIVE, but we need to do the same for register_stack_start on ia64, otherwise we end up with NULL in cont_save_machine_stack. Closes: ruby#2155
It refers to `Method#receiver` in the doc, but there's no class reference in current doc. Some tools automatically make it a link so it's useful. Closes: ruby#2156
as it's unstable on the environment https://ci.appveyor.com/project/ruby/ruby/builds/24138134/job/i7e441u7se11w7ey
* string.c (str_duplicate): share the root shared string if the original string is already sharing, so that all shared strings refer the root shared string directly. indirect sharing can cause a dangling pointer. [Bug #15792]
Synced from ruby/irb@5feb361. This includes a support to colorize named Class instance on IRB inspect.
VCS::GITSVN#format_changelog generates previous format, similar to svn-log, and VCS::GIT#format_changelog stores just git-log as-is for now.
* Mostly to try the new git repository.
This prevents the constants from moving.
Aliasing a method preserves its visibility. These aliases turn formerly-public methods into private. Should make them public again. [Bug #15847]
I failed to collect any debug info in https://app.wercker.com/ruby/ruby/runs/mjit-test1/5cda57fcab79a30008f195f6?step=5cda6a4e1090c4000800772e It seems that it's due to this typo.
This function is used for marking / pinning vm stack values, so it should have "vm" in the function name to be more clear.
This commit adds an alternative packing strategy for compaction. Instead of packing towards "most pinned" pages, we can pack towards "most empty" pages. The idea is that we can double the heap size, then pack all objects towards the empty side of the heap. This will ensure maximum chaos for testing / verification.
IDs can't move, we need to use them to look up the symbol objects later.
This is my mistake, I thought they were regular objects, but apparently they are not. We don't need to pin them. Revert "Symbols can move so only cache IDs" This reverts commit 672ee5f.
jhawthorn
pushed a commit
that referenced
this pull request
Jul 20, 2020
jhawthorn
pushed a commit
that referenced
this pull request
May 12, 2021
YJIT: Improve codegen and type tracking in putobject
jhawthorn
pushed a commit
that referenced
this pull request
Aug 16, 2021
Add exits to yjit stats, convert at-exit reporting to Ruby
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
GC Compaction for MRI