-
Notifications
You must be signed in to change notification settings - Fork 415
Excessive GC on whole heap only #7508
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
Conversation
bcba533 to
dd1d186
Compare
|
@dmitripivkine please, review |
dd1d186 to
c78cd91
Compare
|
@babsingh Would you please help to merge? |
c78cd91 to
fe160d7
Compare
fe160d7 to
5884832
Compare
babsingh
left a comment
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.
minor nits.
5884832 to
c0a7029
Compare
When excessive GC criteria is evaluated, beside GC throughput overhead, reclaimed memory is considered too, which is meaningful on Global GCs only. However, there are collectors (like Balanced PGC in OpenJ9) that are global in a sense that may collect ANY part/subset of the heap, but not necessarily the whole heap. This may lead to premature excessive GC where such GCs are frequent, and their reclaim memory is very low hence meeting the criteria, although effectively irrelevant. This change strengthens the global GC criteria by also considering the GC cycle type (beside just the type of subclass of MM_Collector), so that only STW Whole Heap GCs are considered for memory reclamation criteria. Signed-off-by: Aleksandar Micic <Aleksandar_Micic@ca.ibm.com>
c0a7029 to
95dcaef
Compare
|
jenkins build all |
dmitripivkine
left a comment
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.
I think we can get fine tuning in the future, this one allows us to avoid false Excessive GC triggering for now.
LinHu2016
left a comment
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.
LGTM
When excessive GC criteria is evaluated, beside GC throughput overhead,
reclaimed memory is considered too, which is meaningful on Global GCs
only.
However, there are collectors (like Balanced PGC in OpenJ9) that are
global in a sense that may collect ANY part/subset of the heap, but not
necessarily the whole heap. This may lead to premature excessive GC
where such GCs are frequent, and their reclaim memory is very low hence
meeting the criteria, although effectively irrelevant.
This change strengthens the global GC criteria by also considering the
GC cycle type (beside just the type of subclass of MM_Collector), so
that only STW Whole Heap GCs are considered for memory reclamation
criteria.
Signed-off-by: Aleksandar Micic Aleksandar_Micic@ca.ibm.com