-
Notifications
You must be signed in to change notification settings - Fork 397
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
Bound Tenure Expand #3495
Bound Tenure Expand #3495
Conversation
66c5e33
to
601dc08
Compare
601dc08
to
bf30deb
Compare
@genie-omr build all |
@dmitripivkine can you review this as well please? |
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.
Looks good to me.
bf30deb
to
86487f7
Compare
added a couple of trace points |
gc/base/standard/Scavenger.cpp
Outdated
uintptr_t soaFreeMemorySize = _extensions->heap->getApproximateActiveFreeMemorySize(MEMORY_TYPE_OLD) - _extensions->heap->getApproximateActiveFreeLOAMemorySize(MEMORY_TYPE_OLD); | ||
|
||
/* We suspect that next scavegne will cause Tenure expansion, while Tenure free ratio is (was) already high enough */ | ||
if ((scavengerGCStats->_avgTenureBytes > soaFreeMemorySize) && (_extensions->freeOldHeapSizeOnLastGlobalGC > (_extensions->oldHeapSizeOnLastGlobalGC * midTenureFreeRatio))) { |
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.
there is some weird spacing on this line
@genie-omr build all |
gc/base/GCExtensionsBase.hpp
Outdated
@@ -1419,7 +1426,6 @@ class MM_GCExtensionsBase : public MM_BaseVirtual { | |||
, concurrentScavenger(false) | |||
, concurrentScavengerForced(false) | |||
, concurrentScavengerHWSupport(false) | |||
, concurrentScavengerBackgroundThreads(1) |
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.
just noticed that I mistakenly removed a line here. must fix this first
86487f7
to
d4d9756
Compare
Fixing issue in eclipse-omr#3492 When running Gencon with Concurrent Mark disabled, prevent the unbounded growth of Tenure space. Two new percolate reasons are introduced: - if Tenure free heap was already high (at least midway between min and max bounds) in previous global GC, and it's suspected that Scavenge will expand Tenure even more (due to low current Tenure free, and based on historic tenuring activity) start global GC instead - if Tenure free heap was not very high in previous GC, we'll allow Scavenges and Tenure expansion, but we will break the streak when hitting the max free bound, and start global GC Signed-off-by: Aleksandar Micic <amicic@ca.ibm.com>
d4d9756
to
8648c0d
Compare
@genie-omr build all |
Fixing issue in #3492
When running Gencon with Concurrent Mark disabled, prevent the unbounded
growth of Tenure space.
Two new percolate reasons are introduced:
max bounds) in previous global GC, and it's suspected that Scavenge will
expand Tenure even more (due to low current Tenure free, and based on
historic tenuring activity) start global GC instead
Scavenges and Tenure expansion, but we will break the streak when
hitting the max free bound, and start global GC
Signed-off-by: Aleksandar Micic amicic@ca.ibm.com