RFR: Concurrent uncommit should be recorded as GC event + perf
Zhengyu Gu
zgu at redhat.com
Fri Jul 6 17:17:30 UTC 2018
Is this right?
ShenandoahHeapRegion* r = get_region(i);
if (r->is_empty_committed() && (r->empty_time() < shrink_before)) {
+ ShenandoahHeapLocker locker(lock());
+ if (r->is_empty_uncommitted()) {
r->make_uncommitted();
count++;
should it be?
+ if (r->is_empty_committed()) {
r->make_uncommitted();
count++;
Thanks,
-Zhengyu
On 07/06/2018 01:10 PM, Aleksey Shipilev wrote:
> http://cr.openjdk.java.net/~shade/shenandoah/uncommit-events/webrev.01/
>
> This implements two easy improvements in heap uncommit: recording the currently hidden event
> properly in statistics to observe the real time concurrent thread spend dealing with uncommits, and
> simple lock interleaving with SpinPause, like we do in FreeSet::recycle_trash.
>
> Testing: tier3_gc_shenandoah, ad-hoc benchmarks
>
> Thanks,
> -Aleksey
>
More information about the shenandoah-dev
mailing list