Happy path
Aleksey Shipilev
shade at redhat.com
Thu Apr 26 10:19:25 UTC 2018
On 04/25/2018 05:02 PM, Aleksey Shipilev wrote:
> On 04/25/2018 04:45 PM, Roland Westrelin wrote:
>> Here is a new webrev:
>>
>> http://cr.openjdk.java.net/~roland/shenandoah/happypath-nocoalescing/webrev.00/
>
> *) I think you meant to use "mask" in ShenandoahWriteBarrierNode::is_heap_state_test(Node*, int) here:
>
> 584 if (in2->find_int_con(-1) != (ShenandoahHeap::EVACUATION | ShenandoahHeap::PARTIAL |
> ShenandoahHeap::TRAVERSAL)) {
>
> Let me run a few performance tests to look for problems.
Overnight performance runs identify no problems, and we have these improvements:
Compiler.sunflow: +2.2%
Compress: +2.3%
Derby: +1%
ScimarkLU.large: +6%
ScimarkLU.small: +8%
Serial: +2%
XmlTransform: +1.6%
XmlValidation: +4.7%
There are, however, some interesting cases with barrier merging. For example, BarrierMultiplePrim
test from gc-bench [1] indicates the back-to-back WB coalescing is broken:
http://cr.openjdk.java.net/~shade/shenandoah/happy-path-wb/baseline.perfasm
http://cr.openjdk.java.net/~shade/shenandoah/happy-path-wb/happy.perfasm
-Aleksey
[1]
https://icedtea.classpath.org/hg/gc-bench/file/99bdce815ba3/src/main/java/org/openjdk/gcbench/wip/BarriersMultiplePrim.java
More information about the shenandoah-dev
mailing list