Skip to main content

Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "TPTP User Experiences Profiling"

m (Our expectation from survey)
(Our expectation from survey)
Line 51: Line 51:
 
J2EE profiling in TPTP is currently ramping a new resource.  That person is gaining familarity with the codebase.  We hope to document use cases here and solicit input in the future.
 
J2EE profiling in TPTP is currently ramping a new resource.  That person is gaining familarity with the codebase.  We hope to document use cases here and solicit input in the future.
  
== Our expectation from survey ==
+
== Our expectation from this effort ==
If brief, we want to change profiler and support with feedback for product. :)
+
  
TPTP Profiler is universal tool which provides broad range of functionality for applications tuning (execution, heap, threading). But as other universal tools it suffers from difficulties with solving specific narrow tasks. General set of them should be almost unlimited and we aren't going to develop solution for all. In this area our goal is to define limited set of such task in collaboration with Lead User for each participated project. If users don't see specific profiling task we can assist them in this quest, at least profiler allows investigate not only execution but also heap usage and threading. We can suppose that desired task could be something like filtering narrow set of events, specific execution model, specific requirements for data depiction (e.g. reverse call tree) or specific analytical features. When tasks will be specified and documented in Wiki we can consent on most convenient solution for their carrying out, in other words we can jointly define the sequence of action which user should do to perform the task and way how information should be presented during it.
+
In brief, we want to improve the usability and out-of-the-box experience for the profiler for the next major iteration of Eclipse, called Gannymede, currently scheduled for general availability June 25th, 2008. We anticipate that the increased usability and out-of-the-box experience will increase the number of users of the profiler.
We hope that making TPTP valuable as tool at least in some specific appliances can increase amount of users and attracts attention to it.  
+
  
Search for helpful project specific usage scenarios and defining solutions for them are only part of our expectations.
+
The TPTP team is using an iterative development process, which has a number of interim releases leading up the the June 25, 2007 delivery. The detailed TPTP schedule can be found at http://www.eclipse.org/tptp/home/project_info/releaseinfo/4.5/schedule.html. 
  
Also we want Lead Users bit by bit integrates TPTP Profiler in projects development process. At beginning it can cause complications but than all integration issues will be resolved we can research process with continues profiling during development, concretize role of each type of profiling and put it in certain development phase.
+
The dates of interest for this effort are the M releases, specifically, M4, M5, M6 and M7.   The lead users are expected to try each new M release and write down their experiences and suggestions (and, yes, problems) for each M release. For example, the next M release is January 4th (M4).  It is expected that each lead user download and try the tptp M4 release and get their feedback to us.  The lead user should be able to be done pretty quickly with this effort.  Of course, the lead user is encouraged to continue to use the profiler and get feedback to us, but that is up to the lead user.  We will notify you soon before each M release to schedule some time to try it out.
  
Lead users will be notified about every new profiler drop at the end of iteration and we expect to achieve from them feedback about it within one or two week. In that way we will be able to correct our plans.   
+
The TPTP Profiler is a general purpose tool which provides a broad range of functionality for applications tuningIt can do things such as execution times, heap usage, threading, filtering a narrow set of events, specific requirements for data depiction (e.g. reverse call tree) or other specific analytical features.
  
Of course starting point for participation in survey is downloading of "allinone" bundle and trying the profiler but it is crucial for achieving gaols of survey to put TPTP in every day development, even periodic usage of new issued releases hardly can show requirements for profiler integration.  
+
In this effort, our goal is to define a small set of clearly defined high-value use-cases in collaboration with Lead Users and focus on the usability and out-of-the-box experience for these few high value use cases.    The use cases will be specified and documented in Wiki so the lead users can collaborate to get the best input.
  
