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

Ioi Lam iklam at openjdk.org
Tue Feb 11 20:20:23 UTC 2025


On Mon, 10 Feb 2025 16:36:04 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:

>> 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 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 two additional commits since the last revision:
> 
>  - Merge branch 'premain' into JDK-8349713-mmap-sccache
>  - Fix

I think this looks fine. The change is small, so we can update or remove it when migrating the SCCache into CDS.

@vnkozlov what do you think?

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

Marked as reviewed by iklam (Committer).

PR Review: https://git.openjdk.org/leyden/pull/34#pullrequestreview-2609933629


More information about the leyden-dev mailing list