Bug 60319 - [perf] Startup performance regression of 14%
Summary: [perf] Startup performance regression of 14%
Status: RESOLVED FIXED
Alias: None
Product: Platform
Classification: Eclipse Project
Component: Resources (show other bugs)
Version: 3.0   Edit
Hardware: PC Windows XP
: P3 major (vote)
Target Milestone: ---   Edit
Assignee: Platform-Resources-Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords: performance
Depends on:
Blocks:
 
Reported: 2004-04-28 16:03 EDT by Dan Kehn CLA
Modified: 2006-03-29 11:56 EST (History)
7 users (show)

See Also:


Attachments
Table of results generated by Gary Karasiuk. (117.02 KB, image/jpeg)
2004-04-28 16:09 EDT, Dan Kehn CLA
no flags Details
Stats for M9 versus 213 (starting from rebooted machine) (187.69 KB, image/pjpeg)
2004-05-27 14:07 EDT, Dan Kehn CLA
no flags Details
Stats for M9 versus 213 (warm start) (189.89 KB, image/pjpeg)
2004-05-27 14:07 EDT, Dan Kehn CLA
no flags Details
Comparison of loaded plug-ins V213 versus M9 (67.45 KB, image/pjpeg)
2004-06-01 14:16 EDT, Dan Kehn CLA
no flags Details
RC1 versus V213 (warm start) (118.66 KB, image/pjpeg)
2004-06-01 14:26 EDT, Dan Kehn CLA
no flags Details
RC1 versus V213 (rebooted) (117.46 KB, image/pjpeg)
2004-06-01 14:27 EDT, Dan Kehn CLA
no flags Details
Comparison of loaded plug-ins V213 versus RC1 (67.94 KB, image/pjpeg)
2004-06-01 15:11 EDT, Dan Kehn CLA
no flags Details
Plug-in net startup comparison, RC1 versus V213 (warm) (92.27 KB, image/pjpeg)
2004-06-01 15:16 EDT, Dan Kehn CLA
no flags Details
RC2 versus V213 (warm and rebooted) (41.48 KB, image/pjpeg)
2004-06-14 12:11 EDT, Dan Kehn CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Dan Kehn CLA 2004-04-28 16:03:53 EDT
We have compared startup performance of Eclipse M8 versus Eclipse 2.1.3 (empty 
workspace, cold rebooted machine).  You can see the results here: 
http://wsperf2.torolab.ibm.com:9080/StudioPerf/servlet/CompareTests2?
testid=3040849&testid=3040955.

This shows a regression of 31% (19.2s versus 14.7s).  We have not yet 
determined if this is a one-time cost or one that worsens with added plug-ins 
or more complex scenarios.

Do your startup measurements show a similar regression?
Comment 1 Dan Kehn CLA 2004-04-28 16:09:34 EDT
Created attachment 10077 [details]
Table of results generated by Gary Karasiuk.
Comment 2 Dan Kehn CLA 2004-05-27 14:07:15 EDT
Created attachment 11227 [details]
Stats for M9 versus 213 (starting from rebooted machine)
Comment 3 Dan Kehn CLA 2004-05-27 14:07:54 EDT
Created attachment 11228 [details]
Stats for M9 versus 213 (warm start)
Comment 4 Dan Kehn CLA 2004-05-27 14:09:44 EDT
The startup regression is now 18% for M9, down from 31% for M8.
Comment 5 Steven Wasleski CLA 2004-06-01 09:19:04 EDT
Good improvement in M9, but we still have a performance regression here and 
the downstream product team are quite concerned about this one.  Is further 
work expected for RC2?
Comment 6 Dan Kehn CLA 2004-06-01 14:15:00 EDT
FYI...

Gary is re-running RC1 against V213.  I'm especially interested in the 
increase in the number of active plug-ins for his scenario (opening the Java 
perspective on an empty workspace).

To see what I mean, see the attached table.  

Test1 is V213.  Nothing surprising there, it shows org.apache.xerces, 
org.eclipse.core.boot, and org.eclipse.swt were loaded in V213 but no longer 
in M9 (makes sense because of the restructuring -- not sure about swt (?)).

Test2 is M9.  A number of these are again attributed to restructuring and 
probably are a wash.  But there are a few entries that seem out of place and 
are particularly expensive, e.g., update.configurator.  I think there has been 
work in this area post-M9 that may help.

This data was generated using the Runtime Spy / Core Tools.  I will update 
this bug report with another table once Gary's runs are done.  In the 
meantime, it might be prudent to run your own tests and see if the newly 
loaded plug-ins could be deferred.
Comment 7 Dan Kehn CLA 2004-06-01 14:16:31 EDT
Created attachment 11399 [details]
Comparison of loaded plug-ins V213 versus M9
Comment 8 Dan Kehn CLA 2004-06-01 14:26:54 EDT
Created attachment 11401 [details]
RC1 versus V213 (warm start)
Comment 9 Dan Kehn CLA 2004-06-01 14:27:33 EDT
Created attachment 11402 [details]
RC1 versus V213 (rebooted)
Comment 10 Dan Kehn CLA 2004-06-01 14:29:46 EDT
Note an increase in read I/O and higher CPU usage in both warm and rebooted 
runs.  This may be related to added plug-in / class loading.  I will post the 
plug-in comparision shortly.
Comment 11 Dan Kehn CLA 2004-06-01 15:11:29 EDT
Created attachment 11409 [details]
Comparison of loaded plug-ins V213 versus RC1
Comment 12 Dan Kehn CLA 2004-06-01 15:16:53 EDT
Created attachment 11410 [details]
Plug-in net startup comparison, RC1 versus V213 (warm)

Core runtime seems to account for a large portion of the regression.
Comment 13 Dan Kehn CLA 2004-06-14 12:11:13 EDT
Created attachment 12041 [details]
RC2 versus V213 (warm and rebooted)
Comment 14 Steven Wasleski CLA 2004-06-16 16:00:26 EDT
Should we expect further improvement in RC3?  If so, please target this bug 
for RC3.  If not, should it be marked resolved or targeted for 3.0.1?
Comment 15 Kevin Haaland CLA 2004-06-18 15:26:21 EDT
Note: Same VM was used in both 2.1.3 and RC2 scenarios no additional command 
line args to alter VM defaults


All times in milliseconds to launch eclipse, each case run 10 times 
description of setup for each testcase below. 


Case 1:  Opening an empty workspace, only the resource perspective is open


	2.1.3	Average = 2494.6	Std Dev = 19.15
	RC2	Average = 2814		Std Dev = 37.7


				 	RC2 is 12.8% slower


Case 2: Import SWT, Package Explorer is active part (no editors open)

	2.1.3	Average = 4065.7	StdDev	16.94
	RC2	Average = 3733.2	StdDev	34.56

					RC2 is 9% faster


Case 3: Create a Java Project, Create 10 classes each with 100 errors, 
Resource Perspective is active, No editors

	2.1.3	Average 3175.7		StdDev	16.19
	RC2	Average 2886.2		StdDev	42.50

					RC2 is 9% faster

Case 4: Import src.zip from JDK 1.4 into 1 project, Package Explorer is active 
part (no editors opened)

	2.1.3	Average 6453.2		StdDev 15.73
	RC2	Average 4016.78	        StdDev 18.57

					RC2 is 38% faster

From the time this defect was originally opened there has been a significant 
improvement but we are not yet showing across the board improvements in 
performance. There will be ongoing work post 3.0 to make this better.