RFR: 8349713: [leyden] Memory map the cached code file [v4]

Aleksey Shipilev shade at openjdk.org
Wed Feb 12 15:15:01 UTC 2025


> It is visible in profiles for lots of applications that reading the SC cache file at startup costs significantly. On JavacBenchApp example, loading ~25M code requires about 30ms. This is ~1 GB/sec, so it is I/O limited.
> 
> We should really mmap the SC cache file to alleviate these costs. Let the actual SC readers (separate threads) to eat the cost of reading from the backing file. 
> 
> I was not entirely sure COW for file mappings works correctly on Windows, so I excepted that one.
> 
> Additional testing:
>  - [x] Linux x86_64 server fastdebug, `runtime/cds`

Aleksey Shipilev has updated the pull request incrementally with one additional commit since the last revision:

  Revert "Remove flag, allow all platforms, remove C-heap load"
  
  This reverts commit 2f884d8e961eb9ddfe13655a50b7c9edc9758e83.

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

Changes:
  - all: https://git.openjdk.org/leyden/pull/34/files
  - new: https://git.openjdk.org/leyden/pull/34/files/2f884d8e..f2364f27

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=leyden&pr=34&range=03
 - incr: https://webrevs.openjdk.org/?repo=leyden&pr=34&range=02-03

  Stats: 32 lines in 3 files changed: 23 ins; 0 del; 9 mod
  Patch: https://git.openjdk.org/leyden/pull/34.diff
  Fetch: git fetch https://git.openjdk.org/leyden.git pull/34/head:pull/34

PR: https://git.openjdk.org/leyden/pull/34


More information about the leyden-dev mailing list