Wednesday Nov 04, 2015

NetBeans Profiler 8.1 Released

NetBeans IDE 8.1 include a reworked Java profiler which provides simplified user interface, improved profiling views and optimized engine.

The profiler now uses a single window which contains controls to configure and control the profiling session and display the collected results. The session is configured by selecting a profiling mode using the Profile dropdown menu and started by clicking the Profile button without providing any special settings. If needed, the settings can be tweaked using the Settings pane displayed on demand above the profiling results.

Methods profiler introduces live forward and reverse call trees in addition to the live hot spots view. The data may be filtered or aggregated by selected threads and can be displayed as absolute or incremental values.

Objects profiler displays live allocation call trees if configured and is able to profile instances of just the selected classes, lowering the profiling overhead and amount of collected data.

Telemetry profiler introduces monitoring CPU utilization and GC overhead, Threads profiler adds filtering capabilities to the timeline view. The profiler newly supports taking thread dumps from the profiled application.

Attaching to already running processes has been significantly improved both on the UI and engine side. The profiler now displays all processes available for attach in a table and remembers the selected process between profiling and/or IDE sessions.

Visit to see detailed list of news and changes, read profiler documentation and download NetBeans IDE 8.1 including the profiler.

Monday Mar 07, 2011

VisualVM 1.3.2 Released

VisualVM 1.3.2 has been released and is available for download at VisualVM 1.3.2 delivers several bugfixes (especially for JDK 7) and necessary updates caused by migration to Kenai. See the Release Notes for list of all changes.

Monday Sep 20, 2010

VisualVM 1.3.1 Released

VisualVM 1.3.1 has been released and is available for download at The new version is built on the NetBeans Platform 6.9.1 and delivers number of bugfixes. See the Release Notes for more details.

Monday Jul 26, 2010

VisualVM 1.3 Released

The new version of the VisualVM tool is now available at VisualVM 1.3 introduces several new features and improvements, extends the API for plugins and fixes many bugs. Details of the changes can be found in the Release Notes. Let's look at the most interesting new features in more detail:

Sampler In The Core Tool

The sampling profiler that was originally provided as a plugin has now been integrated into the core tool. Sampler provides a lightweight and safe way to determine performance bottlenecks and memory problems and adds minimal overhead to the target application. It can be used for local and remote applications running on JVMs from different vendors and is designed to be used in production environments. Once a problem is identified, it can be further analyzed in detail using the instrumenting Profiler with appropriate settings (profiling roots, instrumentation filter). Profiler is available for local applications running on an Oracle/Sun-compatible JDK and is mostly intended as a profiling tool for Java developers.

Sampler And Profiler Presets

All the Sampler and Profiler settings can now be saved into presets and reused for further application/VisualVM sessions. This makes it much easier for developers to analyze and improve applications using the iterative profile-fix-restart approach. Moreover, a preset can be selected automatically for an application based on its main class or display name.

Remote Heap Dumps

In previous releases, the VisualVM was only able to take heap dumps of applications that were running locally. The only way to dump the heap of a remote application was by using the MBeans plugin and invoking the appropriate MBean operation ( | Operations | dumpHeap). Starting with VisualVM 1.3, you can now use the Heap Dump actions and buttons in the tool to take a heap dump of applications that are running remotely. When invoked, a dialog is displayed that enables you to specify the full path on the remote system where you want to dump the heap. After the heap dump is created, you need to manually copy the file to your local machine and use the Load action to open and analyze the file using VisualVM.

Monitoring Remote Hosts

In every release of VisualVM it is possible to open the Local system node in the Applications view and see the machine setup (OS, architecture, number of processors etc.), actual CPU load (not available for Windows OS) and physical & swap memory usage. VisualVM 1.3 enables you to obtain this information for remote hosts as well if the host has at least one JMX-enabled application defined in VisualVM. The data is obtained using the application's JMX connection. If the "proxy" application finishes, the live data will freeze and will be updated again when another JMX-enabled application becomes available on that host.

Sorting Hosts, Applications, Coredumps And Snapshots

