Details
-
Enhancement
-
Status: Resolved
-
P4
-
Resolution: Fixed
-
20
-
b26
Description
Currently, when merging heap region RemSets, G1 assigns a thread per region. For degenerate cases where cards are unevenly distributed across the RemSets, some worker threads are assigned huge tables to scan while others lie idle.
We can improve the parallelism by allowing multiple threads to scan a region's Remset. Given that the Remsets are built on the Concurrent Hash Table, we can easily parallelise the Remset scan without significant overhead for the single threaded case.
We can improve the parallelism by allowing multiple threads to scan a region's Remset. Given that the Remsets are built on the Concurrent Hash Table, we can easily parallelise the Remset scan without significant overhead for the single threaded case.