RFR (S) 8222185: Shenandoah should report "committed" as capacity
Aleksey Shipilev
shade at redhat.com
Tue Apr 9 13:55:51 UTC 2019
RFE:
https://bugs.openjdk.java.net/browse/JDK-8222185
Fix:
http://cr.openjdk.java.net/~shade/8222185/webrev.01/
Shenandoah resizes the heap by (un)committing the individual regions. Therefore, the true heap
capacity is the "committed" size, not the maximum possible capacity. Currently, gc logs misreport
the heap size, for example with -Xms1g -Xmx4g:
GC(2) Concurrent marking 183M->183M(4096M) 2.243ms
Notice "(4096M)", which is not the actual memory taken by committed heap. With this patch, we
properly report the current capacity:
GC(5) Concurrent marking (process weakrefs) 137M->137M(138M) 2.750ms
I had to rewrite current uses: "capacity" -> "max_capacity" in heuristics, and "committed" ->
"capacity" in monitoring code.
Testing: hotspot_gc_shenandoah, eyeballing gc logs
--
Thanks,
-Aleksey
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <https://mail.openjdk.org/pipermail/hotspot-gc-dev/attachments/20190409/f4eac7a5/signature.asc>
More information about the hotspot-gc-dev
mailing list