RFR: 8237842: Separate definitions for default cache line and padding sizes [v3]

Aleksey Shipilev shade at openjdk.org
Wed Jan 3 12:47:59 UTC 2024


> [JDK-8321137](https://bugs.openjdk.org/browse/JDK-8321137) needs a clean separation between cache line sizes and padding sizes. At least on x86, there is a wrinkle with "assuming" the cache line size is 128 bytes to cater for prefetchers. Cleanly separating cache line size and padding size resolves this. I rewrote uses of `DEFAULT_CACHE_LINE_SIZE` in padding contexts to new macro.
> 
> The goal for this patch is to avoid actual values changes as much as possible. One of the changes come from cleaning up some of the old cases in x86 definition, thus simplifying the definition. I think the LP64 split is still useful there.
> 
> Additional testing:
>  - [x] Large build matrix of server/zero builds
>  - [x] Linux AArch64 server fastdebug, `tier{1,2}`
>  - [x] Linux x86_64 server fastdebug, `tier{1,2}`

Aleksey Shipilev has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains four commits:

 - Merge branch 'master' into JDK-8237842-cache-line-padding-defs
 - Better verbiage for *2 adjustment for x86_64
 - Merge branch 'master' into JDK-8237842-cache-line-padding-defs
 - Work

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

Changes: https://git.openjdk.org/jdk/pull/16973/files
 Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=16973&range=02
  Stats: 99 lines in 25 files changed: 27 ins; 15 del; 57 mod
  Patch: https://git.openjdk.org/jdk/pull/16973.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/16973/head:pull/16973

PR: https://git.openjdk.org/jdk/pull/16973


More information about the hotspot-dev mailing list