Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » Test and Performance Tools Platform (TPTP) » TPTP on Linux x86_64/AMD64
TPTP on Linux x86_64/AMD64 [message #82990] Fri, 08 September 2006 07:34 Go to next message
Darryl Miles is currently offline Darryl Miles
Messages: 123
Registered: July 2009
Senior Member
I have tried using 4.2.0.2 and 4.3.0 with limited success. Stuff
appears like it should work (there are new icons, options and
cofiguration settings, but I've yet to witness any profiling function of
TPTP in action.)



I have ACServer running it seems to be listening on ports:

tcp 0 0 0.0.0.0:10002 0.0.0.0:* LISTEN 21238/ACServer
tcp 0 0 0.0.0.0:10006 0.0.0.0:* LISTEN 21238/ACServer

However when I connect to port 10002 locally the system immediately
disconnects me. If I connect to 10006 the connection stays open, as-if
its waiting for a command from me.

$ telnet 127.0.0.1 10002
Trying 127.0.0.1...
Connected to localhost.localdomain (127.0.0.1).
Escape character is '^]'.
Connection closed by foreign host.

$ telnet 127.0.0.1 10006
Trying 127.0.0.1...
Connected to localhost.localdomain (127.0.0.1).
Escape character is '^]'.
^]
telnet> quit
Connection closed.



This is what I have running:

dlm 21238 0.0 0.3 95864 6720 pts/6 Sl 08:04 0:00 ACServer
dlm 21246 0.0 0.1 51528 3884 pts/6 Sl 08:04 0:00
/opt/agntctrl.linux_em64t-TPTP-4.2.0.2/bin/tptpProcessContro ller




I am unable to launch a Profile version of any simple application.


In looking at Eclipse Preferences -> Profiles and Logging -> Hosts, I
notice there is "Local Direct Connection" and "localhost:10002". The
test connection function returns "Connection success". However it
concerns me that my agent (when connecting with telnet to port 10002)
immediately disconnects me. How can that be considered successful, it
proves nothing.


When I try to launch a simple JUnit test case with Profiling I get the
error:

--- SNIP ---
IWAT0008E Error launching java.exe

Reason:
IWAT0007I Either the agent controller (RAServer.exe) is not started, or
the Java path is incorrect. See log for details.
--- SNIP ---


Can anyone confirm that ACServer, which I am running is really
"RAServer", if I understand the documentation correctly I am already
running the newer agent controller, which is refered to as RAC. Even
though its execution program is called ACServer. There is a symlink
RAServer -> ./ACServer which indicates this.

Can anyone shed any light as to which Java path is incorrect. If is the
one in Eclipse, the one in the agentcontroller ?

Is it possible to enable verbose logging to stdout/stderr for the
ACServer program ?


My installation for RAC was the following:

# The install
cd /opt
mkdir agntctrl.linux_em64t-TPTP-4.2.0.2
unzip /tmp/downloaded/agntctrl.linux_em64t-TPTP-4.2.0.2.zip
unzip /tmp/downloaded/javaprofiler.linux_em64t-TPTP-4.2.0.2.zip

# The runtime environment configuration
JAVA_HOME="/opt/jdk1.5.0_08_x86_64"
export JAVA_HOME
# I found this enviroment variable is magical (but undocumented AFAICS)
TPTP_AC_HOME="/opt/agntctrl.linux_em64t-TPTP-4.2.0.2"
export TPTP_AC_HOME
LD_LIBRARY_PATH="$TPTP_AC_HOME/lib"
export LD_LIBRARY_PATH

# To start service
$TPTP_AC_HOME/bin/ACServer &



If I understand what TPTP aims to provide, I am expecting the basic
memory/time profiling function to work out-of-the-box. I am expecting
the plugins to automatically modify the JVM startup options to include
the necessary -X options. I am also expecting it to construct all other
classpath/environment requirements to allow the JVMPT/JVMTI agent to do
its work. The same sort of functionality as with other Eclipse based
profilers.

After trying to get it to work for a week now its starting to look a bit
like smoke and mirrors. Maybe it would be handy to have a one click
diagnostic function which would perform an installation and
configuration check then perform an automated test and confirm no error
occured.

The packaging is different from other Eclipse projects, usually the SDK
version of a component includes the runtime as well. But I found that
with TPTP it does not, you have to download and install both if you want
both.


