RFR (S): Refactor concurrent mark to be more inlineable
Roman Kennke
rkennke at redhat.com
Tue Dec 20 17:15:19 UTC 2016
Looks good to me!
Roman
Am Dienstag, den 20.12.2016, 18:08 +0100 schrieb Aleksey Shipilev:
> Hi,
>
> I would like to refactor the concurrent mark to make it more
> inlineable, prepare
> it for conc mark prefetch, etc:
> http://cr.openjdk.java.net/~shade/shenandoah/concmark-inline/webrev
> .01/
>
> In that patch:
> a) Peeled concurrent_process_queues before the hot loop;
> b) Inlined try_* methods to call a very fat do_object_or_array
> once. It also
> helps to pinpoint a single place where we get the tasks, so that
> future work on
> buffering and prefetching would capitalize on this;
> c) Optimize SATB draining code: poll the local queue immediately
> after
> draining SATB, do not do stealing which will bypass the local queue;
> d) Marked a few important closures "inline", and added headers
> where needed;
>
> Testing: hs_gc_shenandoah, SPECjvm/Derby.
>
> Thanks,
> -Aleksey
>
More information about the shenandoah-dev
mailing list