cornercorner
FeaturesPluginsDocs & SupportCommunityPartners

Home

Calibration

Instrumenting the bytecode of the profiled application imposes some overhead. To guarantee the high accuracy of profiling results, Profiler needs to collect calibration data in order to "factor out" the time spent in code instrumentation. You need to run the calibration process for each JDK you will use for profiling.

Calibration data is stored for each JDK in your home directory in the .nbprofiler directory. If the calibration data is missing or cannot be read, the following warning is displayed and the profiling stops:

How to run the calibration

When performing calibration, make sure that no other programs are running on the same machine (or at least that no other program is performing any significant computation at the time). Profiler will run the calibration regardless, but running any CPU-intensive programs when performing the calibration may affect the accuracy of profiling results.

Warning: If you are profiling on a computer that has a processor with dynamic CPU frequency switching feature (like SpeedStep or PowerNow on modern notebooks), ensure that this is disabled when running the calibration and that the calibration is run at the same CPU frequency as when profiling.

There are two scenarios for running calibration:

  • Calibration for local profiling. To collect calibration data for profiling on local system, choose Profile -> Advanced Commands -> Run Profiler Calibration from the main menu. The following dialog is displayed:

    Choose the Java Platform that will be used for profiling and click OK. The following dialog is displayed after the calibration is complete. You can then start to profile your application locally.

  • Calibration for remote profiling. To collect calibration data on a remote system for profiling remotely, download the Profiler server bundle for the appropriate platform at http://profiler.netbeans.org/download/index.html and unzip the archive on the remote machine. To calibrate, run the calibrate.bat/calibrate.sh script placed in the bin directory. When calibration is complete, the results of the calibration are displayed in the console. You can then start to profile your remote application.

When to rerun calibration

You should rerun the calibration when anything changes on your local/remote configuration that could affect system performance, such as the following:

  • Any hardware upgrade
  • Any significant change/upgrade of the operating system
  • An upgrade of the Java platform used for profiling

You should never share calibration data between various computers or systems.


See also

 

 

Companion
Projects:
MySQL Database Server   GlassFish Community: an Open Source Application Server   Open Solaris  Open JDK: an Open SourceJDK   Mobile & Embedded Community     Sponsored by 
Sponsored by Sun Microsystems