4/ Evaluate JProfiler 16 for free at ej-technologies.com/jprofiler/d...
We're here for you if you have any questions while trying it out! π
4/ Evaluate JProfiler 16 for free at ej-technologies.com/jprofiler/d...
We're here for you if you have any questions while trying it out! π
3/ Additionally, the Heap Walkerβs reference views now display full string values in the dialog, removing previous character limits on previews.
2/ UI accessibility is improved with a new hover button for tables containing truncated text, directly opening the relevant tab in the detail dialog.
1/ In JProfiler 16, the node detail dialog has been updated to provide cumulative statistics when multiple nodes are selected in hot spot views. This allows for immediate aggregation of performance data across disparate nodes without manual calculation.
3/ Evaluate JProfiler 16 for free at ej-technologies.com/jprofiler/d...
We're here for you if you have any questions while trying it out! π
2/ This breakdown enables the isolation of thread-specific performance issues, such as identifying a single misbehaving thread within a larger pool. You can select a specific thread from the analysis dialog to jump directly to its call tree.
1/ A new analysis feature in JProfiler 16 allows for calculating the contribution of individual threads within a cumulative call tree. By selecting "Show Threads" on any node, users can access a percentage breakdown of all threads contributing to that specific execution path.
5/ Evaluate JProfiler 16 for free at ej-technologies.com/jprofiler/d...
We're here for you if you have any questions while trying it out! π
4/ Comparison and export features allow users to diff two individual virtual threads or entire thread dumps in a dedicated viewer. Specific threads, selections, or full dumps can also be copied to the clipboard via the context menu for external analysis.
3/ JProfiler now groups threads with identical stack traces at the same hierarchical position into a single node. You can inspect individual thread names within these groups. This grouping is also available for platform thread dumps.
2/ Virtual threads are organized hierarchically within their thread containers. This structure is particularly relevant for structured concurrency, where each scope creates a corresponding container.
1/ JProfiler 16 adds dedicated support for virtual thread dumps. The thread dumps view now provides distinct actions for synchronous platform thread dumps and asynchronous virtual thread dumps,
4/ Evaluate JProfiler 16 for free at ej-technologies.com/jprofiler/d...
We're here for you if you have any questions while trying it out! π
3/ On Linux with Java 25+, JProfiler now utilizes the jdk.CPUTimeSample event for data in the CPU section. This event measures Linux kernel CPU time, providing more accurate metrics than the old jdk.ExecutionSample event for production systems where JVMTI agents are restricted.
2/ The JFR recording wizard now supports throttle settings, including periods and emission rates. This is essential for the new jdk.CPUTimeSample event in Java 25. These throttle settings are also displayed in the CPU views for context.
1/ JProfiler 16 introduces significant optimizations for the JFR event browser. Data in the lower views is now pre-calculated, and the event table supports incremental loading. Sorting and total calculations now consider the entire filtered dataset, not just the visible subset.
While JProfiler defaults to grouping by model name, this screencast shows how to move beyond that predefined perspective.
youtu.be/cK0fYXiF1Po
If you like what you see, feel free to try it out yourself at
www.ej-technologies.com/jprofiler/d...
I'm continuing to record screencasts for new features in JProfiler!
The new AI probe deserves another screencast: Modern agentic applications perform diverse logical tasks through a single interface, yet they often appear as an undifferentiated stream in profilers.
3/ Evaluate JProfiler 16 for free at ej-technologies.com/jprofiler/d...
We're here for you if you have any questions while trying it out! π
2/ Selecting a throughput metric automatically filters the view to the corresponding event type and recalculates hot paths. This functionality is also integrated into the "Selection" and "Hot Spots" tabs within the probe events view for detailed analysis of high-volume I/O.
1/ In JProfiler 16, the probe call tree and hot spots views can now have a metric selector. In the "Files" or "Sockets" probes, you can toggle between event duration and specific metrics like "Read Throughput" or "Write Throughput."
6/ Evaluate JProfiler 16 for free at ej-technologies.com/jprofiler/d...
We're here for you if you have any questions while trying it out! π
5/ The events view now also features smart column management. The UI dynamically toggles between "fit-to-viewport" and horizontal scrolling based on available width. Manual resizing is supported, with automatic layout restoration when viewport constraints allow.
4/ New histogram views for duration and throughput are available for specific probes, such as Files and Sockets. These histograms support logarithmic scaling and allow you to filter events by dragging a selection range directly on the chart.
3/ Filtering and sorting logic now applies to the entire set of filtered events, not just the visible rows. This includes the calculation of table totals and the generation of CPU hot spots, probe hot spots, and probe call trees within the events view.
2/ A new timeline tab provides a histogram of all recorded events. This allows for precise time-range filtering across the entire dataset. The main event table now supports incremental loading, ensuring the UI remains responsive even with very large result sets.
1/ JProfiler 16 introduces a reimplemented, file-based backend for probe event recording. This architectural change moves away from memory-limited storage, enabling high-throughput recording and analysis of massive event sets numbering in the millions.
If you like what you see, feel free to try it out yourself at
www.ej-technologies.com/jprofiler/d...
First up is the new AI probe: the screencast walks through profiling a LangChain4j customer support agent, showing how the AI probe visualizes prompt compositions, isolates token-heavy outliers, and projects resource costs directly onto the recorded call tree.
youtu.be/jirhNbQARik
Enjoy!
I'm back at recording screencasts for new features in JProfiler!