Replacing Arraylets with OffHeap for Balanced GC Policy: A New Era in Memory Layout

Authors: Abdulrahman Alattas and Aleks Micic Introduction In OpenJ9’s Balanced GC policy, the Java heap is divided into up to 2047 fixed-size regions to reduce pause times and increase the efficiency of garbage collection. This layout poses a challenge for large arrays: if an array exceeds the size of a region, it cannot be allocated contiguously….