Bug 179684 - "Reconcile editor change" perf test is getting slower
Summary: "Reconcile editor change" perf test is getting slower
Status: VERIFIED FIXED
Alias: None
Product: JDT
Classification: Eclipse Project
Component: Core (show other bugs)
Version: 3.3   Edit
Hardware: PC Windows XP
: P1 normal (vote)
Target Milestone: 3.3 M7   Edit
Assignee: Jerome Lanneluc CLA
QA Contact:
URL:
Whiteboard:
Keywords: performance
: 179690 (view as bug list)
Depends on:
Blocks:
 
Reported: 2007-03-28 04:56 EDT by Jerome Lanneluc CLA
Modified: 2007-04-27 10:14 EDT (History)
1 user (show)

See Also:


Attachments
SourceTypeConverter improvement (2.64 KB, patch)
2007-04-05 06:23 EDT, Jerome Lanneluc CLA
no flags Details | Diff
DefaultCommentMapper improvement (2.88 KB, patch)
2007-04-05 06:25 EDT, Jerome Lanneluc CLA
no flags Details | Diff
DefaultCommentMapper improvement (9.81 KB, patch)
2007-04-05 11:59 EDT, Jerome Lanneluc CLA
no flags Details | Diff
DefaultCommentMapper improvement (38.21 KB, patch)
2007-04-06 09:26 EDT, Jerome Lanneluc CLA
no flags Details | Diff
DefaultCommentMapper improvement (39.15 KB, patch)
2007-04-06 13:01 EDT, Jerome Lanneluc CLA
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Jerome Lanneluc CLA 2007-03-28 04:56:22 EDT
In 3.3 M6, the performance test "Reconcile editor change" is between -2.3% and +0.1%). We should investigate why it is getting slower, and fix reconcile so that it gets faster.
Comment 1 Jerome Lanneluc CLA 2007-04-05 06:23:42 EDT
Created attachment 63020 [details]
SourceTypeConverter improvement

Avoids creating unnecessary strings by reusing the PackageFragment's names to create the import reference.
Comment 2 Jerome Lanneluc CLA 2007-04-05 06:25:04 EDT
Created attachment 63021 [details]
DefaultCommentMapper improvement

Use a stack of siblings (instead of a HashMap). This gains 2% of the reconcile.
Comment 3 Jerome Lanneluc CLA 2007-04-05 11:59:48 EDT
Created attachment 63055 [details]
DefaultCommentMapper improvement

This patch has now 2 improvements:
- uses a stack of siblings instead of a HashMap
- passes in the line range of the parent node so that line numbers are computed faster
Comment 4 Frederic Fusier CLA 2007-04-06 03:47:02 EDT
Here are the results I got on our local perf tests (12 runs):

Test	Reconcile	Reconcile Big CU	Reconcile+SearchAllTypes
v_747	-0.17%		0.44%			1.95%
patch	5.24%		0.59%			7.09%
		
I guess the result for Big CU test is not impacted because the CU built in this test has no comment...
Comment 5 Jerome Lanneluc CLA 2007-04-06 09:26:59 EDT
Created attachment 63172 [details]
DefaultCommentMapper improvement

Same improvement as with the previous patch, except that getLineNumber(int, int[], int, int) is moved to Util, and all calls have been changed to use the Util#getLineNumber(...).
Comment 6 Jerome Lanneluc CLA 2007-04-06 13:01:54 EDT
Created attachment 63183 [details]
DefaultCommentMapper improvement

Partial fix of DefaultASTVisitor (to handle MarkerAnnotations)
Comment 7 Jerome Lanneluc CLA 2007-04-07 12:29:13 EDT
SourceTypeConverter and DefaultCommentMapper improvements released for 3.3M7 in HEAD.
Comment 8 Jerome Lanneluc CLA 2007-04-11 07:02:38 EDT
*** Bug 179690 has been marked as a duplicate of this bug. ***
Comment 9 Eric Jodet CLA 2007-04-27 07:59:51 EDT
Verified for 3.3 M7 using build I20070427-0010