See comments section for pointers to logs from customer and
an email that hints at (some of) the issues involved.
We are investigating the defficiencies of the current scheme in order to
improve the frgamentation-control heuristics.
Some improvements have been made, and we are studying the effect of this on
performance of some applications/benchmarks.
In the case of this customer, one problem had been the extremely large size of
OldPLABSize chosen. Reducing it improved fragmentation behaviour. However,
their workloads are sufficiently high and sufficiently bursty that any dynamic
scheme will be unable to work well at all times within a 32-bit heap.
They have been advised to either move to 64-bit heaps and/or to run multiple
32-bit jvms to make full use of their multicore boxes.
In the meantime, our investigations have identified a number of incremental
improvements to reduce fragmentation and these are being tested. A list of
improvements made as part of this CR will be listed in the suggested fix
section when we are done.