[master] RFR: 8346011: [Lilliput] Compact Full-GC Forwarding [v2]
Roman Kennke
rkennke at openjdk.org
Thu Dec 12 14:55:23 UTC 2024
> The current forwarding scheme that is used during full-GC overrides much of the mark-word. This is a problem for current compact headers when the heap is larger than 8TB (in which case we currently disable compact headers altogether) and becomes a much worse issue with 4-byte-compact-headers, because it would override the compressed class-pointer in the upper header bits.
>
> This implementation uses a side-table (currently 1/512th of the heap size) to store part of the target addresses, and 9 bits in the header for the rest of it. For the full description of the algorithm, see top of fullGCForwarding.hpp.
>
> Testing:
> - [x] hotspot_gc
> - [ ] tier1
> - [ ] tier1 +UseSerialGC
> - [ ] tier1 +UseParallelGC
> - [ ] tier1 +UseShenandoahGC
Roman Kennke has updated the pull request incrementally with one additional commit since the last revision:
Fix preservedMarks gtest
-------------
Changes:
- all: https://git.openjdk.org/lilliput/pull/191/files
- new: https://git.openjdk.org/lilliput/pull/191/files/eb5ff170..42ca1c80
Webrevs:
- full: https://webrevs.openjdk.org/?repo=lilliput&pr=191&range=01
- incr: https://webrevs.openjdk.org/?repo=lilliput&pr=191&range=00-01
Stats: 6 lines in 2 files changed: 4 ins; 2 del; 0 mod
Patch: https://git.openjdk.org/lilliput/pull/191.diff
Fetch: git fetch https://git.openjdk.org/lilliput.git pull/191/head:pull/191
PR: https://git.openjdk.org/lilliput/pull/191
More information about the lilliput-dev
mailing list