RFR(S): 8215893: Add better abstraction for pinning G1 concurrent marking bitmaps.
Stefan Johansson
stefan.johansson at oracle.com
Thu Oct 17 11:34:00 UTC 2019
Hi Kishor,
On 2019-10-17 03:39, Kharbas, Kishor wrote:
> Hi Sangheon,
>
> *From:*sangheon.kim at oracle.com [mailto:sangheon.kim at oracle.com]
> *Sent:* Wednesday, October 16, 2019 11:03 AM
> *To:* Kharbas, Kishor <kishor.kharbas at intel.com>
> *Cc:* hotspot-gc-dev at openjdk.java.net; Stefan Johansson
> <stefan.johansson at oracle.com>
> *Subject:* Re: RFR(S): 8215893: Add better abstraction for pinning G1
> concurrent marking bitmaps.
>
>> Hi Kishor,
>>
>> Before reviewing webrev.02, could you remind us what was the motivation
>> of pinning the bitmap mappers here?
>> In addition to explanations of the problematic situation, any logs /
>> stack-trace also may help.
>>
>> We think that understanding of the root cause should be considered first.
>
> Unfortunately, I do not have log/stack-trace of the problem I had faced.
>
> I am trying to reproduce it by running SPECjbb workload over and over again.
>
> I haven’t looked at GC code since end of last year. So I am having a
> difficult time pinning what the problem was.
>
> I am looking at G1ClearBitMapTask which iterates over bitmap for all
> available regions. I am not sure when this task is performed.
>
> There is comment in HeapRegionManager::par_iterate() as shown below,
>
> /// This also (potentially) iterates over regions newly allocated during
> GC. This/
>
> / // is no problem except for some extra work./
>
> This method is eventually called from G1ClearBitMapTask. The comment
> suggests that regions are allocated concurrently when the function is
> run. This also means with AllocateOldGenAt flag enabled, regions can
> also be un-committed.
I don't understand how AllocateOldGenAt would make any difference,
regions can be un-committed without it as well and there are mechanisms
in place to make sure only the correct parts of the side structures are
un-committed when that happens.
I want to reiterate what Sangheon said about identifying the root cause.
If we don't know why this is needed and can't reproduce any failures
without the special pinning of the bitmaps, I would rather see that we
remove the pinning code to make things work more like normal G1.
Thanks,
Stefan
>
> Pardon me if my understanding is incorrect.
>
> Regards,
>
> Kishor
More information about the hotspot-gc-dev
mailing list