TPTP Profiler

From Eclipsepedia

Jump to: navigation, search

This document is a working draft. Version 0.1
Last Updated: April 2008

Contents

Introduction

Usage

Workbench profiling

TPTP Profile Configuration.jpg

Stand alone profiling

Standalone is a little bit overloaded term in context of TPTP. It can be used in three meanings. The first one is more general and related to AC distribution. It means that AC deployed separately from Eclipse and should be configure and executed manually. Such kind of distribution can be downloaded from TPTP download page also. So it means standalone destitution of Agent controller. The second one is related to type of profiled application execution. As already has been mentioned, application under profiling can be executed from Workbench[back reference], but this is not the only one method to do it. Also profiler can be configured as JVM TI agent [ref required] and run from command line. This kind of execution also called stand alone profiler execution. Unlike execution from workbench in this case additional profiling modes become available. These modes will be considered later. But one of them should be referred right now. This mode is called standalone and it is the third cases then term standalone is used with TPTP profiler. JVM executed in standalone mode doesn't try to establish any external connection for data transferring. It just save all gathered profiling data to file. In the next several sections we are going to consider all what related to execution TPTP java profiler from command line as JVM TI option for JVM in contrast run from Eclipse workbench.

Requirements

For standalone profiler execution only JVM 1.5 and Agent Controller installation are required. Standalone destitution of agent controller can be used as well as integrated agent controller which distributed as part of TPTP eclipse plugins.

Stand alone profiling

java -agentlib:JPIBootLoader=JPIAgent[:[help]|[<option>=<value>,...]];<profiler>[:<option>=<value>,...]

BTW, JPI means Java Profiling Interface

The command line is structured as follows:

-agentlib: JVM command line argument for passing JVM TI library to JVM [reference to JVM TI]
JPIBootLoader: is the library that loads the profiling agent.
JPIAgent java profiling agent
Java profiling agent options
server=[controlled|]
file=
filter=
api=
format=

Execution profiler (CGProf)

Heap profiler (HeapProf)

Thread profiler (ThreadProf)

Environment variables

Pros&Cons

Examples

Attach/detach

FAQ

Functionality

What is application mode?

Overhead reduction

How can I make profiler overhead smaller?

How to configure filters in Workbench?

How to configure filters in standalone mode?

Trouble shouting

How can I turn on debugging output in agent controller?

How can I shutdown Agent Controller?

How can I find what Agent Controller still running?

How can I turn on debugging output in profiler?

How can I turn on trace duplication in file?