RFR/RFC: Tax-and-Spend allocation pacing
Roman Kennke
rkennke at redhat.com
Thu Mar 15 18:11:10 UTC 2018
Am 15.03.2018 um 19:04 schrieb Aleksey Shipilev:
> On 03/09/2018 11:47 AM, Roman Kennke wrote:
>> I wonder what is needed to make this work with partial and traversal GC?
>> Or would that only be the boilerplate stuff like in
>> init_concurrent_normal_cycle() to set up pacing? Because the other hooks
>> (to report evacs and intercept allocs) are already in their right places?
>
> It is apparently easy, if we rewire the pacer to accept these phases.
+
+ if (ShenandoahPacing) {
+ _heap->pacer()->setup_for_traversal();
+ }
What? This is all that is needed? (Plus the little fluff in
setup_for_traversal()...)
> New version of the patch does this, along with other improvements:
> http://cr.openjdk.java.net/~shade/shenandoah/tax-and-spend/webrev.02/
>
> Still passes hotspot_gc_shenandoah, and performance numbers are still good. I am going to run a few
> other benchmarks to be extra sure, but I think this is ready to go.
It sure does look good to me. Good work! Go from my side!
Roman
More information about the shenandoah-dev
mailing list