RFR(S): 8087341: C2 doesn't optimize redundant memory operations with G1
Aleksey Shipilev
aleksey.shipilev at oracle.com
Thu Jan 28 15:04:05 UTC 2016
On 01/28/2016 03:49 PM, Roland Westrelin wrote:
> http://cr.openjdk.java.net/~roland/8087341/webrev.00/
This looks good, for most tests here:
http://cr.openjdk.java.net/~shade/8087341/G1BackToBackStores.java
The generated code indeed shows commoned loads/stores with this patch,
and some other things that can be improved in the codegen -- I'll file
the separate issue(s) for that. I think this one is better to be renamed
to something more specific, e.g. "Overly wide StoreLoad barrier in G1
breaks load/store coalescing"?
On i7-4790K @ 4.0 GHz, Linux x86_64:
== Baseline:
Benchmark Mode Cnt Score Error Units
G1BackToBackStores.test_1 avgt 15 2.193 ± 0.037 ns/op
G1BackToBackStores.test_11 avgt 15 2.984 ± 0.076 ns/op
G1BackToBackStores.test_111 avgt 15 3.706 ± 0.017 ns/op
G1BackToBackStores.test_112 avgt 15 3.978 ± 0.078 ns/op
G1BackToBackStores.test_121 avgt 15 4.107 ± 0.028 ns/op
G1BackToBackStores.test_211 avgt 15 3.824 ± 0.186 ns/op
== Patched:
Benchmark Mode Cnt Score Error Units
G1BackToBackStores.test_1 avgt 15 2.184 ± 0.020 ns/op
G1BackToBackStores.test_11 avgt 15 2.790 ± 0.065 ns/op // !
G1BackToBackStores.test_111 avgt 15 3.264 ± 0.008 ns/op // !!!
G1BackToBackStores.test_112 avgt 15 3.640 ± 0.011 ns/op // !
G1BackToBackStores.test_121 avgt 15 4.194 ± 0.033 ns/op
G1BackToBackStores.test_211 avgt 15 3.665 ± 0.415 ns/op // !
Cheers,
-Aleksey
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: OpenPGP digital signature
URL: <http://mail.openjdk.java.net/pipermail/hotspot-compiler-dev/attachments/20160128/f4ccfffb/signature.asc>
More information about the hotspot-compiler-dev
mailing list