Watch, Follow, &
Connect with Us
Public Report
Report From: Delphi-BCB/Compiler/Delphi/Interaction with UI    [ Add a report in this area ]  
Report #:  95160   Status: Open
Refactoring Package slows compilation down considerably
Project:  Delphi Build #:  Delphi XE 15.0.
Version:    15.1 Submitted By:   Florian Büther
Report Type:  Feature Specification issue Date Reported:  6/15/2011 4:50:27 AM
Severity:    Commonly encountered problem Last Updated: 3/20/2012 2:24:39 AM
Platform:    All versions Internal Tracking #:   283851
Resolution: None (Resolution Comments) Resolved in Build: : None
Duplicate of:  None
Voting and Rating
Overall Rating: No Ratings Yet
0.00 out of 5
Total Votes: None
Description
After searching for several month for a way to improve our Delphi XE compilation times (see https://forums.embarcadero.com/message.jspa?messageID=332639#332639 for details), we discovered a rather large flaw in the refactoring ide.

Through several enhancements we got the average project compilation time of our project down to about 6 minutes (~1 million LOC).
A recompile after a single unit was changed took inbetween 40 and 100 seconds.

After playing around with the registry, we noticed that cleaning the Known IDE Packages improved the compilation time drastly. We managed to identify the refactoride150.bpl as the single source of improvement. If this packages is removed, a full compilation takes about 2 minutes 10 seconds to 3 minutes.

As a downside, this removes the Refactoring Menu Items; however, we do not use these at all (coming from Delphi 7, we are not used to refactor automatically ;)).
Steps to Reproduce:
Open a large project of your choice.

Recompile and note the overall compilation time.

Rename
c:\Programs\Embarcadero\RAD Studio\8.0\bin\refactoride150.bpl (or similar) so that it can not be found (e.g. to __refactoride150.bpl).

Restart Delphi XE.

Completely recompile your project earlier and note the overall compilation time.
Workarounds
As the compiler still works with the Refactoring IDE, no workaround is required.
If you decide to rename the bpl, you can name it back to have the menu point again, complete with slow compilation time.
Attachment
None
Comments

None

Server Response from: ETNACODE01