By default, all nodes are sorted by the insertion time. This means that the last discovered application is added to the end of the list of running applications. In VisualVM 1.3 you can newly sort applications also according to their display name or process ID, which simplifies monitoring systems that are running many Java applications. The other nodes can now be sorted either by the insertion time or by display name.

Tracer Framework And Probes

Tracer is a new framework and GUI for monitoring and analyzing Java applications. Using various types of probes, Tracer gathers metrics from an application and displays the data in a timeline. This gives a quick overview of what is happening in various parts of the application and allows you to easily determine the relations between the metrics. The values are displayed both graphically and in a table and can be exported to common formats for further processing with external tools. VisualVM 1.3 comes with several sets of Tracer probes that are distributed as plugins: Monitor Probes, JVM Probes, Jvmstat Probes, Swing Probes, JavaFX probes and DTrace Probes.

Threads Inspector Plugin

The Threads Inspector integrates with the Threads tab and allows you to analyze the stack trace(s) of one or more selected threads directly without requiring you to take and open full thread dumps. This is extremely useful when you need to quickly analyze various threading problems.

Recognizing Alternative JVM Languages

Some developers use VisualVM as a monitoring and profiling tool for alternative JVM languages that do not have dedicated tooling. VisualVM now recognizes the Clojure, Groovy, JRuby, Jython and Scala runtimes, enabling these developers to easily find the appropriate processes.

Built On NetBeans Platform 6.9

VisualVM 1.3 uses the most recent NetBeans Platform and profiler release to ensure the best performance and greatest stability. The HeapWalker now displays local variables in the Threads section of the Summary | Overview view, providing a better context for the state of the heap at the time the heap dump is created.

VisualVM 1.3 is available for download at You can send your comments to the VisualVM developers by using the feedback mailing list. The API documentation can be found here.

Friday Jul 09, 2010

JDK 6 Update 21 Includes VisualVM 1.2.2

The latest JDK 6 Update 21 from Oracle includes VisualVM 1.2.2, the most recent VisualVM tool version. The list of changes is available in VisualVM 1.2.2 Release Notes or in JDK 6u21 Release Notes.

The most visible change in the new Java VisualVM is Oracle rebranding which includes new splash screen and About dialog graphics, and a slightly redesigned Start Page.

Wednesday Jun 23, 2010

NetBeans IDE 6.9 Released

NetBeans IDE 6.9 has been released last week. You can download it from NetBeans site. News in this release are listed in NetBeans IDE 6.9 Release Information and you can also watch some of the new features in NetBeans 6.9 Overview video.

NetBeans Profiler has enhanced HeapWalker. Thread dump in the overview part of HeapWalker was extended to display information about local variables, which are temporary GC roots. it is possible to navigate from a local variable to its corresponding instance in the instance view and from Java Frame GC root in references view to a corresponding local variable in the thread dump. This enhancement should help users to match Java Frame GC roots to a corresponding local variable.


The list of bug fixes in NetBeans Profiler 6.9 is available here.

Wednesday Jan 27, 2010

Oracle Plans for NetBeans IDE

This is how Oracle sees the NetBeans future in context of the other supported IDEs, as presented in Oracle + Sun Strategy Update Webcast held on January 27th, 2010:

  • NetBeans continues as Lightweight IDE for Java Developers
    • Focus on Java EE6, Java ME, and Scripting
    • Increased focus on Mobile Development and Scripting with Dynamic Languages
    • Hudson continues as Open Source Continuous Build solution

  • Oracle JDeveloper continues as Oracle's Strategic Development Tool
    • Integrated Development Environment for Oracle Fusion Middleware
    • Strategic Development Tool for Oracle's Applications including Fusion Applications

  • Oracle continues Eclipse contributions
    • Oracle is a Strategic Member of Eclipse
    • Continued delivery of new features in Oracle Enterprise Pack for Eclipse 11g

Update: More details on the NetBeans future are available in the Oracle Developer Tools Software Strategy Webcast.

Wednesday Jan 13, 2010

JDK 6 Update 18 Includes VisualVM 1.2.1

