After JDK-8175554 it has become clear that the combination of G1UpdateRSOrPushRefClosure and G1ParPushRefClosure does almost exactly the same thing as G1ParScanClosure.
The only difference is that the latter need to update a flag whether it encountered a reference into the collection set during scanning a card. This extra write should be cheap.
Replacing G1UpdateRSOrPushRefClosure and G1ParPushRefClosure with G1ParScanClosure would remove a lot code.
Verify that there are no performance regressions by adding the flag to G1ParScanClosure and using it in place of the other two closures.
The only difference is that the latter need to update a flag whether it encountered a reference into the collection set during scanning a card. This extra write should be cheap.
Replacing G1UpdateRSOrPushRefClosure and G1ParPushRefClosure with G1ParScanClosure would remove a lot code.
Verify that there are no performance regressions by adding the flag to G1ParScanClosure and using it in place of the other two closures.
- relates to
-
JDK-8175554 Improve G1UpdateRSOrPushRefClosure
- Resolved