spring-attic / spring-ide

Spring Development Environment for Eclipse
299 stars 126 forks source link

STS 3.9.0 is much slower than previous STS 3.8.x #215

Open marioja opened 6 years ago

marioja commented 6 years ago

The following elapsed time measurements were taken on Windows 10 on an AMD Phenom II X4 920 Processor 2.80 GHz processor with 8GB of ram and STS installed on solid state disks. STS.ini uses the following to start STS:

-vm
C:/Program Files/Java/jdk1.8.0_131/bin/javaw.exe
-startup
plugins/org.eclipse.equinox.launcher_1.4.0.v20161219-1356.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.500.v20170531-1133
-product
org.springsource.sts.ide
--launcher.defaultAction
openFile
-vmargs
-Dosgi.requiredJavaVersion=1.8
-Xms40m
-Dosgi.module.lock.timeout=10
-Xverify:none
-Dorg.eclipse.swt.browser.IEVersion=10001
-Xmx1200m

The first number is the elapsed time in seconds (or minutes:seconds) since the previous bullet or since the start of the test. Three separate tests were run. For example, in the next test, the progress bar started updating 32.6 seconds after the workspace name was entered. The STS window appeared 7.1 seconds after the progress bar started updating.

new workspace called wsp1

open existing blank ws wsp1

restart existing wsp1

switch to existing ws with 9 maven java projects

These times are really not acceptable. I chose this tests because they do not require test projects or data.

marioja commented 6 years ago

STS configuration.txt This file contains the STS configuration

martinlippert commented 6 years ago

This sounds indeed bad, I agree. I wonder why this is slower than 3.8.x versions of STS though. But lets try to find this out. There are a few steps that we can take to identify the performance issues in more detail:

capture thread dumps while STS is being slow

do you have a profiling tool at hand?

Would be awesome if you could spend a bit of time to provide these details. Would really like to dive into the details here to see what is going wrong here.

martinlippert commented 6 years ago

(oh, and sorry for being so late in responding here, would like to apologize for that)

kaaterskil commented 6 years ago

Any update on this? I have the spinning beach ball of death (Mac) for every mouse event in the editor - STS v3.9.3, all validations off, content assist on (cleared cache and indexes), memory at 1024m/2048m.

martinlippert commented 6 years ago

@kaaterskil it would be great if you could take a look at the comment above and maybe provide some more details (using the described methods), that would be awesome. Would help a lot to find out what is going wrong on your side. The behavior you describe is clearly not what I am seeing on my Mac, so there must be something specific that we need to identify.

uloga commented 5 years ago

"I have the spinning beach ball of death (Mac) for every mouse event in the editor" I have the same issue with STS 4. My mac specs are great btw but still the IDE is so slow and it eats the cpu! It's worst experience I had so far with any IDE.

martinlippert commented 5 years ago

@uloga It sounds like you are running on STS 4.x, for which we use a different project on GitHub, so it would be great if you could report the issue here: https://github.com/spring-projects/sts4/issues

When reporting it would be awesome to include a few steps how to reproduce this and maybe also provide a sample project (in case this happens using a specific workspace or project). The spinning beach ball of death definitely sounds like there is something blocking the UI thread that should not and needs investigation. So please report this over at the STS4 tracker.

Also, if possible, it would be awesome if you could capture a thread dump (using jps and jstack) at exactly the time when the beach ball is running and eating your CPU, it might reveal the root cause of this right away for us.