Brief list of expectations:
+
Brief list of expectations for the Lead Users.
# Set of helpful project specific profiling tasks definition.
+
# Help define what are the high value use cases.   This can be quite simple for the lead users: just tell us the task that you need to do!
# Joint resolution about the best way for such tasks carrying out in TPTP.
+
# Work with the tptp team to define how tptp should implement the use cases.  One of the efforts coming out of this will undoubtedly be targeted documentation, but is quite likely that the tptp software itself should be enhanced.
# Iterative development with close collaboration for product evaluation.  
+
# Close collaboration for product evaluation; we may want to get you quick deliveries to try out.
# Filing Bugzillas against TPTP (errors, enhancements requests)
+
# Use Bugzilla for your problem reporting. If you are unfamiliar with it, we will help you use it (it is not hard).
# Provide feedback for "getting started" materials, tutorials and documentation.
+
# At least a few hours to try each M delivery and then report of it's usability and out-of-the-box experience.
  
 
=Getting started with TPTP=
 
=Getting started with TPTP=

Revision as of 11:50, 26 November 2007

Note that when you edit a page on the wiki, there is a checkbox you can click to be notified of updates to the page. E-mail notification should be turned on at your Wiki Preferences, "my preferences" at top of page. I'm not 100% sure if it works but if it does, it will be a good way to avoid having to cc a mailing list whenever you update the wiki...


Please use Discussion page for suggestions, questions and thoughts


This page discusses user types that we are hoping to solicit feedback regarding user experiences. In particular, we hope to get pointed feedback and make TPTP better for these classes of users.

Come to TPTP as Lead user

The tptp profiler

J2SE 5 and J2SE 6 are supported in TPTP by the new JVMTI interface while J2SE 1.4 and below are supported using the old JVMPI interface. The components of TPTP profiler that are evolving the most relate to the JVMTI profiling experience. If you don't know what version of Java you are using, please use java -version.

The tptp team is undertaking an effort to improve the usability and out-of-the-box experience for the profiler. We are going to do that by working closely with some lead users. The term lead user comes from the work of Eric von Hippel at MIT. The lead users will use the tptp profiler and will be closely supported by the tptp team. The lead users will get usage (and bug) feedback to the tptp team, who will expedite the resolution of issues. The lead user would expect to get a number of deliveries of the profiler during the course of their usage, each improving on the usability and out-of-the-box experience. The lead user may be given prototypes to try. It is anticipated that tptp will work with a number of lead users. Our desire is to get an improved user experience into Gannymede.

There will be two related efforts for this:

  • J2SE, and
  • J2EE

The primary difference in the use cases is that a J2SE application reinvokes the JVM upon each execution whereas a J2EE application runs on an already running JVM, so must attach.

Ideal J2SE Candidate Criteria For This Survey

Here are the characteristics of the ideal J2SE lead user.

  • J2SE
  • The lead user's application runs on the tptp reference platform: Windows XP and the IBM JVM 1.5. We will also consider other 1.5 JVMs.
  • To make debugging and support simpler, the lead user's application is easily executed by the tptp test team on their system (the reference platform). This implies that there should not be a lot of external "strange" dependencies in the lead user's application, as the tptp team will not be able to easily recreate the lead user's environment.

If you would like to be a lead J2SE user, email alexander.n.alexeev@intel.com

Below is a more formal definition of "strange" for a lead user's project. These are not mandatory but help understand our position. Anyway, please contact, and we will try to find convenient cooperation process.

(in priority order):

  • Doesn't require third party's software
  • Can work on single computer, doesn't require distributed environment. Can access the Internet.
  • Easy to deploy
  • Isn't a very specific application field. The purpose and use cases are understandable without special knowledge. This will result in a short time for the tptp team to familiarize themselves with the application.
  • Absence or minimum of native libraries
  • Can be downloaded from CVS and built from scratch in Eclipse

Ideal J2EE Candidate Criteria For This Survey

  • J2EE
  • Optionally a WTP user
  • Tomcat (version 5.5 or newer and therefore Java 5) as the application server. Do we have other requirements?
  • Otherwise the same as the J2SE case above.