Darryl
Re: TPTP on Linux x86_64/AMD64 [message #83318 is a reply to message #82990] Tue, 12 September 2006 21:21 Go to previous messageGo to next message
Randy D. Smith is currently offline Randy D. Smith
Messages: 394
Registered: July 2009
Senior Member
Darryl L. Miles wrote:
>
> I have tried using 4.2.0.2 and 4.3.0 with limited success. Stuff
> appears like it should work (there are new icons, options and
> cofiguration settings, but I've yet to witness any profiling function of
> TPTP in action.)
>
>
>
> I have ACServer running it seems to be listening on ports:
>
> tcp 0 0 0.0.0.0:10002 0.0.0.0:* LISTEN 21238/ACServer
> tcp 0 0 0.0.0.0:10006 0.0.0.0:* LISTEN 21238/ACServer
>
> However when I connect to port 10002 locally the system immediately
> disconnects me. If I connect to 10006 the connection stays open, as-if
> its waiting for a command from me.
>
> $ telnet 127.0.0.1 10002
> Trying 127.0.0.1...
> Connected to localhost.localdomain (127.0.0.1).
> Escape character is '^]'.
> Connection closed by foreign host.
>
> $ telnet 127.0.0.1 10006
> Trying 127.0.0.1...
> Connected to localhost.localdomain (127.0.0.1).
> Escape character is '^]'.
> ^]
> telnet> quit
> Connection closed.
>
>
>
> This is what I have running:
>
> dlm 21238 0.0 0.3 95864 6720 pts/6 Sl 08:04 0:00 ACServer
> dlm 21246 0.0 0.1 51528 3884 pts/6 Sl 08:04 0:00
> /opt/agntctrl.linux_em64t-TPTP-4.2.0.2/bin/tptpProcessContro ller
>
>
>
>
> I am unable to launch a Profile version of any simple application.

4.2 offered "backward compatibility" (BC) in the "new tech AC", but only
for Windows. Note that to get Linux-EM64T you had to go to the "New
technology Agent Controller" download section. What I see there is "The
backwards compatibility layer for the Linux platforms is in the works
and expected to be ready in the next release." It's not there yet.

Thus it only exists for "new work" ... the Eclipse workbench, and it's
GUI interface to profiling and the like, are all dependent on the old
APIs... which aren't supported there yet since BC isn't there.

Today's build *appears* to support AC/BC for Linux-IA32... I haven't
tried the 64-bit versions yet. You might want to try
TPTP-4.3.0-200609120100 if you want to let me know if it works! :-)

> In looking at Eclipse Preferences -> Profiles and Logging -> Hosts, I
> notice there is "Local Direct Connection" and "localhost:10002". The
> test connection function returns "Connection success". However it

Connection success for WHICH of the two? In general, localhost:10002 is
available if you start the AC prior to starting the workbench... if you
start the workbench before starting the AC, the IAC (internal/integrated
AC) can get port 10002 first... meaning Local Direct Connection is the
only possibility.

> concerns me that my agent (when connecting with telnet to port 10002)
> immediately disconnects me. How can that be considered successful, it
> proves nothing.

Trying the 4.3 mentioned above on Linux-IA32, I stay connected via
telnet to either port. Of course that might be that I'm running the
latest build, or that there is something else different here.

For sure we've seen problems when people inappropriately mix and match
32- and 64-bit environments. Are you running a "real" 64-bit JVM? The
libpiAgent.so has to be the same "bit-ness" as the JVM you're running with.

> When I try to launch a simple JUnit test case with Profiling I get the
> error:
>
> --- SNIP ---
> IWAT0008E Error launching java.exe
>
> Reason:
> IWAT0007I Either the agent controller (RAServer.exe) is not started, or
> the Java path is incorrect. See log for details.
> --- SNIP ---

And the log said... (<install_dir>/config/servicelog.log).

"java.exe"?

You ran SetConfig.sh to set up the
<install_dir>/config/serviceconfig.xml file, right? That should have
replaced/fixed teh path for the java executable (which sure won't have
".exe" on it for Linux!).

And you set your LD_LIBRARY_PATH, right?

> Can anyone confirm that ACServer, which I am running is really
> "RAServer", if I understand the documentation correctly I am already

RAServer was the "old RAC name" that was used. We called ours
tptpAgentCtlr a while back, but switched to ACServer for 4.2, and make
RAServer be a symlink to ACServer for those accustomed to the "old ways"
of doing things.

No, it's not RAServer in the sense of all the old RAC documentation. But
it's "the agent controller" for that platform... when it gets there.

Oh, another thing that this last build has is the Start/Stop.sh scripts
(AC prefix, with RA prefix versions being symlinks to those). They might
help as well.

> running the newer agent controller, which is refered to as RAC. Even

No, the old one is the "RAC" ("remote" agent controller)... the new one
is usually called "the new tech AC".

> though its execution program is called ACServer. There is a symlink
> RAServer -> ./ACServer which indicates this.
>
> Can anyone shed any light as to which Java path is incorrect. If is the
> one in Eclipse, the one in the agentcontroller ?

You're right that it could be in either place... but for 4.2 and 4.3 I
thought we shipped empty/dummy serviceconfig.xml files... so it
shouldn't come from there. But then any eclipse for Java shouldn't have
a "java.exe" reference either!

> Is it possible to enable verbose logging to stdout/stderr for the
> ACServer program ?

