Re: RFR: 8355003: Implement Ahead-of-Time Method Profiling [v14]

2025-05-07 Thread Chris Plummer
On Tue, 6 May 2025 21:50:34 GMT, Igor Veresov wrote: >> Improve warm-up time by making profile data from a previous run of an >> application instantly available, when the HotSpot Java Virtual Machine >> starts. Specifically, enhance the [AOT cache](https://openjdk.org/jeps/483) >> to store met

Re: RFR: 8355003: Implement Ahead-of-Time Method Profiling [v14]

2025-05-06 Thread Igor Veresov
> Improve warm-up time by making profile data from a previous run of an > application instantly available, when the HotSpot Java Virtual Machine > starts. Specifically, enhance the [AOT cache](https://openjdk.org/jeps/483) > to store method execution profiles from training runs, reducing profili

Re: RFR: 8355003: Implement Ahead-of-Time Method Profiling [v13]

2025-05-06 Thread Igor Veresov
On Tue, 6 May 2025 18:48:03 GMT, Chris Plummer wrote: >> Igor Veresov has updated the pull request with a new target base due to a >> merge or a rebase. The pull request now contains 43 commits: >> >> - Merge branch 'master' into pp2 >> - Fix compile >> - Fix additional issues >> - Make sur

Re: RFR: 8355003: Implement Ahead-of-Time Method Profiling [v13]

2025-05-06 Thread Chris Plummer
On Tue, 6 May 2025 06:31:43 GMT, Igor Veresov wrote: >> Improve warm-up time by making profile data from a previous run of an >> application instantly available, when the HotSpot Java Virtual Machine >> starts. Specifically, enhance the [AOT cache](https://openjdk.org/jeps/483) >> to store met

Re: RFR: 8355003: Implement Ahead-of-Time Method Profiling [v13]

2025-05-05 Thread Igor Veresov
> Improve warm-up time by making profile data from a previous run of an > application instantly available, when the HotSpot Java Virtual Machine > starts. Specifically, enhance the [AOT cache](https://openjdk.org/jeps/483) > to store method execution profiles from training runs, reducing profili

Re: RFR: 8355003: Implement Ahead-of-Time Method Profiling [v12]

2025-05-02 Thread Igor Veresov
> Improve warm-up time by making profile data from a previous run of an > application instantly available, when the HotSpot Java Virtual Machine > starts. Specifically, enhance the [AOT cache](https://openjdk.org/jeps/483) > to store method execution profiles from training runs, reducing profili

Re: RFR: 8355003: Implement Ahead-of-Time Method Profiling [v11]

2025-05-02 Thread Igor Veresov
> Improve warm-up time by making profile data from a previous run of an > application instantly available, when the HotSpot Java Virtual Machine > starts. Specifically, enhance the [AOT cache](https://openjdk.org/jeps/483) > to store method execution profiles from training runs, reducing profili

Re: RFR: 8355003: Implement Ahead-of-Time Method Profiling [v10]

2025-05-01 Thread Igor Veresov
> Improve warm-up time by making profile data from a previous run of an > application instantly available, when the HotSpot Java Virtual Machine > starts. Specifically, enhance the [AOT cache](https://openjdk.org/jeps/483) > to store method execution profiles from training runs, reducing profili

Re: RFR: 8355003: Implement Ahead-of-Time Method Profiling [v9]

2025-05-01 Thread Igor Veresov
> Improve warm-up time by making profile data from a previous run of an > application instantly available, when the HotSpot Java Virtual Machine > starts. Specifically, enhance the [AOT cache](https://openjdk.org/jeps/483) > to store method execution profiles from training runs, reducing profili

Re: RFR: 8355003: Implement Ahead-of-Time Method Profiling [v8]

2025-04-30 Thread Vladimir Kozlov
On Wed, 30 Apr 2025 22:58:09 GMT, Igor Veresov wrote: >> Improve warm-up time by making profile data from a previous run of an >> application instantly available, when the HotSpot Java Virtual Machine >> starts. Specifically, enhance the [AOT cache](https://openjdk.org/jeps/483) >> to store me

Re: RFR: 8355003: Implement Ahead-of-Time Method Profiling [v4]

2025-04-30 Thread Igor Veresov
On Mon, 28 Apr 2025 17:35:13 GMT, Vladimir Kozlov wrote: >> Igor Veresov has updated the pull request with a new target base due to a >> merge or a rebase. The pull request now contains 32 commits: >> >> - Merge branch 'master' into pp2 >> - Fix class filtering >> - Remove the workaround of

Re: RFR: 8355003: Implement Ahead-of-Time Method Profiling [v8]

2025-04-30 Thread Igor Veresov
> Improve warm-up time by making profile data from a previous run of an > application instantly available, when the HotSpot Java Virtual Machine > starts. Specifically, enhance the [AOT cache](https://openjdk.org/jeps/483) > to store method execution profiles from training runs, reducing profili

Re: RFR: 8355003: Implement Ahead-of-Time Method Profiling [v7]

2025-04-30 Thread Igor Veresov
> Improve warm-up time by making profile data from a previous run of an > application instantly available, when the HotSpot Java Virtual Machine > starts. Specifically, enhance the [AOT cache](https://openjdk.org/jeps/483) > to store method execution profiles from training runs, reducing profili

Re: RFR: 8355003: Implement Ahead-of-Time Method Profiling [v6]

2025-04-30 Thread Igor Veresov
On Sat, 26 Apr 2025 22:36:11 GMT, Vladimir Kozlov wrote: >> Igor Veresov has updated the pull request incrementally with one additional >> commit since the last revision: >> >> Remove the proxy class counter > > src/hotspot/share/cds/archiveBuilder.cpp line 770: > >> 768: relocate_embedded

Re: RFR: 8355003: Implement Ahead-of-Time Method Profiling [v6]

2025-04-30 Thread Igor Veresov
> Improve warm-up time by making profile data from a previous run of an > application instantly available, when the HotSpot Java Virtual Machine > starts. Specifically, enhance the [AOT cache](https://openjdk.org/jeps/483) > to store method execution profiles from training runs, reducing profili

Re: RFR: 8355003: Implement Ahead-of-Time Method Profiling [v5]

2025-04-29 Thread Igor Veresov
On Sun, 27 Apr 2025 01:15:54 GMT, Vladimir Kozlov wrote: >> You mean you want these checks to be done only if `TrainingData::have_data() >> == true` ? > > Yes, if it is related. Otherwise you may change default behavior when Leyden > code is not used. I simplified it and factored out the new s

Re: RFR: 8355003: Implement Ahead-of-Time Method Profiling [v5]

2025-04-29 Thread Igor Veresov
> Improve warm-up time by making profile data from a previous run of an > application instantly available, when the HotSpot Java Virtual Machine > starts. Specifically, enhance the [AOT cache](https://openjdk.org/jeps/483) > to store method execution profiles from training runs, reducing profili

Re: RFR: 8355003: Implement Ahead-of-Time Method Profiling [v4]

2025-04-28 Thread Magnus Ihse Bursie
On Mon, 28 Apr 2025 09:15:28 GMT, Igor Veresov wrote: >> Improve warm-up time by making profile data from a previous run of an >> application instantly available, when the HotSpot Java Virtual Machine >> starts. Specifically, enhance the [AOT cache](https://openjdk.org/jeps/483) >> to store me

Re: RFR: 8355003: Implement Ahead-of-Time Method Profiling [v4]

2025-04-28 Thread Igor Veresov
On Mon, 28 Apr 2025 17:35:13 GMT, Vladimir Kozlov wrote: > Looks better. There are still places where UL is used specifically for TD > processing. Consider using `(aot, training)` there instead of `(cds)`. Right. I haven't addressed these review comments yet. - PR Comment: https:/

Re: RFR: 8355003: Implement Ahead-of-Time Method Profiling [v4]

2025-04-28 Thread Vladimir Kozlov
On Mon, 28 Apr 2025 09:15:28 GMT, Igor Veresov wrote: >> Improve warm-up time by making profile data from a previous run of an >> application instantly available, when the HotSpot Java Virtual Machine >> starts. Specifically, enhance the [AOT cache](https://openjdk.org/jeps/483) >> to store me

Re: RFR: 8355003: Implement Ahead-of-Time Method Profiling [v4]

2025-04-28 Thread Erik Joelsson
On Mon, 28 Apr 2025 09:15:28 GMT, Igor Veresov wrote: >> Improve warm-up time by making profile data from a previous run of an >> application instantly available, when the HotSpot Java Virtual Machine >> starts. Specifically, enhance the [AOT cache](https://openjdk.org/jeps/483) >> to store me

Re: RFR: 8355003: Implement Ahead-of-Time Method Profiling [v4]

2025-04-28 Thread Igor Veresov
> Improve warm-up time by making profile data from a previous run of an > application instantly available, when the HotSpot Java Virtual Machine > starts. Specifically, enhance the [AOT cache](https://openjdk.org/jeps/483) > to store method execution profiles from training runs, reducing profili

Re: RFR: 8355003: Implement Ahead-of-Time Method Profiling [v3]

2025-04-28 Thread Igor Veresov
> Improve warm-up time by making profile data from a previous run of an > application instantly available, when the HotSpot Java Virtual Machine > starts. Specifically, enhance the [AOT cache](https://openjdk.org/jeps/483) > to store method execution profiles from training runs, reducing profili

Re: RFR: 8355003: Implement Ahead-of-Time Method Profiling [v2]

2025-04-27 Thread Igor Veresov
> Improve warm-up time by making profile data from a previous run of an > application instantly available, when the HotSpot Java Virtual Machine > starts. Specifically, enhance the [AOT cache](https://openjdk.org/jeps/483) > to store method execution profiles from training runs, reducing profili

Re: RFR: 8355003: Implement Ahead-of-Time Method Profiling

2025-04-26 Thread Igor Veresov
On Sat, 26 Apr 2025 21:30:25 GMT, Vladimir Kozlov wrote: >> Improve warm-up time by making profile data from a previous run of an >> application instantly available, when the HotSpot Java Virtual Machine >> starts. Specifically, enhance the [AOT cache](https://openjdk.org/jeps/483) >> to store

Re: RFR: 8355003: Implement Ahead-of-Time Method Profiling

2025-04-26 Thread Igor Veresov
On Sun, 27 Apr 2025 02:00:48 GMT, Vladimir Kozlov wrote: >> @vnkozlov Are you ok with Ioi's code change proposal? > > Yes, I am ok. I assume you will change accordingly all other similar empty > constructors in your code: `MethodCounters()` and `*TrainingData()`. Yes, will do. - P

Re: RFR: 8355003: Implement Ahead-of-Time Method Profiling

2025-04-26 Thread Ioi Lam
On Sun, 27 Apr 2025 01:11:39 GMT, Vladimir Kozlov wrote: >> I think it's OK to test without these two additional flags. This will make >> sure that the two diagnostic flags don't have any bad side effect even if >> AOT class linking is disabled (due to flags like -XX:+UseZGC). > > I see them in

Re: RFR: 8355003: Implement Ahead-of-Time Method Profiling

2025-04-26 Thread Vladimir Kozlov
On Sun, 27 Apr 2025 01:49:20 GMT, Igor Veresov wrote: >> src/hotspot/share/oops/methodData.cpp line 1296: >> >>> 1294: >>> 1295: MethodData::MethodData() { >>> 1296: assert(CDSConfig::is_dumping_static_archive() || UseSharedSpaces, >>> "only for CDS"); >> >> 1. Should its code be guarded by

Re: RFR: 8355003: Implement Ahead-of-Time Method Profiling

2025-04-26 Thread Vladimir Kozlov
On Sun, 27 Apr 2025 01:37:33 GMT, Igor Veresov wrote: >> I thought if we can not use AOT cache we issue warning and continue >> execution without it. >> Unless you are checking for damaged AOT cache which may affect execution >> without it. >> >> @iklam what do you think? > > But this runs on

Re: RFR: 8355003: Implement Ahead-of-Time Method Profiling

2025-04-26 Thread Igor Veresov
On Sun, 27 Apr 2025 01:20:45 GMT, Vladimir Kozlov wrote: >> But this is a verification code. That seems to be the usual strategy, is it >> not? > > I thought if we can not use AOT cache we issue warning and continue execution > without it. > Unless you are checking for damaged AOT cache which m

Re: RFR: 8355003: Implement Ahead-of-Time Method Profiling

2025-04-26 Thread Vladimir Kozlov
On Sat, 26 Apr 2025 23:58:04 GMT, Igor Veresov wrote: >> src/hotspot/share/oops/trainingData.cpp line 76: >> >>> 74: >>> 75: static void verify_archived_entry(TrainingData* td, const >>> TrainingData::Key* k) { >>> 76: guarantee(TrainingData::Key::can_compute_cds_hash(k), ""); >> >> Should

Re: RFR: 8355003: Implement Ahead-of-Time Method Profiling

2025-04-26 Thread Vladimir Kozlov
On Sun, 27 Apr 2025 00:52:37 GMT, Ioi Lam wrote: >> Could you please explain why? @iklam, what do you think? > > I think it's OK to test without these two additional flags. This will make > sure that the two diagnostic flags don't have any bad side effect even if AOT > class linking is disabled

Re: RFR: 8355003: Implement Ahead-of-Time Method Profiling

2025-04-26 Thread Vladimir Kozlov
On Sun, 27 Apr 2025 00:24:31 GMT, Igor Veresov wrote: >> src/hotspot/share/ci/ciInstanceKlass.hpp line 47: >> >>> 45: friend class ciField; >>> 46: friend class ciReplay; >>> 47: friend class CompileTrainingData; >> >> Not referenced here > > It allows `CompileTrainingData` to peek into t

Re: RFR: 8355003: Implement Ahead-of-Time Method Profiling

2025-04-26 Thread Ioi Lam
On Sun, 27 Apr 2025 00:02:41 GMT, Igor Veresov wrote: >> src/hotspot/share/cds/dumpAllocStats.hpp line 151: >> >>> 149: } >>> 150: >>> 151: void record_dynamic_proxy_class() { >> >> This is not called. This code seems not related. > > True. @iklam, this came with a change you wanted me to

Re: RFR: 8355003: Implement Ahead-of-Time Method Profiling

2025-04-26 Thread Ioi Lam
On Sat, 26 Apr 2025 23:35:01 GMT, Igor Veresov wrote: >> test/hotspot/jtreg/runtime/cds/appcds/aotProfile/AOTProfileFlags.java line >> 30: >> >>> 28: * @requires vm.cds >>> 29: * @comment work around JDK-8345635 >>> 30: * @requires !vm.jvmci.enabled >> >> Consider adding: >> >> * @require

Re: RFR: 8355003: Implement Ahead-of-Time Method Profiling

2025-04-26 Thread Igor Veresov
On Sat, 26 Apr 2025 22:11:58 GMT, Vladimir Kozlov wrote: >> Improve warm-up time by making profile data from a previous run of an >> application instantly available, when the HotSpot Java Virtual Machine >> starts. Specifically, enhance the [AOT cache](https://openjdk.org/jeps/483) >> to store

Re: RFR: 8355003: Implement Ahead-of-Time Method Profiling

2025-04-26 Thread Igor Veresov
On Sat, 26 Apr 2025 22:32:00 GMT, Vladimir Kozlov wrote: >> Improve warm-up time by making profile data from a previous run of an >> application instantly available, when the HotSpot Java Virtual Machine >> starts. Specifically, enhance the [AOT cache](https://openjdk.org/jeps/483) >> to store

Re: RFR: 8355003: Implement Ahead-of-Time Method Profiling

2025-04-26 Thread Igor Veresov
On Sat, 26 Apr 2025 21:30:25 GMT, Vladimir Kozlov wrote: >> Improve warm-up time by making profile data from a previous run of an >> application instantly available, when the HotSpot Java Virtual Machine >> starts. Specifically, enhance the [AOT cache](https://openjdk.org/jeps/483) >> to store

Re: RFR: 8355003: Implement Ahead-of-Time Method Profiling

2025-04-26 Thread Igor Veresov
On Sat, 26 Apr 2025 22:15:27 GMT, Vladimir Kozlov wrote: >> Improve warm-up time by making profile data from a previous run of an >> application instantly available, when the HotSpot Java Virtual Machine >> starts. Specifically, enhance the [AOT cache](https://openjdk.org/jeps/483) >> to store

Re: RFR: 8355003: Implement Ahead-of-Time Method Profiling

2025-04-26 Thread Igor Veresov
On Sat, 26 Apr 2025 22:42:02 GMT, Vladimir Kozlov wrote: >> Improve warm-up time by making profile data from a previous run of an >> application instantly available, when the HotSpot Java Virtual Machine >> starts. Specifically, enhance the [AOT cache](https://openjdk.org/jeps/483) >> to store

Re: RFR: 8355003: Implement Ahead-of-Time Method Profiling

2025-04-26 Thread Igor Veresov
On Sat, 26 Apr 2025 22:09:24 GMT, Vladimir Kozlov wrote: >> Improve warm-up time by making profile data from a previous run of an >> application instantly available, when the HotSpot Java Virtual Machine >> starts. Specifically, enhance the [AOT cache](https://openjdk.org/jeps/483) >> to store

Re: RFR: 8355003: Implement Ahead-of-Time Method Profiling

2025-04-26 Thread Igor Veresov
On Sat, 26 Apr 2025 21:28:12 GMT, Vladimir Kozlov wrote: >> Improve warm-up time by making profile data from a previous run of an >> application instantly available, when the HotSpot Java Virtual Machine >> starts. Specifically, enhance the [AOT cache](https://openjdk.org/jeps/483) >> to store

Re: RFR: 8355003: Implement Ahead-of-Time Method Profiling

2025-04-26 Thread Igor Veresov
On Sat, 26 Apr 2025 21:07:04 GMT, Vladimir Kozlov wrote: >> Improve warm-up time by making profile data from a previous run of an >> application instantly available, when the HotSpot Java Virtual Machine >> starts. Specifically, enhance the [AOT cache](https://openjdk.org/jeps/483) >> to store

Re: RFR: 8355003: Implement Ahead-of-Time Method Profiling

2025-04-26 Thread Vladimir Kozlov
On Fri, 25 Apr 2025 20:18:41 GMT, Igor Veresov wrote: > Improve warm-up time by making profile data from a previous run of an > application instantly available, when the HotSpot Java Virtual Machine > starts. Specifically, enhance the [AOT cache](https://openjdk.org/jeps/483) > to store method

RFR: 8355003: Implement Ahead-of-Time Method Profiling

2025-04-25 Thread Igor Veresov
Improve warm-up time by making profile data from a previous run of an application instantly available, when the HotSpot Java Virtual Machine starts. Specifically, enhance the [AOT cache](https://openjdk.org/jeps/483) to store method execution profiles from training runs, reducing profiling delay