RFR: 8329134: Reconsider TLAB zapping [v3]
Aleksey Shipilev
shade at openjdk.org
Mon Apr 1 07:36:00 UTC 2024
> We zap the entire TLAB on initial allocation (`MemAllocator::mem_allocate_inside_tlab_slow`), and then also rezap the object contents when object is allocated from the TLAB (`ThreadLocalAllocBuffer::allocate`). The second part seems excessive, given the TLAB is already fully zapped.
>
> There is also no way to disable this zapping, like you would in other places with the relevant Zap* flags.
>
> Fixing both these issues allows to improve fastdebug tests performance, e.g. in jcstress.
>
> It also allows to remove the related Zero kludge.
>
> Additional testing:
> - [x] Linux AArch64 server fastdebug, `all` tests
> - [x] MacOS AArch64 Zero fastdebug, `bootcycle-images` pass
Aleksey Shipilev has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains five additional commits since the last revision:
- Merge branch 'master' into JDK-8329134-tlab-zapping
- Review comments
- Touchups
- Also remove Zero kludge
- Fix
-------------
Changes:
- all: https://git.openjdk.org/jdk/pull/18500/files
- new: https://git.openjdk.org/jdk/pull/18500/files/72bf1e8a..5bf36d05
Webrevs:
- full: https://webrevs.openjdk.org/?repo=jdk&pr=18500&range=02
- incr: https://webrevs.openjdk.org/?repo=jdk&pr=18500&range=01-02
Stats: 6085 lines in 208 files changed: 2917 ins; 2291 del; 877 mod
Patch: https://git.openjdk.org/jdk/pull/18500.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/18500/head:pull/18500
PR: https://git.openjdk.org/jdk/pull/18500
More information about the shenandoah-dev
mailing list