views:

191

answers:

5

I am using Delphi 2009.

On a huge project 300+ units, 5 third party components, many libraries, very often the IDE gets frozen for seconds, very often when "intellisense" (I don't remember how it is called) tries to give me suggestions.

Is there a way to improve the performance?

I will try also the following improvements:

1) format my machine

2) upgrade to Delphi XE

But can you suggest any other thing?

+5  A: 

3) buy a faster machine

4) deactivate code hinting

5) try IDE FixPack

6) keep always in your mind: Hardware is Cheap, Programmers are Expensive

splash
And don't forget DelphiSpeedUp: http://andy.jgknet.de/blog/?page_id=8 Besides performance improvements it also includes a feature to stop the code insight on mouse move or esc.
Lars Truijens
I will install IDE FixPack and disable some options. I will install newer Delphi on a fast server and do remote desktop against it.
Delphi Speed Up is useless for Delphi 2009+. Anyway good advice.
+3  A: 

(Code Insight) Intellisense tends to be a bit of a pain, since it will use information from the code to check what intelligence it can serve. You can reduce the amount of "intelligence" by referencing to less units from your code. If unit one does not need anything from unit Two, then don't 'use' unit Two in that unit. Cleaning up the 'uses' clause will speed things up a bit.
You might also want to turn off some or all options that Intellisense provides. The IDE becomes a little less helpful then (but CTRL+SPACE is still your friend) but it will speed things up a bit.
With a project over 300 units, you should possibly rethink the original design. Is it possible to split up the units in logical blocks? Is it possible to move some units in separate packages or DLL's? It's not uncommon for large projects to be this big, though. But I myself tend to put related units together in the same subfolder, with multiple subfolders in my project for all logical unit-blocks.
The design of the project itself will always complicate things, though. Newer hardware, more memory, a faster hard disk and more patience are very practical with these kinds of projects.

Workshop Alex
+2  A: 

If that's 5 large component libraries you're using, this tip might help.

If you monitor your system's file access using SysInternals or something similar you'll see that it very frequently reads every folder in your IDE library path. Reducing the number of folders in my library path made a noticeable, though not drastic, improvement to Code Insight for me.

Move all your third party component DCU files into a single directory, then add that directory to the library path, removing the existing third party DCU directories from the library path at the same time.

You may have to copy a few DFM, RES and INC files to this new common DCU folder, but you'll get compiler errors letting you know about those.

LachlanG
A: 

download and use some tools like Delphi Distiller with that you can remove some unwanted refactoring feature and many tweaks available in that software

and use DelphiSpeedUp 2.8 makes Delphi ide load faster (it enhances d2007 load time very much) but it can also speedup d2009 a little bit

Vibeeshan
A: 

Delphi distiller can even disable unwanted packages and tools even some components

Vibeeshan