Remote debugging performance

I just started trying IDEA, and am of course very impressed by the general speed and usability of the product for normal development features such as code editing, refactoring, etc. (specially in comparison with the other IDE I use, Netbeans 3.4).

What really disappoints me in IDEA is the debugger: netbeans one seems much better, both in terms of information shown, features, usability and, much important, SPEED. Remote debugging with IDEA is an absolute pain: I tried 2 or 3 times, also switched to 681 and jdk 1.4.1_01 on the Solaris server, but still debugging is very, very slow if compared with the performance I obtain turning off IDEA, launching Netbeans and connecting to the same remote process. Has anyone experienced similar slowness?

Also: is there any way to connect to more than one remote process at once? With Netbeans I can debug at the same time a local applet and two remote servers, having so under complete control every possible sequence of operations into my distributed system.

22 comments
Comment actions Permalink

Hi Davide!

Could you pelease describe your debugger configuration? (Or even better
please send me your .ipr and .iws files)

--

Best regards,
Eugene Zhuravlev
JetBrains, Inc, http://www.intellij.com
"Develop with pleasure!"


"Davide Baroncelli" <baroncelli@yahoo.com> wrote in message
news:7317111.1037884474004.JavaMail.jrun@is.intellij.net...

I just started trying IDEA, and am of course very impressed by the general

speed and usability of the product for normal development features such as
code editing, refactoring, etc. (specially in comparison with the other IDE
I use, Netbeans 3.4).
>

What really disappoints me in IDEA is the debugger: netbeans one seems

much better, both in terms of information shown, features, usability and,
much important, SPEED. Remote debugging with IDEA is an absolute pain: I
tried 2 or 3 times, also switched to 681 and jdk 1.4.1_01 on the Solaris
server, but still debugging is very, very slow if compared with the
performance I obtain turning off IDEA, launching Netbeans and connecting to
the same remote process. Has anyone experienced similar slowness?
>

Also: is there any way to connect to more than one remote process at once?

With Netbeans I can debug at the same time a local applet and two remote
servers, having so under complete control every possible sequence of
operations into my distributed system.


0
Comment actions Permalink

I've seen the same thing recently, debugging a server process running on the same (WinNT) machine as IDEA. I did not see this problem with an earlier release. Now it has become, as you describe, painfully slow. I wasnt sure if this has to do with my environment, so I didnt post it until now.

0
Comment actions Permalink

Davide Baroncelli wrote:

I just started trying IDEA, and am of course very impressed by the general speed and usability of the product for normal development features such as code editing, refactoring, etc. (specially in comparison with the other IDE I use, Netbeans 3.4).

What really disappoints me in IDEA is the debugger: netbeans one seems much better, both in terms of information shown, features, usability and, much important, SPEED. Remote debugging with IDEA is an absolute pain: I tried 2 or 3 times, also switched to 681 and jdk 1.4.1_01 on the Solaris server, but still debugging is very, very slow if compared with the performance I obtain turning off IDEA, launching Netbeans and connecting to the same remote process. Has anyone experienced similar slowness?

Also: is there any way to connect to more than one remote process at once? With Netbeans I can debug at the same time a local applet and two remote servers, having so under complete control every possible sequence of operations into my distributed system.


Idea's debugging is limited to a single instance. If you start two
instances of idea, then you can debug multiple apps concurrently. During
most of the EAP, this was possible. But since then, idea does not allow
you launch a second instance.

There is some kind of work around where you can copy several of the
config directories, change the idea.lax file, stand on your head, a
juggle, to be able to run two idea instances. (Well, maybe its not that
hard. I would love to see a step-by-step on how to set this up.)

The following issues is a request for multiple debuggers, like in
netbeans. But unfortunately, it is listed as a low priority.

http://www.intellij.net/tracker/idea/viewSCR?publicId=3766

0
Comment actions Permalink

"Barry Kaplan" <bkaplan@abwg.com> wrote in message
news:3DDD7F47.7040001@abwg.com...
>

>

There is some kind of work around where you can copy several of the
config directories, change the idea.lax file, stand on your head, a
juggle, to be able to run two idea instances. (Well, maybe its not that
hard. I would love to see a step-by-step on how to set this up.)


There's not much to it. Here's how I do it:

1) I have my main IDEA installation at c:\idea. I make a duplicate copy and
put it at c:\idea681 (or whatever the build number is)

