IDEA 7.0.2 on Ubuntu 7.10 Performance Issues

I've got Ubuntu 7.10 on my machine with Sun's JDK 1.6.0.03 with IDEA_JDK set to use that version of the JDK. As far as the hardware setup goes, it's a Dell Precision 390 with 2GB of memory, a 1.86GHz Intel Dual Core processor, and an nVidia Quadro NVS 285 graphics card using the restricted drivers from nVidia (if any of that matters). I currently have this in my idea.vmoptions file:

-Xms128m
-Xmx512m
-XX:MaxPermSize=120m
-ea
-server

With this setup, Intellij 7.0.2 is downright unusable. The IDE frequently pauses while I'm typing, freezes for about a minute when switching back and forth between applications, can be unbearably slow during debugging, takes about a minute to become responsive after making changes to the project file, maxes out CPU usage, and often runs out of memory no matter how high I set the cap. I tried adding "-Dsun.awt.keepWorkingSetOnMinimize=true" to idea.vmoptions to get around a supposed JDK 6 issue mentioned in another thread. I'm not sure what I can do at this point to get things running smoothly.

A couple of thread dumps are attached, let me know if there's anything else needed to track this down.

Anyone else having these issues on a similar setup?



Attachment(s):
frozen.dump
task_switch.dump
8 comments
Comment actions Permalink

Just in case this helps, here's what gets dumped to the console when the out of memory exception is thrown:

java.lang.OutOfMemoryError: GC overhead limit exceeded
at java.util.Arrays.copyOfRange(Arrays.java:3209)
at java.lang.String.(String.java:216) at java.lang.StringBuilder.toString(StringBuilder.java:430) at java.io.UnixFileSystem.resolve(UnixFileSystem.java:93) at java.io.File.(File.java:312) at com.intellij.openapi.vcs.FilePathImpl.(FilePathImpl.java:62) at com.intellij.openapi.vcs.FilePathImpl.]]>(FilePathImpl.java:91)
at com.intellij.openapi.vcs.changes.ui.TreeModelBuilder.getPathForObject(TreeModelBuilder.java:100)
at com.intellij.openapi.vcs.changes.ui.TreeModelBuilder.a(TreeModelBuilder.java:31)
at com.intellij.openapi.vcs.changes.ui.TreeModelBuilder.a(TreeModelBuilder.java:142)
at com.intellij.openapi.vcs.changes.ui.TreeModelBuilder.buildModel(TreeModelBuilder.java:75)
at com.intellij.openapi.vcs.changes.ui.ChangesListView.updateModel(ChangesListView.java:47)
at com.intellij.openapi.vcs.changes.ChangesViewManager.refreshView(ChangesViewManager.java:76)
at com.intellij.openapi.vcs.changes.ChangesViewManager$2.run(ChangesViewManager.java:2)
at com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.run(LaterInvocator.java:12)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
at com.intellij.ide.IdeEventQueue.c(IdeEventQueue.java:10)
at com.intellij.ide.IdeEventQueue.b(IdeEventQueue.java:87)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:188)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:273)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:183)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:173)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:168)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:160)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:121)
ERROR - pplication.impl.LaterInvocator -
java.lang.OutOfMemoryError: GC overhead limit exceeded
at java.util.Arrays.copyOfRange(Arrays.java:3209)
at java.lang.String.(String.java:216) at java.lang.StringBuilder.toString(StringBuilder.java:430) at java.io.UnixFileSystem.resolve(UnixFileSystem.java:93) at java.io.File.(File.java:312) at com.intellij.openapi.vcs.FilePathImpl.(FilePathImpl.java:62) at com.intellij.openapi.vcs.FilePathImpl.]]>(FilePathImpl.java:91)
at com.intellij.openapi.vcs.changes.ui.TreeModelBuilder.getPathForObject(TreeModelBuilder.java:100)
at com.intellij.openapi.vcs.changes.ui.TreeModelBuilder.a(TreeModelBuilder.java:31)
at com.intellij.openapi.vcs.changes.ui.TreeModelBuilder.a(TreeModelBuilder.java:142)
at com.intellij.openapi.vcs.changes.ui.TreeModelBuilder.buildModel(TreeModelBuilder.java:75)
at com.intellij.openapi.vcs.changes.ui.ChangesListView.updateModel(ChangesListView.java:47)
at com.intellij.openapi.vcs.changes.ChangesViewManager.refreshView(ChangesViewManager.java:76)
at com.intellij.openapi.vcs.changes.ChangesViewManager$2.run(ChangesViewManager.java:2)
at com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.run(LaterInvocator.java:12)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
at com.intellij.ide.IdeEventQueue.c(IdeEventQueue.java:10)
at com.intellij.ide.IdeEventQueue.b(IdeEventQueue.java:87)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:188)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:273)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:183)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:173)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:168)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:160)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:121)
ERROR - pplication.impl.LaterInvocator - IntelliJ IDEA 7.0.2 Build #7590
ERROR - pplication.impl.LaterInvocator - JDK: 1.6.0_03
ERROR - pplication.impl.LaterInvocator - VM: Java HotSpot(TM) Server VM
ERROR - pplication.impl.LaterInvocator - Vendor: Sun Microsystems Inc.
ERROR - pplication.impl.LaterInvocator - OS: Linux
ERROR - pplication.impl.LaterInvocator - Last Action: GotoClass
java.lang.OutOfMemoryError: GC overhead limit exceeded
at java.util.Arrays.copyOfRange(Arrays.java:3209)
at java.lang.String.(String.java:216) at java.lang.StringBuilder.toString(StringBuilder.java:430) at java.io.UnixFileSystem.resolve(UnixFileSystem.java:93) at java.io.File.(File.java:312) at com.intellij.openapi.vcs.FilePathImpl.(FilePathImpl.java:62) at com.intellij.openapi.vcs.FilePathImpl.]]>(FilePathImpl.java:91)
at com.intellij.openapi.vcs.changes.ui.TreeModelBuilder.getPathForObject(TreeModelBuilder.java:100)
at com.intellij.openapi.vcs.changes.ui.TreeModelBuilder.a(TreeModelBuilder.java:31)
at com.intellij.openapi.vcs.changes.ui.TreeModelBuilder.a(TreeModelBuilder.java:142)
at com.intellij.openapi.vcs.changes.ui.TreeModelBuilder.buildModel(TreeModelBuilder.java:75)
at com.intellij.openapi.vcs.changes.ui.ChangesListView.updateModel(ChangesListView.java:47)
at com.intellij.openapi.vcs.changes.ChangesViewManager.refreshView(ChangesViewManager.java:76)
at com.intellij.openapi.vcs.changes.ChangesViewManager$2.run(ChangesViewManager.java:2)
at com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.run(LaterInvocator.java:12)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
at com.intellij.ide.IdeEventQueue.c(IdeEventQueue.java:10)
at com.intellij.ide.IdeEventQueue.b(IdeEventQueue.java:87)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:188)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:273)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:183)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:173)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:168)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:160)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:121)

