RFR: Implement JEP 509: JFR CPU-Time Profiling [v43]

Johannes Bechberger jbechberger at openjdk.org
Fri May 2 10:42:11 UTC 2025


On Mon, 17 Mar 2025 10:03:00 GMT, Johannes Bechberger <jbechberger at openjdk.org> wrote:

>> This is the code for the [JEP draft: CPU Time based profiling for JFR].
>> 
>> Currently tested using [this test suite](https://github.com/parttimenerd/basic-profiler-tests).
>> 
>> A version based on the cooperative sampling JEP can be found [here](https://github.com/parttimenerd/jdk/tree/parttimenerd_cooperative_cpu_time_sampler).
>
> Johannes Bechberger has updated the pull request incrementally with two additional commits since the last revision:
> 
>  - Improve placement of NoResourceMark
>  - Add more checks for metadata_do

The new version is a partial rewrite. The sampler emits all JFR events at safepoints or while a thread is in native. This prevents any method or thread in the stacktraces to be unloaded. This technique is a cross between the previous implementation and the implementation based on the cooperative sampling JEP (#24296).

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

PR Comment: https://git.openjdk.org/jdk/pull/20752#issuecomment-2846901854


More information about the hotspot-dev mailing list