RFR: 8257774: G1: Trigger collect when free region count drops below threshold to prevent evacuation failures [v4]

Thomas Schatzl tschatzl at openjdk.java.net
Mon Apr 26 11:53:30 UTC 2021


On Thu, 22 Apr 2021 21:55:02 GMT, Aditya Mandaleeka <adityam at openjdk.org> wrote:

>> Aditya Mandaleeka has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains eight commits:
>> 
>>  - Remove temp init variable, update code after rebase.
>>  - Refactor allocation funcs, removing attempt_lock_free_first.
>>  - Fix format specifiers.
>>  - Fix a few warnings as well as a Windows build error.
>>  - Fix whitespace and comment.
>>  - Further refactoring/changes.
>>  - Address feedback and make other changes.
>>  - Improve G1GC accounting for humongous objects
>>    
>>    If there is a burst of humongous allocations they can
>>    consume all of the free regions left in the heap. If
>>    there are no free regions for to-space a collect will
>>    fail to evacuate all objects. This makes the GC very
>>    slow. Since, humongous regions can be collected in
>>    G1GC young collects force a young collect before the
>>    number of free regions becomes less than the number
>>    the GC is likely to require.
>>    
>>    Fix TestGCLogMessages.java so it still causes Evacuation
>>    failures.
>>    
>>    Signed-off-by: Charlie Gracie <charlie.gracie at microsoft.com>
>
> src/hotspot/share/gc/g1/g1Policy.cpp line 786:
> 
>> 784:   update_rs_length_prediction();
>> 785: 
>> 786:   // Is this the right place? Should it be in the below?
> 
> Can a reviewer confirm this so that I can remove the comment?

The comment can be removed imho.

-------------

PR: https://git.openjdk.java.net/jdk/pull/3143



More information about the hotspot-gc-dev mailing list