RFR: 8153745: Avoid spawning G1ParPreserveCMReferentsTask when there is no work to be done

Bengt Rutisson bengt.rutisson at oracle.com
Fri Apr 8 11:16:31 UTC 2016


Hi Stefan,

On 2016-04-08 13:10, Stefan Johansson wrote:
> Hi,
>
> Please review this enhancement to avoid spawning tasks when there is 
> no work to do:
> https://bugs.openjdk.java.net/browse/JDK-8153745
>
> Webrev:
> http://cr.openjdk.java.net/~sjohanss/8153745/hotspot.00/

Looks good.

Bengt

>
> Summary:
> During post_evacuate_collection_set the call to preserve_cm_referents 
> ensures that no referents discovered by the concurrent reference 
> processor are lost. This is done unconditionally and sometimes a lot 
> of tasks are spawned just to find that there is no work to be done. 
> This enhancement avoids the unnecessary work by first checking that 
> the cm-ref-processor has at least some discovered reference to take 
> care of.
>
> Testing:
> * JPRT
> * RBT with 
> hotspot/test/:hotspot_jprt,vm.parallel_class_loading.testlist,jdk/test/:tier1,vm.gc.ref.testlist,vm.gc.testlist
>
> Thanks,
> Stefan



More information about the hotspot-gc-dev mailing list