Analyzers
Talk to fellow users of Intel Analyzer tools (Intel VTune™ Profiler, Intel Advisor)

8.0 first steps

hnaparst
Beginner
1,998 Views
I have installed Vtune 8.0 under SuSe 9.2, which is in itself
an accomplishment, since I was unable to install VTune 3.0 under
any environment.

I am trying to work my way through the "Getting Started" document.
Here are the problems I've had:

1. There is no file /opt/intel/vtune/samples/gsexample/gsexample.c
This makes it very hard to profile the application gsexample. I tried to continue by assuming that I should use gsexample2a.

2. I have 3 versions of java on my machine:
a: java version "1.4.2_08", which is the default version that ships with SuSe 9.2.
b: eclipsepackage/3.1/jrockit-jre1.5.0_03/bin/java and
c: eclipsepackage/3.0.1/jrockit-j2re1.5.0/bin/java

If I attempt to run the "First Use" wizard using Java 1.4.2,
java goes into an infinite loop and I have to kill it using kill -9.

If I try to switch java machines by starting vtlec thus:

/opt/intel/vtune/bin/vtlec -vm /opt/intel/eclipsepackage/3.1/jrockit-jre1.5.0_03/bin/java

I also get an infinite loop. If I try to use the java machine from eclipse 3.0.1, I do not get an infinite loop.

However, I get a popup saying that
/boot/vmlinuz-2.6.8-24.17-smp

could not be found, and asking me to specify a different path.
When I merely specify the same path, it is accepted and
I get a function call graph similar to the one indicated by
the "Getting Started" document.

However, the listing of where the program is spending its time
is bogus. The top function is _pthread_mutex_lock, wherein
the program is said to spend 1.27% of its time.

The total run time for the program is 1.16 seconds, which is
quite a bit less than the nine seconds it took to execute the
program outside of vtune.

So, either I'm doing something wrong, or it doesn't work.

