RFR: Rewrite and fix ShenandoahHeap::marked_object_iterate
Aleksey Shipilev
shade at redhat.com
Wed Oct 18 17:19:35 UTC 2017
On 10/18/2017 04:34 PM, Zhengyu Gu wrote:
> 547 if (cb < tams) {
> 548 cb = mark_bit_map->getNextMarkedWordAddress(cb, end);
> 549 }
>
> I recall when I added additional test/branch with avoiding filler evacuation experiment, I saw
> noticeable performance regression.
>
> By replacing line #548:
>
> cb = mark_bit_map->getNextMarkedWordAddress(cb, bitmap_limit + skip_bitmap_delta);
>
> we can avoid cb < tams check.
I don't see performance regressions, but we can indeed make smarter bitmap scans:
http://cr.openjdk.java.net/~shade/shenandoah/markscan-tams-bug/webrev.03/
Have still to convince myself it works. Added the test.
Thanks,
-Aleksey
More information about the shenandoah-dev
mailing list