RFR: Scan remembered [v2]
Kelvin Nilsen
github.com+51720475+kdnilsen at openjdk.java.net
Wed Jan 13 02:44:45 UTC 2021
> Add support for scanning remembered set
>
> The code has support for two alternative implementations of the remembered set. The current remembered set implementation uses traditional card marking, where the post writer barrier for pointer write operations sets the mark for every overwritten card.
>
> A contemplated future remembered set implementation is represented in skeleton form within the shenandoahBufferWithSATBRememberedSet.hpp and shenandoahBufferWithSATBRememberedSet.inline.hpp files. The idea of this alternative remembered set implementation is that the existing SATB buffers will be augmented to additionally remember the address of each overwritten reference field. Subsequent processing of the SATB buffer contents by background GC threads will update the TBD remembered set representation.
>
> There are known bugs and performance improvements in the remembered set scanning implementation that have been addressed in certain Amazon-internal commits. These commits will be upstreamed at a later time after other commits not directly related to remembered set scanning are upstreamed.
Kelvin Nilsen has updated the pull request incrementally with one additional commit since the last revision:
Improvements requested during initial review
These changes are cosmetic and/or related to comments.
-------------
Changes:
- all: https://git.openjdk.java.net/shenandoah/pull/12/files
- new: https://git.openjdk.java.net/shenandoah/pull/12/files/37802abc..8462a729
Webrevs:
- full: https://webrevs.openjdk.java.net/?repo=shenandoah&pr=12&range=01
- incr: https://webrevs.openjdk.java.net/?repo=shenandoah&pr=12&range=00-01
Stats: 316 lines in 8 files changed: 26 ins; 253 del; 37 mod
Patch: https://git.openjdk.java.net/shenandoah/pull/12.diff
Fetch: git fetch https://git.openjdk.java.net/shenandoah pull/12/head:pull/12
PR: https://git.openjdk.java.net/shenandoah/pull/12
More information about the shenandoah-dev
mailing list