DocumentationAeminiumRuntimeProfiler

From Aeminium
Revision as of 22:31, 11 February 2012 by Aeminium (Talk | contribs) (Running an Application)

Jump to: navigation, search

Preparing the ground

Downloads

The Profiler uses the JProfiler framework to collect and manage all the information concerning the performance of the Æminium Runtime.

Also, considering consulting the JProfiler documentation whenever you have a doubt which isn't covered in this page.

Running an Application

To run an application along with the JProfiler, you must add a few flags before executing the 'java' command, namely the '-agentpath' and '-Djprofiler.probeProvider', as described in the example bellow for Linux 32-bit:

java -agentpath:/home/alcides/Tools/jprofiler7/bin/linux-x64/libjprofilerti.so=port=8849 -Djprofiler.probeProvider=aeminium.runtime.profiler.AeminiumProbeProvider -jar Fibonnaci.jar

  • The '-agentpath' flags tells the JVM the location of the 'jprofilerti library', which is usually located the folder where JProfiler was installed.
  • In Windows 32-bit, you can try '-agentpath:"C:\Program Files\jprofiler7\bin\windows\jprofilerti.dll=port=8849"'. For more information, look in the section 'B.3.10 Starting Remote Sessions' of the JProfiler documentation.
  • The '-Djprofiler.probeProvider' will tell the JVM the class path to the probe provider, a class whose contents are discussed below.

The profiler package

The first two classes are regular Java classes, which were created just to make easier the process of collecting the profiling information.

AeminiumProfiler

The class

DataCollection

The class

JProfiler Classes

The three other classes that also belong to the profiler package are the ones which are required by JProfiler to collect telemetries information, as well as handle method interception.

AeminiumProbeProvider

The class

CountersProbe

The class

TaskDetailsProbe

The class