RFR: 8329134: Reconsider TLAB zapping [v3]

Aleksey Shipilev shade at openjdk.org
Mon Apr 1 17:29:45 UTC 2024


On Mon, 1 Apr 2024 07:36:00 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:

>> 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

Thanks!

-------------

PR Comment: https://git.openjdk.org/jdk/pull/18500#issuecomment-2030202957


More information about the shenandoah-dev mailing list