Skip to content
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

[GC] Add IO related size policy for Parallel GC #847

Merged
merged 1 commit into from
Jul 31, 2024

Conversation

weixlu
Copy link
Collaborator

@weixlu weixlu commented Jul 29, 2024

Summary: add new parallel gc option UseIOPrioritySizePolicy to early shrink heap when io wait is high.

Testing: jtreg

Reviewers: maoliang.ml, yude.lyd

Issue: #846

CR: #847

weixlu added a commit to weixlu/dragonwell11 that referenced this pull request Jul 29, 2024
Summary: add new parallel gc option UseIOPrioritySizePolicy to early shrink heap when io wait is high.

Testing: jtreg

Reviewers: maoliang.ml, yude.lyd

Issue: dragonwell-project#846

CR: dragonwell-project#847
@weixlu weixlu force-pushed the decrease_heap_policy branch from 7fd0e9d to 93dc2e5 Compare July 29, 2024 02:51
weixlu added a commit that referenced this pull request Jul 30, 2024
Summary: add new parallel gc option UseIOPrioritySizePolicy to early shrink heap when io wait is high.

Testing: jtreg

Reviewers: maoliang.ml, yude.lyd

Issue: #846

CR: #847
@weixlu weixlu force-pushed the decrease_heap_policy branch from 93dc2e5 to 55132e3 Compare July 30, 2024 08:17
weixlu added a commit to weixlu/dragonwell11 that referenced this pull request Jul 30, 2024
Summary: add new parallel gc option UseIOPrioritySizePolicy to early shrink heap when io wait is high.

Testing: jtreg

Reviewers: maoliang.ml, yude.lyd

Issue: dragonwell-project#846

CR: dragonwell-project#847
@weixlu weixlu force-pushed the decrease_heap_policy branch from 55132e3 to 52efa83 Compare July 30, 2024 09:58
Copy link
Collaborator

@mmyxym mmyxym left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@weixlu weixlu requested a review from linade July 30, 2024 10:58
weixlu added a commit to dragonwell-project/dragonwell8 that referenced this pull request Jul 30, 2024
Summary: add new parallel gc option UseIOPrioritySizePolicy to early shrink heap when io wait is high.

Testing: jtreg

Reviewers: maoliang.ml, yude.lyd

Issue: dragonwell-project/dragonwell11#846

CR: dragonwell-project/dragonwell11#847
weixlu added a commit to dragonwell-project/dragonwell8 that referenced this pull request Jul 30, 2024
Summary: add new parallel gc option UseIOPrioritySizePolicy to early shrink heap when io wait is high.

Testing: jtreg

Reviewers: maoliang.ml, yude.lyd

Issue: dragonwell-project/dragonwell11#846

CR: dragonwell-project/dragonwell11#847
Copy link
Collaborator

@linade linade left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

When heap is automatically reduced, how and when will it grow back?

src/hotspot/share/gc/parallel/psAdaptiveSizePolicy.cpp Outdated Show resolved Hide resolved
src/hotspot/share/gc/parallel/psAdaptiveSizePolicy.cpp Outdated Show resolved Hide resolved

static bool should_update_eden_stats(GCCause::Cause cause) {
return AdaptiveSizePolicy::should_update_eden_stats(cause) ||
(UseIOPrioritySizePolicy && GCCause::_gc_locker == cause);
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

comment explaining why (cause == _gc_locker) is checked here?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

When running spark on TPC-DS, we observed IO occurs simultaneously with jni calls. So we intend to update eden size upon GC locker caused young gc.

@weixlu
Copy link
Collaborator Author

weixlu commented Jul 31, 2024

When heap is automatically reduced, how and when will it grow back?

After IO finish, we will restore _throughput_goal to its original value (like 0.99), and typically this goal won't be satisfied. As a result, Adaptive Size Policy will try to increase the heap by 20% each time.

weixlu added a commit to weixlu/dragonwell11 that referenced this pull request Jul 31, 2024
Summary: add new parallel gc option UseIOPrioritySizePolicy to early shrink heap when io wait is high.

Testing: jtreg

Reviewers: maoliang.ml, yude.lyd

Issue: dragonwell-project#846

CR: dragonwell-project#847
@weixlu weixlu force-pushed the decrease_heap_policy branch from 52efa83 to 3b0ee54 Compare July 31, 2024 03:54
Summary: add new parallel gc option UseIOPrioritySizePolicy to early shrink heap when io wait is high.

Testing: jtreg

Reviewers: maoliang.ml, yude.lyd

Issue: dragonwell-project#846

CR: dragonwell-project#847
@weixlu weixlu force-pushed the decrease_heap_policy branch from 3b0ee54 to 70a4662 Compare July 31, 2024 06:10
@weixlu weixlu merged commit 1a9a9c2 into dragonwell-project:master Jul 31, 2024
4 of 11 checks passed
@weixlu weixlu deleted the decrease_heap_policy branch July 31, 2024 09:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants