RFR: 8310031: Parallel: Implement better work distribution for large object arrays in old gen [v17]
Albert Mingkun Yang
ayang at openjdk.org
Wed Oct 11 16:26:27 UTC 2023
On Wed, 11 Oct 2023 14:59:29 GMT, Richard Reingruber <rrich at openjdk.org> wrote:
>> src/hotspot/share/gc/parallel/psCardTable.cpp line 228:
>>
>>> 226: scan_obj_with_limit(pm, obj.obj, addr_l, end);
>>> 227: }
>>> 228: }
>>
>> I wonder if the else branch can be replaced by:
>>
>>
>> if (obj.addr < i_addr && obj.addr > start) {
>> // already-scanned
>> } else {
>> scan_obj_with_limit(pm, obj.obj, addr_l, end);
>> }
>
> You mean to replace L220-L227, right? There we know `obj.addr >= addr_l`. `obj.addr < i_addr` cannot be true then IMO. It would overlap with an objArray if `i_addr` was set there. If `i_addr` was set at the end of a non-objArray then objects starting before `i_addr` cannot start in or after `addr_l`.
No, I mean L212 to L228. "Comment on lines +212 to +228"
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/14846#discussion_r1355177469
More information about the hotspot-gc-dev
mailing list