0
Comment actions Permalink

I installed Idea 7.0.2 on Ubuntu last week. I went through some trouble at first when I still had the "Visual Effects" in Ubuntu enabled. First of all, my Idea popup windows sometimes were not displayed right. I added export AWT_TOOLKIT=MToolkit in my .bashrc. This helped but then I got pause, freezes and all that stuff. I turned off "Visual effects" entirely and it works like a charm. I have "ATI restricted drivers" enabled but nothing added in my idea.vmoptions file.

0
Comment actions Permalink

Use the last compiz fusion to have cool effects on ubuntu. Install the compiz fusion manager and go to the plugin panel, You will see a plugin to prevent disfunction with java (java compatibility or something else). NEVER set AWT_TOOLKIT, never....

0
Comment actions Permalink

The slowdown might be related to the Perforce source control integration according to the support folks. Their advice was to exclude unversioned files from the project. I'll give this a shot sometime soon.

0
Comment actions Permalink

I've had the same problem. When visual effects are turned on, the IDEA window goes blank.

Here are the steps:
1. Turn on visual effects on Ubuntu
2. Start IDEA - IDEA screen will be blank

Anyway, I'm happy with turning off visual effects since they provide no real value addition to my work.

Azeez

0
Comment actions Permalink

Hi,

I've dual head Ubuntu 7.10 with NVidia. I was having same kind of problem. Here is my fix;

1. Upgrade to jdk1.6.0_03
2. Just turn off the one head (monitor) if u have, and wait for further update from NVidia.

Cheers,

Isa

0
Comment actions Permalink

I was having rotten performance with Ubuntu 7.1 and IntelliJ 7.0.2, also, but the following vm parameters have worked well for the last couple of days:

-Xms512m
-Xmx512m
-XX:MaxPermSize=200m
-ea

My workstation has 4G of RAM, so giving 1/2 G to IntelliJ isn't a big deal for me.

0
Comment actions Permalink

I was running into similar problems on a multi-head machine with 3Gb of available memory, with my idea.vmoptions as follows:
-Xms32m
-Xmx512m
-XX:MaxPermSize=512m
-ea

I'm using NVidia's latest driver for Linux in order to drive my monitors at their native resolution. I have "Visual Effects" turned off in Ubuntu's "Appearance Preferences" applet. In the "NVIDIA X Server Settings" applet (see attached screen shot), I've turned off Xinerama and set my configuration for "TwinView". That seems to have solved my issues.

--David



Attachment(s):
Screenshot-NVIDIA X Server Settings.png
0

Please sign in to leave a comment.