To enable integration, you should install the profiler plugin.
To install the plugin, run the profiler.
Use Profile from within IDE... action on Welcome screen or in "Tools" menu, select "NetBeans" and follow the instructions.
After the plugin is installed, Profile actions are added to the main toolbar ...
... and to context menu of the editor:
To configure profiling parameters in NetBeans use Tools | Options, section YourKit Profiler:
The Profile action starts the profiled application, and connects to it in profiler UI (unless opposite behavior is configured). The output of the profiled application appears in console, same as for Run action.
This topic is not applicable to macOS where the profiler agent a universal binary.
On a 64-bit machine, the Profile action must know whether the JVM for launching the profiled application is 32-bit or 64-bit, in order to supply appropriate profiler agent version.
By default, the plugin attempts to automatically detect the JVM kind by obtaining available information from NetBeans.
For particular run configurations this may happen that the automatic detection is not possible.
In this case Profile will fail with an error like
Error occurred during initialization of VM. Could not find agent library
printed in the NetBeans console.
In this case use the "32-bit or 64-bit JRE Selection" section to specify Java bitness explicitly.
When profiling applications, you usually need to browse the related source code to understand the performance problems at hands. After the problem is located, you edit the source code to fix it.
Instead of forcing you to tell profiler where the source code of your application is located and showing the code in feature-restricted custom-made "editor surrogate", YourKit provides an alternative approach. When you have a method, class or field selected in the profiler UI, just invoke Tools | Open in IDE (F7), to automatically open the underlying source code in the editor of your IDE - the best place to browse and edit code.
The navigation action works on the current selection and is available in both CPU and memory views. Take note of the extremely useful ability to locate the code of anonymous classes and their methods, which is a very difficult thing to do manually.