Not without a rebuild... The Logging parts DO have that capability on
build that we have been known to use. Better is to modify the
serviceconfig.xml file to change INFORMATION => DEBUG and CBE (?) =>
Simple. That gives you some good old debug info that might help.

> My installation for RAC was the following:
>
> # The install
> cd /opt
> mkdir agntctrl.linux_em64t-TPTP-4.2.0.2
> unzip /tmp/downloaded/agntctrl.linux_em64t-TPTP-4.2.0.2.zip
> unzip /tmp/downloaded/javaprofiler.linux_em64t-TPTP-4.2.0.2.zip

Oh... you're using the JVMTI profiler. I'll see if I can get one of the
JVMTI guys to read this and correct all that I might have misstated
having assumed we were talking old protocols! Sorry!

> # The runtime environment configuration
> JAVA_HOME="/opt/jdk1.5.0_08_x86_64"
> export JAVA_HOME
> # I found this enviroment variable is magical (but undocumented AFAICS)
> TPTP_AC_HOME="/opt/agntctrl.linux_em64t-TPTP-4.2.0.2"
> export TPTP_AC_HOME
> LD_LIBRARY_PATH="$TPTP_AC_HOME/lib"
> export LD_LIBRARY_PATH
>
> # To start service
> $TPTP_AC_HOME/bin/ACServer &
>
>
>
> If I understand what TPTP aims to provide, I am expecting the basic
> memory/time profiling function to work out-of-the-box. I am expecting

Given that JVMTI is "tech preview"... that's a bit of a stretch... when
4.3 goes live, I certainly hope that is the case as well! But realize
4.3 is "in development".

> the plugins to automatically modify the JVM startup options to include
> the necessary -X options. I am also expecting it to construct all other
> classpath/environment requirements to allow the JVMPT/JVMTI agent to do
> its work. The same sort of functionality as with other Eclipse based
> profilers.

Right... I agree, and I know that is the goal and intent. And the JVMTI
guys are scrambling to do that...

> After trying to get it to work for a week now its starting to look a bit
> like smoke and mirrors. Maybe it would be handy to have a one click
> diagnostic function which would perform an installation and
> configuration check then perform an automated test and confirm no error
> occured.

In the works as well, last I heard.

> The packaging is different from other Eclipse projects, usually the SDK
> version of a component includes the runtime as well. But I found that

We (the "new tech AC") used to do that, but found the RAC didn't (though
the docs said they did), so we changed to match them... I'll have to
check your statement that SDK==runtime++ out before seeing if we should
change. The idea behind the SDK was "what you need to build for the
project"... not to run it.

> with TPTP it does not, you have to download and install both if you want
> both.


> Darryl

Hope that helps some until the JVMTI calvary arrives!
--
RDS

Randy D. Smith randy (dot) d (dot) smith (at) intel (dot) com
Eclipse TPTP Committer, Platform Proj (data collection/agent controller)
Re: TPTP on Linux x86_64/AMD64 [message #83625 is a reply to message #83318] Fri, 15 September 2006 12:42 Go to previous message
Darryl Miles is currently offline Darryl Miles
Messages: 123
Registered: July 2009
Senior Member
Randy D. Smith wrote:
> Darryl L. Miles wrote:
>> I am unable to launch a Profile version of any simple application.
>
> Thus it only exists for "new work" ... the Eclipse workbench, and it's
> GUI interface to profiling and the like, are all dependent on the old
> APIs... which aren't supported there yet since BC isn't there.

Thanks for you reply, you offer insight into TPTP for Linux/EMT64.

To confirm yes I am running a 64bit JVM and would be happy to attempt to
build and test TPTP on my platform and provide feedback.

However by the sound of it I should wait for the next major release of
4.3.x (in 6-8 weeks) or I should roll my sleeves up. I'm not entirely
sure what the recent builds (less than a week old) will now give me that
the older ones did not.

I'll see what bug reports I can open up with patches to at least make
more native components build for 64bit Linux.



Why is the term IA32 and EMT64T used to describe the two platform when
both the native system and OSGi use the platform identifier of "x86" and
"x86_64".

If I understand correctly both of these fall under the IA32 so people
may mistakenly download IA32 for their 64bit system because it is
implies that the build is generic and is suitable for both 32bit/x86 and
64bit/x86_64 users because both are IA32 platforms.

Maybe its because some of the committers have Intel email addresses and
therefore they are looking to promote and protect their brand name terms
but this is not in keeping with the rest of the world nor any other
Eclipse projects.


Darryl
Previous Topic:Building TPTP java_profiler/StatelessHeapSnapshotManager_C.cpp
Next Topic:Passing arguments to AutoGUI runtime
Goto Forum:
  


Current Time: Fri Oct 24 18:07:39 GMT 2014

Powered by FUDForum. Page generated in 0.02371 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software