Any feedback?
0 Kudos
12 Replies
jeffrey-gallagher
1,998 Views
1. Sounds like you found a bug!
2. Which installation did you select? If custom, you should have been given the option to use a supported Eclipse version that was already installed on your system. You can examine the installation log (default location /var/log/*)
for all decisions, failures, choices, successes.
3. If you had calibration enabled, the program might have run two or three or more times, depending on the sampling events you selected. I suggest rerunning your experiment with the default sampling events "clockticks" and "instructions retired" with calibration off. Then, compare results.
jdg
0 Kudos
sharshera
Beginner
1,998 Views
Where did you get Vtune 8.0 for Windows?
I was able to only find the 7.2 version through the website, is that a trial/beta or what?
0 Kudos
sharshera
Beginner
1,998 Views
I am getting confused you are saying Vtune 8.0 under SUSE9.2?
Did you mean Vtune 3.0 or that was RDC over SUSE with Windows to do the analysis on?
0 Kudos
jeffrey-gallagher
1,998 Views
VTune 8.0 for Windows will be out 2nd quarter 2006. It is not available yet of course.
None of my comments above were specific to Windows product. On the linux side, when you install the software you get:
vtl: command line product
vtlec: Eclipse-based GUI
vtserver: linux remote agent, that works ONLY with vtlec 8.0 and vtl 8.0
jdg
0 Kudos
ksnaren
Beginner
1,998 Views
1. Getting error when invoking command vtlec.[linux2.4.20.8] The JVMterminated exit code = 1.
I don't see any installation failure.
-Naren
0 Kudos
jeffrey-gallagher
1,998 Views

There is no 8.0 for Windows. The latest Windows VTUne is 7.2. VTUne 8.0 is a Linux-only tool.

cheers

jdg

0 Kudos
jeffrey-gallagher
1,998 Views

I think unless somebody else pipes up here, it would be a great idea to report this issue directly to Intel Premier support, to get engineering feedback. Include a pack and go of the project that fails if possible, and, definitely no matter what, the log that is generated when you run:

/opt/intel/vtune/bin/vtqfagent

(the name of the log that is created will be told to you when the agent runs)

Be sure to attach that log to the premier case to speed things up.

ALSO, since the problem appears to be eclipse related, I'm guessing as a work around you can use the command line itself, with its plug in viewers until support figures out what is unique to your system. Some examples follow in the hope it will show you the way.

$ vlt activity -c sampling -app "/bin/myapp" run # run a sampling session

$ vtl activity -c callgraph -app "/bin/myapp" -moi "/bin/mymodule" run # run a callgraph sessino

$ vtl view # view my results as ascii text

$ vtl view -gui # view the same data in a GUI viewer

Also consider:

$ man vtl

$ man sampling

$ man callgraph

$ man ActivityController

$ man code

jdg

Message Edited by jdgallag on 11-09-2005 10:59 AM

0 Kudos
jeffrey-gallagher
1,998 Views

WAIT, meant to add:

1) Multiple versions of Eclipse is not unusual per se, it was designed to allow for that

2) Release notes say each of the following have been tested. Any of these should work as you expect:

On IA-32 systems:

* Sun* J2SE v1.4.2 and v5.0
* IBM* JDK 1.4.2
* BEA JRockit 1.4.2 and v5.0

On Itanium architecture systems:

* Sun J2SE v1.4.2 and v5.0
* IBM JDK 1.4.2
* BEA JRockit 1.4.2 and v5.0

On systems with Intel EM64T:

* Sun J2SE v1.4.2 and v5.0
* BEA JRockit 5.0

3) Here's the gs* find output on my system too. Sounds like filenames might have been changed at the last minute:

[root@localhost root]# find / -name "gsexample*"
/opt/intel/vtune/samples/gsexample
/opt/intel/vtune/samples/gsexample/gsexample2a.c
/opt/intel/vtune/samples/gsexample/gsexample2a
/opt/intel/vtune/samples/gsexample/gsexample2c.c
/opt/intel/vtune/samples/gsexample/gsexample2c
/opt/intel/vtune/samples/gsexample/gsexample3a.c
/opt/intel/vtune/samples/gsexample/gsexample3a
/opt/intel/vtune/samples/gsexample/gsexample3c.c
/opt/intel/vtune/samples/gsexample/gsexample3c

jdg


0 Kudos
ksnaren
Beginner
1,998 Views

I was using command line option intsead.

What I observed with the call graph is that the samples are notbeingcollected for the child processes. I used the following:

vtl activity -d 30 -c callgraph -app application_to_be_invoked, cmnd_ln_param -moi mod_of_int

In addition to this I amusing following options: -cal no, term no, sterm no.

With this option I presume that for every 30 sec the callgraph sud collect samples for each of the child process.

-Naren

0 Kudos
jeffrey-gallagher
1,998 Views
Actually the -d option only applies to sampling activities, it has no meaning for callgraph and is ignored.Also, when you use a "-d xx" option in a sampling activity, it means "the duration of this sampling activity is xx seconds or when the application stops running, whichever is first."
The -calibration (-cal) option also applies to sampling only, not callgraph.
When you run a callgraph experiment, VTune copies your app and inserts its own code into the method prologs.Its that copy of the application that runs, and from which we collect the callgraph data that VTune shows you.
I suggest you take a look at the GETTING STARTED GUIDE (default location /opt/intel/vtune/docs/..) or, if you're like me and enjoy a good man page, start here:
$ man sampling
and
$ man callgraph
cheers
jdg

Message Edited by jdgallag on 11-10-2005 10:57 AM

Message Edited by jdgallag on 11-10-2005 10:57 AM

Message Edited by jdgallag on 11-10-2005 10:58 AM

0 Kudos
David_A_Intel1
Employee
1,998 Views
Call graph doesn't work that way, Naren.
Duration and calibration only apply to sampling. Normally, call graph will collect data until the application terminates. And, it collects data everytime the code enters or exits a function.
Also, a requirement for call graph on the command line is that the -moi is the same as the -app.
Regards,
0 Kudos
David_A_Intel1
Employee
1,998 Views

Hi hnaparst:

Please check the Release Notes (/opt/inte/vtune/RELEASENOTES.htm, by default) for supported JVMs. Also, at the end of the install, there is a statement about setting up to use a different JVM other than the one installed by the VTune analyzer installation (environment variable OTHER_JVM_BINDIR). This is the method you need to use to change which JVM vtlec should use, for example:

export OTHER_JVM_BINDIR=/usr/local/jre1.5.0_04/bin

Hope this helps,

0 Kudos
Reply