Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "Hybrid TPTP scenario"

m (Distribution's problem)
m (Distribution's problem)
Line 57: Line 57:
  
 
=====Distribution's problem=====
 
=====Distribution's problem=====
* Plain windows workbench install of 4403 includes binaries for linux IAC
+
* Plain windows workbench install of 4403 includes binaries for linux IAC as well as 64 bit
::Seems that this isn't a problem for usability. But can be risen  
+
::Seems that this isn't a direct problem for usability. But can be risen since it makes install and download slow.
 +
:::* Bugzilla {{bug|186213}}
 +
 
 
* IAC does not start until a test connection is attempted  
 
* IAC does not start until a test connection is attempted  
 
:: '''Problem''' is that IAC doesn't start automatically  
 
:: '''Problem''' is that IAC doesn't start automatically  

Revision as of 10:48, 11 January 2008

TPTP Profiler users

  • Harm Sluiman

Usage scenarios

Requirements and set up

To run this simple two tier application follow these steps:

  1. Install a default image of Tomcat 5.5 or newer
  2. Put your JRE 1.5 or newer on the path and run the tomcat5.exe in the tomcat bin directory
  3. open the tomcat welcome page or go to http://127.0.0.1:8080/ for a local install.
  4. login with the default userid and pwd (not actually required, see tomcat-users.xml in the conf dir for the configured users)
  5. run some of the sample applications to confirm things work, and then try the JSP SVG (http://127.0.0.1:8080/jsp-examples/jsp2/jspx/svgexample.html) sample. This will give tell you how to run the sample.
  6. download and unzip a recent batik binary driver from Apache
  7. with your JRE on the path run java -jar batik-squiggle.jar and enter the url provided when running the earlier jsp sample (http://localhost:8080/jsp-examples/jsp2/jspx/textRotate.jspx?name=JSPX)

You now have a running two tier java application. This is all free open source so easy to install and recreate as needed. You can try all this out on one machine but clearly the two processes will affect each other so using two machines for more formal measurement is better and creates the need for remote monitoring using the profiler.

Most general case:

  1. First and second experience profiling the squiggly browser when running the Tomcat 5.5 SVG jsp example
    1. experience
  2. isolate the time spent in the batik code versus the browser code or on the network using the class/method statistics views in TPTP
  3. profile the jsp on the tomcat server
  4. isolate the time spent in the jsp generated code and support libraries versus the tomcat server itself.
  5. compare these result to an end user clock
  6. optionally create a TPTP URL test for repeated testing of the server code without needing the browser

Required features:

  1. tbd

Ideal profiler

The ideal profiler will let me profile both of these applications at the same time or independently as well as show the network separations and impacts. At least one of these applications is normally on an separate machine so I would need remote support as well.

For the initial use case I only need to assess time spent, but it is important to note that I actually don't know the code I am profiling and am using the profiler to learn something about this code base before I write a line of code.

Opened Bugzillas

none yet

Problems observed during the experiences referenced above

First experience
  • Set config does not run with common JRE environments.

Harm, am I right what it means JRE doesn't comply with TPTP requirements? (HS - yes) --Alexander.n.alexeev.intel.com 06:05, 2 January 2008 (EST)

Problem is inability to run AC configuration with default JRE on Windows. A default install of Java 1.4 1.5 or 1.6 from SUN for example appears to not satisfy the setconfig.
The cause is that "The Java Runtime in use does not contain a suitable JAXP feature"
Solution for problem can be:
  • Add more meaningful message about usage of unsuitable JRE version and required version . Something like "JAXP is included in J2SE 5.0 and Java SE 6.0, please verify that you have such version of JRE"
  • Add JAXP to distribution (can meet legal issues)
  • Add to error message where JAXP can be taken and how to install it
  • Change the way setconfig tests for JAXP
  • In the IAC case used the support packaged in the workbench already
Bugzilla bug 215023
  • IAC does not have a configuration file for standalone use.
Problem is absence of default AC configuration file which can be used
Solution for problem can be:
  • Check configuration file each time then then profiling started and run SetConfig if it is inconsistent. User can just response to question of configuration script in console where profiling have been run
  • Configure execution by value of environment variable TPTP_AC_HOME
  • note that use of global environment variables cna be problematic if multiple AC instances are used, since this is a supported environment starting with 4.4
Bugzilla bug 214088
Distribution's problem
  • Plain windows workbench install of 4403 includes binaries for linux IAC as well as 64 bit
Seems that this isn't a direct problem for usability. But can be risen since it makes install and download slow.
  • IAC does not start until a test connection is attempted
Problem is that IAC doesn't start automatically
Solution for problem can be:
Data filtering
  • Filters set in attach config are called default, but properties variant is called __JVMPI__
Problem is completely incorrect functionality of property tab with filters.
Filter can be edited and renamed but it doesn't affect set of collected classes.
Even if remove all filtering entities, press "finish" and reopen dialog all settings are completely recovered.
Solution for problem can be:
  • Expected behavior for filter page on node properties should be defined.
Problem can be tracked via bugzilla.
Possible approach to make this page read only for JVM TI's nodes, and correct logic for filter's name displaying.
Execution management
  • After detaching and attaching to an agent, no more data is collected/sent to the workbench
  • After deleting profiling sessions/connections navigator shows status of all deleted connections (What do you mean here --Alexander.n.alexeev.intel.com 18:22, 6 December 2007 (EST))
    • This is a UI problem. At the bottom of the workbench the status line shows the number of events process and the time etc. for the profiling connection that is in focus in the navigator of the profiling perspective. This gives a user some indication of the amount of work our code is doing for them. If you terminate the profiling session and delete the resource from the navigator the status line should not show any status because there is no session in focus. After I created a few sessions, terminated each of them and then deleted them all, the status line cycled through the old status of the deleted resources.
  • Attach and collect with execution details turned on, and method data is not rendered (Does rendered mean isn't shown at all? --Alexander.n.alexeev.intel.com 18:22, 6 December 2007 (EST))
    • Yes, it is not showing up in the UI. I did not debug to see if the events where there or if the model was loaded.
Data representation
  • Double click a numbered unknown method and a NPE occurs. (Can't reproduce it)
    • to reproduce you need to get a the tool loaded with these unknown numbered events. Are you getting that symptom and not the NPE or are you not getting the unknown methods. I can capture the models and trace files if needed to reproduce.
  • Even when Execution flow shows threads and unknown methods, the UML diagrams do not have any data
  • Execution flow has 14 threads and Execution details only shows 2 AWT threads

Back to the top