Fully featured low overhead profiler for Java EE and Java SE platforms.
Easy-to-use performance and memory .NET profiler for Windows, Linux and macOS.
Secure and easy profiling in cloud, containers and clustered environments.
Performance monitoring and profiling of Jenkins, Bamboo, TeamCity, Gradle, Maven, Ant and JUnit.

Changes in YourKit Java Profiler 2025.9

JVM support

  • feature Java 25 is supported.
  • improvement The agent code was refactored to comply with JEP 471 and JEP 498. The profiler no longer relies on java.misc.Unsafe, so there will be no warnings or crashes when running with Java 26.
  • improvement The agent can now instrument Java classes at very early stages of JVM startup. This provides more complete results for tracing, call counting, and allocation profiling.

Windows support

  • feature The uninstaller is now digitally signed.

Java Flight Recorder support

  • feature In this version, Java Flight Recorder support has been completely reworked. YourKit Java Profiler can now not only open any JFR snapshots, but also control JFR event recording. The profiler now offers complete JFR controller functionality as a built-in feature.

    JFR controller
  • feature Added the ability to capture JFR snapshots and download them from remote machines. Works the same way as with native YourKit snapshots, including automatic download and opening.

    Capture JFR snapshot
  • feature The internal engine for loading and presenting JFR events has been reimplemented. It can efficiently process and display millions of JFR events. There are no artificial limits on the number of events, unlike in some other JFR-supporting tools.

    Many events in the JFR snapshot
  • feature There are new profiler agent options jfr=on|off, jfr_config_name and, jfr_max_size to configure flight recording from the agent command line.
  • feature Added the on_exit=jfr option to automatically capture JFR snapshots on JVM exit.
  • fix Fixed an issue where opening a JFR snapshot showed no methods and no call trees.
  • fix Fixed issues with sorting and rendering of certain JFR event types.
  • fix Fixed a crash when opening JFR snapshots from IBM Java.

YourKit Connection Broker

Security

  • improvement The profiler agent now rejects cross-site HTTP requests with the header Sec-Fetch-Site: cross-site. This is not a vulnerability by itself, but blocking such requests improves overall security. Cross-site requests can originate only from a web browser executing specially crafted web pages that send API requests (via JavaScript) to the YourKit agent running on localhost.

User interface

  • improvement Improved detection of insufficient native memory during dominator calculation. The profiler now provides more detailed workaround suggestions in such cases.
  • fix Fixed an issue where the first selected row in a table could change after the table was updated.

Thread profiling

  • feature The Threads view now shows for JFR snapshots additional states (Waiting, Blocked, Parked, Sleeping) that were not available in previous versions. Earlier, only Runnable states were displayed.

    Many states in the JFR snapshot">">
  • improvement Improved the behavior of the Show idle states option. When unchecked, only Runnable states are now displayed. Previously, the profiler used CPU time consumption in the sample to determine idleness, which could cause threads in Sleeping or Blocked states to appear as non-idle.

    Show idle states option

Object allocation profiling

  • feature We replaced the Classic allocation profiling mode with Bytecode instrumentation. The name Classic was confusing: in some cases it behaved like bytecode instrumentation, while in others it behaved like heap sampling. You can now explicitly enable Bytecode instrumentation mode. Both Heap sampling and Bytecode instrumentation modes now share the same configuration parameter: sampling interval. Now the profiler records an object allocation whenever a thread allocates the next N bytes (sampling interval).

    Bytecode instrumentation mode">
  • feature In super-fast allocation counting mode, the profiler now records the size of allocated objects in addition to object counts (previously only counts were available).

    Allocation counting with sizes
  • improvement The allocation counting mode has been optimized and is now 3–4 times faster than in version 2025.3.
  • fix Fixed column names in the Allocation method list view for object counting mode. The columns now correctly display own values.

IDE integration

  • feature NetBeans 27 is supported.
  • fix Fixed an issue in the IntelliJ IDEA plugin that caused SlowOperations.assertSlowOperationsAreAllowed warnings.
  • fix Fixed an issue in the IntelliJ IDEA plugin that caused StartupManagerImpl - Migrate to ProjectActivity warnings.
  • caveat IDE plugins are now built with Java 17. The minimum supported IDE versions are IntelliJ IDEA 2023.1 (March 2023), Eclipse 2023-06 (June 2023), and NetBeans 22 (May 2024). Older IDEs are no longer supported.

EE server support

  • feature Apache TomEE 10.1 is supported.
  • feature JBoss 8.0 is supported.
  • feature Jetty 12.1 is supported.
  • feature WildFly 37 is supported.

Profiler API

Triggers

  • caveat Triggers can now write or modify files only within the sandbox directory ~/.yjp/triggers_out. The directory can be changed using the triggers_out_dir agent startup option.

Miscellaneous

Deprecations

Deprecation means that we intend to remove the feature or capability from a future release of YourKit Java Profiler. The feature or capability will continue to work and is fully supported until it is officially removed.

  • The Linux ppc64le platform is deprecated and will be removed in the next release.

YourKit uses cookies and other technologies to improve your browsing experience on our website, to show you personalized content, to analyze our website traffic, and to understand where our visitors are coming from.

By browsing our website, you consent to our use of cookies and other tracking technologies in accordance with the Privacy Policy.