PLAB allocations may return a buffer that is between minimum size (current allocation) and the desired size. This allows removes a large amount of fragmentation at the end of regions.
Reviewed-by: tbenson, mgerdin
Remember for every generation whether the memory for that generation has already been exhausted. If so, do not try to get a new region for these generations. Further, if the last generation is full, early exit from copy_to_survivor_space.
Reviewed-by: jmasa, brutisso
G1Allocator::_summary_bytes_used fits better in G1CollectedHeap since we added the archive allocator. Move it back to the original location.
Reviewed-by: mgerdin, tbenson
Calculate the desired PLAB value for a single thread and then return desired PLAB size according to the current number of threads when needed
Reviewed-by: jmasa, tschatzl
After refactoring of the relevant code in JDK-8060025 the survivor alignment had been applied to any allocation within PLABs. Only do that for survivor allocations again. Improve the related tests to have less variance.
Reviewed-by: jmasa, fzhinkin