RFR (XS): 8150952: Net PLAB size is clipped to max PLAB size as a whole, not on a per thread basis

Thomas Schatzl thomas.schatzl at oracle.com
Thu Mar 3 14:07:11 UTC 2016


Hi all,

  can I have reviews for this change that fixes PLAB sizing clipping
after we changed the desired PLAB size to be recorded without taking
the number of threads to use into account?

The problem is that after calculating the net desired plab size, we
clip it to min/max sizes. This means that, when handing out the desired
PLAB sizes depending on the number of threads, if the number of threads
is really large, the PLAB sizes get way too small.

I have seen some application logs where due to high number of threads,
around 90%(!) of multiple GB of allocations during GC is direct
-allocated. Instead of using PLABs...

This change fixes this issue.

CR:
https://bugs.openjdk.java.net/browse/JDK-8150952
Webrev:
cr.openjdk.java.net/~tschatzl/8150952/webrev
Testing:
jprt, vm.gc, looking at several benchmarks to see whether the problem
still occurs

Thanks,
  Thomas


More information about the hotspot-gc-dev mailing list