The latest Sun JDK 6 Update 18 includes VisualVM 1.2.1 introducing many new features and improvements. The list of changes is available in VisualVM 1.2.1 Release Notes or in JDK 6u18 Release Notes.

Wednesday Jan 06, 2010

VisualVM 1.2.2 Released

VisualVM 1.2.2 has been released and is available for download at The new version upgrades the underlying framework to the NetBeans Platform 6.8 and delivers several performance improvements and bugfixes. See the Release Notes for more details.

Monday Nov 09, 2009

VisualVM 1.2.1 Released

VisualVM 1.2.1 has been released to fix compatibility issues with JDK 6 Update 17 (and newer) and several other problems:

  • Issue 333: HeapWalker in VisualVM doesn't work with JDK 6 Update 17+
  • Issue 327: Maximum value in Monitor charts is Integer.MAX_VALUE
  • Issue 332: NPE in VisualVM-Sampler

See the Release Notes for more details. VisualVM 1.2.1 can be downloaded at

Wednesday Oct 21, 2009

VisualVM 1.2 Released

New version of the VisualVM tool has been released. VisualVM 1.2 introduces many new features and improvements, extends the API for plugins and fixes many bugs.


These are some of the new features as mentioned in the Release Notes:

  • Sampling CPU and Memory profiler plugin
  • Support for multiple jstatd connections on a single local/remote host
  • New charts with dynamic tooltips, public Charts API for plugins
  • Monitor and Threads tab are saved into Application Snapshot
  • Properties UI for Applications, Hosts and Snapshots, public Properties API for plugins
  • Customizable proxy settings in Options dialog
  • UI for customizing SSL certificates in Options dialog
  • Built on NetBeans Platform & profiler 6.7.1:
    • Exporting profiler snapshots to HTML, XML and CSV
    • Computing retained size in HeapWalker
    • OQL scripting support in HeapWalker
    • Thread stack traces at the heap dump in HeapWalker
    • Improved appearance on Mac OS X

VisualVM 1.2 can be downloaded at Feedback to VisualVM developers can be sent using this mailing list. The API documentation can be found here.

Monday Oct 05, 2009

VisualVM 1.2 Test Build Released

VisualVM 1.2 Test Build has been released at The developers are asking the community to help with stabilizing the release by downloading the Test Build, trying out the new features and providing feedback at or filing bug reports into the Issue Tracker.

The major new features in VisualVM 1.2 will include a sampling CPU and memory profiler, enhanced support for jstatd connections, redesigned charts and much more. Details about the release with a more detailed list of improvements are available in the Release Notes document.

Thursday Aug 13, 2009

Java VisualVM Blogging Contest Results Announced

The Java VisualVM Blogging Contest results have (finally!) been announced at Congratulations to the winners and a big thank you to all participants!

Monday Jun 29, 2009

NetBeans IDE 6.7 Released

The NetBeans IDE 6.7 has been released at News in this release are listed in NetBeans IDE 6.7 Release Information, release notes are available here.

The profiler enhances heap analysis capabilities by supporting the OQL scripting in the HeapWalker (hit F1 in the OQL Console to get a detailed help), computing retained sizes for each instance on the heap and listing first N largest objects by retained size. The Overview tab introduces information about number of objects pending for finalization and thread call stacks at the heap dump if available.


The other major profiler improvements include support for exporting profiler results (live results, profiler snapshots, telemetry data) to CSV, HTML and XML and the self-profiling service called "Profile Me Now!" which helps to debug IDE performance problems.

To get a summary information about new profiler features and bugfixes see the NetBeans profiler 6.7 Release Notes.

Tuesday Jun 16, 2009

Java VisualVM Now Available in Mac OS X

Apple released Java VisualVM as part of Java for Mac OS X 10.5 Update 4. To launch Java VisualVM, run jvisualvm from the command line. This Java update is available via Software Update and manual download from

There is Getting Started with VisualVM for those those who want to get more information about the tool.


A blog by NetBeans Profiler & VisualVM developers.


« July 2016