[prev in list] [next in list] [prev in thread] [next in thread] 

List:       openjdk-discuss
Subject:    Re: Call for Discussion: New Project: Skogsluft
From:       ysr1729 () gmail ! com
Date:       2024-02-13 18:49:58
Message-ID: 57D51098-7D05-4C86-A9C7-EEC8760BAFE8 () gmail ! com
[Download RAW message or body]


Excellent initiative, thank you! A couple of drive-by remarks:

1. Seems to naturally belong in the Serviceability group (hereby cc'd), who appear to \
me to be natural sponsors of such an effort

2. I notice in the census (openjdk.org/census#serviceability) that some portion of \
the Serviceability group's membership has likely retired or moved to working on other \
things. Does it perhaps makes sense to grow the group membership with those actively \
involved in Serviceability-related efforts these days?

/ Ramki (OpenJDK: ysr)
Sent from my iPhone

> On Feb 2, 2024, at 9:15 AM, Jaroslav Bachorík <jaroslav.bachorik@datadoghq.com> \
> wrote: 
> 
> I hereby invite discussion of a new Project, "Skogsluft," whose primary goal will \
> be to improve Java's profiling capabilities within Java Flight Recorder (JFR). This \
> project aims to introduce advanced profiling features that bridge the gap between \
> Java and native code execution, and offer more precise and flexible profiling \
> options. 
> The focus will be on three key enhancements:
> 
> 1. An improved stackwalker, capable of seamlessly walking mixed Java/native stacks. \
> This will provide developers with a more coherent view of the stack traces, \
> especially in applications where Java and native codes are interwoven. 
> 2. A flexible CPU sampler scheduler. On Linux, this will be based on \
> perf_event_open or timer_create systems, and on MacOS, we will utilize itimer. For \
> other operating systems, the system will fall back to standard execution samples. \
> This enhancement aims to offer more accurate and adaptable CPU sampling, taking \
> into account the diverse environments in which Java applications run. 
> 3. Labelling support for JFR. This will allow developers to set per-thread \
> key-value labels that are automatically incorporated into any JFR event. Such \
> labelling will provide richer context in profiling data, enabling more targeted \
> analysis and debugging. 
> To implement these enhancements, the "Skogsluft" will extend Java's profiling \
> capabilities in JFR with the following approaches: 
> Development of a cross-platform stackwalker that integrates native and Java stack \
> frames, ensuring compatibility and efficiency across different operating systems. 
> Design and integration of a scheduler for CPU sampling that adapts to the \
> underlying operating system's capabilities, offering both precision and \
> performance. 
> Extension of the JFR API to support easy and flexible labelling of threads, \
> ensuring that these labels are consistently captured in profiling data. 
> I am looking for an OpenJDK group willing to sponsor this project and provide a \
> person to lead this project. 
> For the "Skogsluft" this Project will start with a clone of the current JDK \
> main-line release, JDK 23, and track main-line releases going forward. The project \
> will involve creating a separate repository for the development of these new \
> profiling features, ensuring they are compatible and well-integrated with existing \
> JFR functionalities. 
> The "Skogsluft" is expected to deliver the features over time, in a series of JEPs \
> (JDK Enhancement Proposals) that will likely span multiple feature releases. The \
> aim is to eventually integrate these profiling improvements into the standard JDK \
> distributions, enhancing the capabilities of JFR and providing developers with more \
> powerful tools for performance analysis and debugging. 
> With regards,
> 
> Jaroslav Bachorik


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic