General Sluggish-ness

I recently updated from 10 to 10.5 and, now, to EAP IU-107.148 (on Mac OS X 10.6.7) with the 0.4.1102 Scala plugin and am experiencing, IMO, very poor performance. Copy/paste operation is almost unusable for selecting anything more than a line of code - the entire editor locks up and I must wait as long as 30 seconds before I can continue. And, even then, it may not have actually copied the code. Also, code completion/suggestion only seems to work for the current scope (typing something like 'user.f' won't suggest user.foo. however, singletons' members are suggested, sometimes.).

I've disabled as many plugins as I could possibly get away with and have only the following enabled:

  • Apache config (.htaccess) support
  • CSS Support
  • Inspection-JS
  • JavaScript Debugger
  • JavaScript Support
  • JRebel Plugin
  • LESS support
  • PHP
  • Properties Support
  • SASS Support
  • SBT
  • Scala
  • Structural Search
  • Task Management
  • XPathView + XSLT Support


As an example, I just typed the first letter of an object member and while waiting on the auto-suggest menu to popup my cpu usage for intellij (via Activity Monitor) rose from around 12% to 166%. See attached cpu snapshot (and SOE) of this example.

Any suggestions?



Attachment(s):
IU-107.148_andrewmullins_02.06.2011_23.33.26.zip
intellij-scala-soe.txt.zip
38 comments
Comment actions Permalink

Performance for me was definitely improved using idea-IU-107.277 with nightly build 0.4.1144.  Autocomplete is still a bit slow, but not as bad as before.

0
Comment actions Permalink

I experience the same problem with any a little bigger / non-trivial project. I'm hoping for the next official plug-in update. 0.4.1084 has really a problem here. Everything was much faster and smoother in the beginning of the year :(

0
Comment actions Permalink

Please try the latest nighlty build 0.4.1170. It works much faster.

Best regards,
Alexander Podkhalyuzin.

0
Comment actions Permalink

I tried it out with the latest build and IDEA 10.5.1. It is a lot better, much more responsive and usable - thanks!

But I notice that when you have an error (e.g. type in some rubbish) the "red ink" still takes a much longer time to appear on longer files than it does on short ones: several seconds, whereas on a short file it is nearly instant. We already know that the rest of the file is valid, so I suspect it's possible to speed up the error checking as well.

Keep up the good work.

0
Comment actions Permalink

I have noticed this as well. If you type quickly and only pause when the code is syntactically correct, IDEA is able to reparse it quickly. However, if you pause long enough while in the middle of typing code and IDEA parses it as syntactically incorrect, it takes significantly longer to reparse after you've finished typing the correct code.

0
Comment actions Permalink

That is possible problem with current architecture. I mean inspections (there are few slow inspections, you can try to disable few of them), which can get more priority than general highlighting.
I'll try to find a way to fix performance of visible code highlighting, but I'm not sure if it's possible now.

Best regards,
Alexander Podkhalyuzin.

0
Comment actions Permalink

In my opinion, it's rather important. Basically, I can run sbt to see if my code compiles correctly before IDEA finishes parsing and removes the red error highlighting. That negates one of the big reasons to use the Scala plugin.

I actually tried disabling inspections entirely by dragging the Hightlighting Level slider down to "Syntax". It didn't improve the performance much. It would seem to me that the problem lies in the speed of reparsing code that was originally parsed with errors but has since been corrected.

0
Comment actions Permalink

I'm using the latest nightly build (0.4.1185) now and the speed improvement is great.   CPU usage remains rather high on my quadcore i7 but not "stress test" high like before :)

I do notice that syntax highlighting lags, particularly in clearing errors (I've started just running sbt compile like the other commenter), but otherwise I am pretty happy now.

Thanks for all your work to improve the plugin performance!

0

Please sign in to leave a comment.