RFR: 8268127: Shenandoah: Heap size may be too small for region to align to large page size [v2]
Zhengyu Gu
zgu at openjdk.java.net
Wed Jun 2 21:57:56 UTC 2021
> TestLargePages.java failed on Linux AArch64, where large page size is 500M, and the test is configured to run with much smaller heap, e.g. 131M.
>
> This is *not* AArch64 specific, just none of our regular test machines has large page setup.
>
> I purpose two invariants:
> 1) Heap size always aligns up to page size that is requested.
> 2) Region size always aligns up to page size that is requested if heap is large enough to accommodate them. Otherwise, it aligns up to regular page size.
>
> This partially reverts JDK-8266802.
>
> Obviously, this is a corner case and is unlikely seen in real word. The alternative is to disable UseLargePages if heap size is too small, e.g. align_up(heap_size, page_size) < MIN_NUM_REGIONS.
>
> Test:
> hotspot_gc_shenandoah
Zhengyu Gu has updated the pull request incrementally with one additional commit since the last revision:
Fix compilation error
-------------
Changes:
- all: https://git.openjdk.java.net/jdk/pull/4320/files
- new: https://git.openjdk.java.net/jdk/pull/4320/files/892d07be..1e0e8320
Webrevs:
- full: https://webrevs.openjdk.java.net/?repo=jdk&pr=4320&range=01
- incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=4320&range=00-01
Stats: 2 lines in 2 files changed: 0 ins; 0 del; 2 mod
Patch: https://git.openjdk.java.net/jdk/pull/4320.diff
Fetch: git fetch https://git.openjdk.java.net/jdk pull/4320/head:pull/4320
PR: https://git.openjdk.java.net/jdk/pull/4320
More information about the hotspot-gc-dev
mailing list