RFR (S) Improve UseLargePages support
Roman Kennke
rkennke at redhat.com
Wed Oct 12 08:18:09 UTC 2016
Looks alright!
Roman
Am Dienstag, den 11.10.2016, 17:07 +0200 schrieb Aleksey Shipilev:
> Hi,
>
> I took a brief look at what Shenandoah does with large pages
> (-XX:+UseLargePages). It seems we are already covered for the heap
> part,
> because the shared code already allocates it with large pages when
> requested.
>
> We only shall do a few minor touchups:
> a) Allow pretouch to touch with larger steps, since pages are larger
> --
> this improves -XX:+AlwaysPreTouch performance even further;
> b) Make sure the region sizes are at least one page, otherwise, in
> theory, mprotect granularity would make false alarms in our
> mprotect-based access verification code;
> c) Make sure we allocate large bitmaps with large pages too;
>
> All done here:
> http://cr.openjdk.java.net/~shade/shenandoah/large-pages-fix/webrev.
> 01/
>
> GC-heavy compiler tests are still happy:
>
> Benchmark Mode Cnt Score Error Units
>
> # baseline, -XX:-UseLargePages
> Compiler.compiler thrpt 10 70.635 ± 2.289 ops/min
> Compiler.sunflow thrpt 10 175.764 ± 4.574 ops/min
>
> # patched, -XX:-UseLargePages
> Compiler.compiler thrpt 10 70.639 ± 2.043 ops/min
> Compiler.sunflow thrpt 10 175.878 ± 4.355 ops/min
>
> # baseline, -XX:+UseLargePages
> Compiler.compiler thrpt 10 73.543 ± 2.574 ops/min
> Compiler.sunflow thrpt 10 183.399 ± 5.432 ops/min
>
> # patched, -XX:+UseLargePages
> Compiler.compiler thrpt 10 74.739 ± 2.526 ops/min
> Compiler.sunflow thrpt 10 186.247 ± 5.963 ops/min
>
> Thanks,
> -Aleksey
>
>
More information about the shenandoah-dev
mailing list