2) I change the line in the startup script in c:\idea681\bin like this so
that the config and system directories are at c:\idea681\config and
c:\idea681\system:

Change this:

SET JVM_ARGS=
%IDEA_JVM_ARGS% -Didea.system.path=~/.IntelliJIdea/system -Didea.config.path
=~/.IntelliJIdea/config -Didea.popup.weight=%IDEA_POPUP_WEIGHT%

to this:

SET JVM_ARGS=
%IDEA_JVM_ARGS% -Didea.system.path="%IDEA_HOME%\system" -Didea.config.path="
%IDEA_HOME%\config" -Didea.popup.weight=%IDEA_POPUP_WEIGHT%

That's it.

If you want, you can copy your configs from your main installation to your
secondary one (I don't since I do plugin development with the secondary
instance and want to make sure I have a clean IDEA installation).

Hope this helps.

chris



0
Comment actions Permalink

Idea's debugging is limited to a single instance. If you start two
instances of idea, then you can debug multiple apps concurrently. During
most of the EAP, this was possible. But since then, idea does not allow
you launch a second instance.


Idea does not allow to run 2 instances simultaneously if they share "config"
and "system" directories.
The location of these direcotries is configured in a lax file (or startup
script) with the following properties:
"idea.system.path" and "idea.config.path".
By default they point to the user's home directory:
-Didea.system.path=~/.IntelliJIdea/system
-Didea.config.path=~/.IntelliJIdea/config

Another way is to configure 2 projects: for server and for client (they may
have overlapped source directories or configured to point on the same
sources). There is a possibility to open both projects simultaneously in one
IDEA instance and start debuggers for each project.

The following issues is a request for multiple debuggers, like in
netbeans. But unfortunately, it is listed as a low priority.

>

http://www.intellij.net/tracker/idea/viewSCR?publicId=3766


The priority has been changed to "normal" and it may change further
depending on the number of votes given to this request.

--

Best regards,
Eugene Zhuravlev
JetBrains, Inc, http://www.intellij.com
"Develop with pleasure!"



0
Comment actions Permalink

Hi Christian,

There were some new features added which may be unfortunately time-consuming
in some cases. For example "Alternative view for collection classes" uses
method invocations in order to obtain data from the collection and may
considerably slow down debugging if you are inspecting several collections
simultaneously. Another feature which may be a cause of slowness is
"automatic toString()" mode for some types.
Are you seeing bad berformance if you turn these features off?

--

Best regards,
Eugene Zhuravlev
JetBrains, Inc, http://www.intellij.com
"Develop with pleasure!"

"Christian Sell" <christian.sell@netcologne.de> wrote in message
news:2298566.1037892530354.JavaMail.jrun@is.intellij.net...

I've seen the same thing recently, debugging a server process running on

the same (WinNT) machine as IDEA. I did not see this problem with an earlier
release. Now it has become, as you describe, painfully slow. I wasnt sure if
this has to do with my environment, so I didnt post it until now.


0
Comment actions Permalink


"Davide Baroncelli" <baroncelli@yahoo.com> wrote in message
news:7317111.1037884474004.JavaMail.jrun@is.intellij.net...

I just started trying IDEA, and am of course very impressed by the general

speed and usability of the product for normal development features such as
code editing, refactoring, etc. (specially in comparison with the other IDE
I use, Netbeans 3.4).
>

What really disappoints me in IDEA is the debugger: netbeans one seems

much better, both in terms of information shown, features, usability and,
much important, SPEED. Remote debugging with IDEA is an absolute pain: I
tried 2 or 3 times, also switched to 681 and jdk 1.4.1_01 on the Solaris
server, but still debugging is very, very slow if compared with the
performance I obtain turning off IDEA, launching Netbeans and connecting to
the same remote process. Has anyone experienced similar slowness?
>

Also: is there any way to connect to more than one remote process at once?

With Netbeans I can debug at the same time a local applet and two remote
servers, having so under complete control every possible sequence of
operations into my distributed system.


0
Comment actions Permalink

Oops, soorry for the previous blank post.

What really disappoints me in IDEA is the debugger: netbeans one seems

much better, both in terms of information shown, features, usability

Could you please describe what exact features you miss and what usability
improvements you would suggest?

--

Best regards,
Eugene Zhuravlev
JetBrains, Inc, http://www.intellij.com
"Develop with pleasure!"


0
Comment actions Permalink

idea does not allow you launch a second instance.
There is some kind of work around where you can copy several of the
config directories, change the idea.lax file, stand on your head, a
juggle, to be able to run two idea instances. (Well, maybe its not that
hard. I would love to see a step-by-step on how to set this up.)



A much simpler way : use idea.bat in a copy of IDEA

1/ duplicate the complete idea dir ..../ideaCopy
2?/ copy idea.bat to ..../ideaCopy/bin
3?/ copy idea.license to ..../ideaCopy/bin

You can now launch idea with idea.bat

0
Comment actions Permalink

Hello,

AFAIK, the features you mention were already present in the previous releases I used, which did not have the performance problems. Also, I did not explicitly make use of any of them in this case (I have used them previously and did not see problems). Actually, I was only stepping through the programm.

regards
Christian

0
Comment actions Permalink

IDEA 2.6 did not have such features, they are new to 3.0.
Also most likely you were using JDK 1.3 and debugged with the classic VM.
This version of JDK does not have problems with method invocation
performance. New JDK 1.4 adds hotspot debugging and removes classic VM. This
made debugged applications work faster but added some overhead in debugger
calls. In general, there are a lot of issues that affect debugging
performance of concrete application and we cannot guess what is wrong
without knowing at least what JDKs, debugger features are used for the debug
session. Practice shows that even javac version used to compile the code
matters.
We would appreciate it a lot if you not only pointed out the problem but
also sent us your ipr and iws files to provide additional information about
your environment. Also a more conctrete description of what you consider
"slow" would be great.
Thanks in advance -

--

Best regards,
Eugene Zhuravlev
JetBrains, Inc, http://www.intellij.com
"Develop with pleasure!"

"Christian Sell" <christian.sell@netcologne.de> wrote in message
news:3891373.1037957145933.JavaMail.jrun@is.intellij.net...

Hello,

>

AFAIK, the features you mention were already present in the previous

releases I used, which did not have the performance problems. Also, I did
not explicitly make use of any of them in this case (I have used them
previously and did not see problems). Actually, I was only stepping through
the programm.
>

regards
Christian



0
Comment actions Permalink

Eugene,

I have been following the EAP all the time - I havent used 2.6 in almost a year now.

My problem was that while stepping (F8) through the program I had 1-3 seconds delay after each step. However, as I said, I only saw this once and didnt retry since then. Now I have repeated the procedure and was NOT able to reproduce the problem.

I dont have any other debugger performance problems, and never had any.

regards,
Christian

0
Comment actions Permalink

Can something like this be done with idea.exe and the lax file ?

For example, copy idea.lax to test.lax and call "idea.exe test.lax" or
something like it?

Carlos


0
Comment actions Permalink

Could you please describe what exact features you
miss and what usability
improvements you would suggest?

