RFR: 8245022: ParallelGC abuses StarTask to also include partial objarray scan tasks

stefan.johansson at oracle.com stefan.johansson at oracle.com
Wed May 20 08:11:15 UTC 2020

Hi Kim,

On 2020-05-20 00:41, Kim Barrett wrote:
> Please review this change to ParallelGC to also use the recently added
> ScannerTask (JDK-8244684), eliminating some casts between oop and oop*
> and use of some misaligned oop* values.
> Also renamed G1's ScannerTasksQueue[Set] to G1ScannerTasksQueue[Set].
> I should have used those names in JDK-8244684.  This is consistent
> with the new PSScannerTasksQueue[Set] now being used by ParallelGC.
> The types used by G1 and Parallel are currently the same, but don't
> need to be.
> Also made a small simplification, reordering the template parameters
> for PSPromotionManager::copy_and_push_safe_barrier.  By making the
> promote_immediately flag first and the reference type second we can
> explicitly specify the non-deduced flag and allow the reference type
> to be deduced, rather than having to specify both explicitly in calls.
> CR:
> https://bugs.openjdk.java.net/browse/JDK-8245022
> Webrev:
> https://cr.openjdk.java.net/~kbarrett/8245022/open.00/
Looks good, one very small nit is the extra spaces left here:
  114  protected:
  115   static PSScannerTasksQueueSet* stack_array_depth()   { return 
_stack_array_depth; }

They were pre-existing, but since we are touching that row, we can 
remove those spaces that seems to be left from some old alignment.


> Testing:
> mach5 tier1-5
> No significant differences in ParallelGC performance testing, including specjbb2015.

More information about the hotspot-gc-dev mailing list