-
Enhancement
-
Resolution: Fixed
-
P4
-
9
-
b81
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8141891 | emb-9 | Thomas Schatzl | P4 | Resolved | Fixed | team |
Investigation in JDK-8030849 showed that there is a very large amount of wasted memory when allocating PLABs due to the region end being a hard boundary and the PLAB size not flexible.
E.g. if you want to allocate a PLAB of size 20k (to allocate regular sized objects), but there is only 19k left, the current allocation algorithm simply skips to the next region.
Fix this by allowing the allocator to return smaller (but large enough to fit the allocation) PLABs in this case.
E.g. if you want to allocate a PLAB of size 20k (to allocate regular sized objects), but there is only 19k left, the current allocation algorithm simply skips to the next region.
Fix this by allowing the allocator to return smaller (but large enough to fit the allocation) PLABs in this case.
- backported by
-
JDK-8141891 Allow that PLAB allocations at the end of regions are flexible
-
- Resolved
-
- blocks
-
JDK-8067455 [NEWTEST] Test flexible allocation at end of G1 region
-
- Closed
-
- relates to
-
JDK-8067433 Keep waste at end of regions for further allocation during GC
-
- Open
-
-
JDK-8030849 Investigate high fragmentation/waste in some situations during allocation during GC in G1
-
- Open
-