If you would like to be a lead J2EE user, email alexander.n.alexeev@intel.com

J2EE

J2EE profiling in TPTP is currently ramping a new resource. That person is gaining familarity with the codebase. We hope to document use cases here and solicit input in the future.

Our expectation from this effort

In brief, we want to improve the usability and out-of-the-box experience for the profiler for the next major iteration of Eclipse, called Gannymede, currently scheduled for general availability June 25th, 2008. We anticipate that the increased usability and out-of-the-box experience will increase the number of users of the profiler.

The TPTP team is using an iterative development process, which has a number of interim releases leading up the the June 25, 2007 delivery. The detailed TPTP schedule can be found at http://www.eclipse.org/tptp/home/project_info/releaseinfo/4.5/schedule.html.

The dates of interest for this effort are the M releases, specifically, M4, M5, M6 and M7. The lead users are expected to try each new M release and write down their experiences and suggestions (and, yes, problems) for each M release. For example, the next M release is January 4th (M4). It is expected that each lead user download and try the tptp M4 release and get their feedback to us. The lead user should be able to be done pretty quickly with this effort. Of course, the lead user is encouraged to continue to use the profiler and get feedback to us, but that is up to the lead user. We will notify you soon before each M release to schedule some time to try it out.

The TPTP Profiler is a general purpose tool which provides a broad range of functionality for applications tuning. It can do things such as execution times, heap usage, threading, filtering a narrow set of events, specific requirements for data depiction (e.g. reverse call tree) or other specific analytical features.

In this effort, our goal is to define a small set of clearly defined high-value use-cases in collaboration with Lead Users and focus on the usability and out-of-the-box experience for these few high value use cases. The use cases will be specified and documented in Wiki so the lead users can collaborate to get the best input.

Brief list of expectations for the Lead Users.

  1. Help define what are the high value use cases. This can be quite simple for the lead users: just tell us the task that you need to do!
  2. Work with the tptp team to define how tptp should implement the use cases. One of the efforts coming out of this will undoubtedly be targeted documentation, but is quite likely that the tptp software itself should be enhanced.
  3. Close collaboration for product evaluation; we may want to get you quick deliveries to try out.
  4. Use Bugzilla for your problem reporting. If you are unfamiliar with it, we will help you use it (it is not hard).
  5. At least a few hours to try each M delivery and then report of it's usability and out-of-the-box experience.

Getting started with TPTP

Information Sources

Stable TPTP usage scenarios

Profiling types

Performance issues which can be identified with TPTP

Known TPTP profiler weaknesses

Some User Initial Experiences

As users come forward, we want to capture their initial experiences. We hope that some of these users will choose to become "lead user's" and migrate to the next section. :).

Profile on Server and Enabled mode Collection

A number of folks are trying to use TPTP to profile Tomcat and/or RCP applications and are launching/starting their app either from within the workbench or from a command line script. The summary of one user's initial experiences with the TPTP 4.4 profiler for a Tomcat based application are here

Using TPTP to profile JRE class libraries

JRE as all other application can have performance issues and hence area for its improvements. It consists from native and managed code, and portion of the last one is much bigger then often expected. So, for that portion we can use TPTP as profiler and localize with its help potential performance or resources usage issues. Also one of the goal is to estimate possibility of Java profiler usage for JRE profiling. Harmonyis used as target JRE. For details watch page Harmony profiling with TPTP

Using TPTP to profile Eclipse Platform UI

There isn't many details yet. All initial input regarding user experience Eclipse Platform UI with TPTP

Accepted lead user's projects

None, you have a chance :)

Contact points

Places where you can ask questions, discuss and of course proved feedback for the tool:

We get all information from these sources, analyse and put structured in Wiki. This is important for us and even small observation which published and discussed can affect overall quality and create product more attractive. So, please participate in community process and make TPTP better.

Back to the top