Sorry for the delay. Features: first of all the "fix class" and "pop stack frame", of course. Then all the multi-connection stuff, and the way it is shown on display: in NB there is a very flexible way of turning off visualization for multiple threads, multiple sessions, breakpoints, watches, and so on. Everything is shown in a very consistent way on the display, and is very easy to turn on/off. Every different panel can be embedded everywhere on the screen (but this is more a feature of the windowing system), giving a great power in layout customization. In IDEA it seems to me the debug view is not so flexible: the "drop down" way of moving into things is not very powerful (I think NB's tree-based approach is better). But, as I've said, I've not used very much the debugger since the performance of the "step" commands was simply too bad to be used.

0
Comment actions Permalink

Sorry for the delay. Features: first of all the "fix class" and "pop stack

frame", of course.

These two are planned.

But, as I've said, I've not used very much the debugger since the

performance of the "step" commands was simply too bad to be used.

For us remote debugging works quite fast. Did you have "Alternate
Collections View" turned on? Were there any objects fonfigured to be viewed
as "toString()"?

--

Best regards,
Eugene Zhuravlev
JetBrains, Inc, http://www.intellij.com
"Develop with pleasure!"




0
Comment actions Permalink

For us remote debugging works quite fast. Did you
have "Alternate
Collections View" turned on? Were there any objects
fonfigured to be viewed
as "toString()"?

Actually, no. Maybe the project size can be meaningful? Or the number of source files that are in the project view? I currently have the jdk sources in, log4j ones, turbine's ones and 4 or 5 mountpoints related to the different parts of our project. As I've told you, my perception of IDEA's performance in this field is "relative": Netbeans simply performs better in the same conditions (and the "toString" is default for every class!).

0
Comment actions Permalink

Hello,

I am back in the game. I just started another debugging session (I had other things to do in the meantime, so I wasnt able to test consistently). IDEA is again painfully slow (1-3 seconds after each F8). As I said, this seems to have been introduced in a recent build. I have not changed any default settings in the debugger.

If this persists I will soon get to the point where I have to install another IDE to get a usable debugger.

regards
Christian

0
Comment actions Permalink

"Christian Sell" <christian.sell@netcologne.de> wrote in message
news:1909283.1038303166100.JavaMail.jrun@is.intellij.net...

Hello,

>

I am back in the game. I just started another debugging session (I had

other things to do in the meantime, so I wasnt able to test consistently).
IDEA is again painfully slow (1-3 seconds after each F8). As I said, this
seems to have been introduced in a recent build. I have not changed any
default settings in the debugger.
>

If this persists I will soon get to the point where I have to install

another IDE to get a usable debugger.
>

regards
Christian



0
Comment actions Permalink

Sorry for the blank reply.
Ok, thanks for noticing, we'll investigate this.
Anyone else having the same problems with build 682?

--

Best regards,
Eugene Zhuravlev
JetBrains, Inc, http://www.intellij.com
"Develop with pleasure!"

"Christian Sell" <christian.sell@netcologne.de> wrote in message
news:1909283.1038303166100.JavaMail.jrun@is.intellij.net...

Hello,

>

I am back in the game. I just started another debugging session (I had

other things to do in the meantime, so I wasnt able to test consistently).
IDEA is again painfully slow (1-3 seconds after each F8). As I said, this
seems to have been introduced in a recent build. I have not changed any
default settings in the debugger.
>

If this persists I will soon get to the point where I have to install

another IDE to get a usable debugger.
>

regards
Christian



0
Comment actions Permalink

Actually, no. Maybe the project size can be meaningful? Or the number of

source files that are in the project view? I currently have the jdk sources
in

No that should not affect debugging speed. We'll investigate the issue
further.

--

Best regards,
Eugene Zhuravlev
JetBrains, Inc, http://www.intellij.com
"Develop with pleasure!"


0
Comment actions Permalink

I'm not having any problems with 682. My breakpoints work fine and there is
no delay when stepping through code. Could it have anything to do with what
jdk your building against? I'm using 1.3.1_04. What about the remote
process? I'm connecting to JRun4 which is using jdk 1.4.1_01.

"Eugene Zhuravlev" <jeka@intellij.com> wrote in message
news:arvmd7$gab$1@is.intellij.net...

Sorry for the blank reply.
Ok, thanks for noticing, we'll investigate this.
Anyone else having the same problems with build 682?

>

--

>

Best regards,
Eugene Zhuravlev
JetBrains, Inc, http://www.intellij.com
"Develop with pleasure!"

>

"Christian Sell" <christian.sell@netcologne.de> wrote in message
news:1909283.1038303166100.JavaMail.jrun@is.intellij.net...

Hello,

>

I am back in the game. I just started another debugging session (I had

other things to do in the meantime, so I wasnt able to test consistently).
IDEA is again painfully slow (1-3 seconds after each F8). As I said, this
seems to have been introduced in a recent build. I have not changed any
default settings in the debugger.
>

If this persists I will soon get to the point where I have to install

another IDE to get a usable debugger.
>

regards
Christian

>
>


0
Comment actions Permalink

jdk your building against? I'm using 1.3.1_04. What about the remote
process? I'm connecting to JRun4 which is using jdk 1.4.1_01.


No, this should not matter. However, stepping under JDK 1.3.1.x in classic
mode is much faster that with 1.4.x hotspot VMs.
We already figured out with Christian, that the reason was "Alternate View
for Collections classes" option turned on. It is true that in some cases it
really slows down debugger dramatically (btw when debuggee runs jdk 1.3.1 it
works better). Unfortunately, it is not clear yet how to make it faster.

--

Best regards,
Eugene Zhuravlev
JetBrains, Inc, http://www.intellij.com
"Develop with pleasure!"


0

Please sign in to leave a comment.