Board index » cppbuilder » woeful compile times in BCB6

woeful compile times in BCB6


2003-10-23 05:13:49 PM
cppbuilder35
I've just upgraded my app from BCB4 to BCB6. Its a big app, 469 forms and
units. A full build in BCB4 used to take 11 minutes. A full build now
takes over 50 minutes in BCB6 in the IDE.
I accept it should take a little longer to compile for increased
functionality but>4 times?
Anti-virus software is turned off.
I've created a PCH.H file as in Harold Howe article and deleted all the TDS,
CSM, IL* files and managed to get a full build to 12 minutes in the IDE. A
command line build takes 8 minutes.
But now after a week or so its back to taking 50+ minutes for a build, even
though the IDE reports the build taking less than this time! Why does the
IDE take so long? It takes at least 10 seconds before each file starts to
compile. The command line compiler rips through 2-3 files per second.
I have a P4 2G, gigs of disk space, with 512MB so this shouldn't be an
issue. I notice the CSM file is now>54MB. Does this get larger with each
incremental build? Do I need to delete all the TDS, CSM, IL* files
periodically to maintain low build times?
If I close and reopen the IDE after a build then click Run it takes a 30-40
seconds to work out nothing needs to be compiled then runs the app?
I've seen similar problems in news groups but as yet have not found the
solution.
Regards
AJAY
 
 

Re:woeful compile times in BCB6

Adam Johnston wrote:
Quote

I accept it should take a little longer to compile for increased
functionality but>4 times?

Look in the $(BCB)\Include directory (and sub directories) and delete
all *.hdp files. They are supposedly pre-compiled versions of the main
headers, but all they achieve for big projects is to slow down compilation.
Quote

I have a P4 2G, gigs of disk space, with 512MB so this shouldn't be an
issue. I notice the CSM file is now>54MB. Does this get larger with each
incremental build? Do I need to delete all the TDS, CSM, IL* files
periodically to maintain low build times?

How many other PCH files do you have? #00, #01, #02? You should only
really have 1 of these, and the .csm file.
I only see the csm file grow if I have multiple pre-compiled headers in
different cpp files or if I alter a header that is to be pre-compiled.
Apart from that it doesn't grow.
Quote
If I close and reopen the IDE after a build then click Run it takes a 30-40
seconds to work out nothing needs to be compiled then runs the app?

This is because it has a lot of dependencies to check to see if it needs
re-building. Once this has been done, it caches the modified times of
all dependency files so it doesn't have to query the OS each time. If
you switch to another app and back to bcb, it re-checks all the files to
see if anything needs re-building. This is why you get a pause the
first time you try and run the project.
HTH
Russell
 

Re:woeful compile times in BCB6

Thanks for the suggestions.
I deleted all the HDP files and rebuilt but no effect. In fact it took over
an hour to build this time but IDE reported it took only 15 minutes??? The
IDE build times are totally inaccurate! The 12 minute build I did before
was reported by the IDE also so it may well have been much longer than this.
I only have 1 PCH file, it only generates 1 .#00 file, 1 CSM file and 1 TDS
file.
I noticed the time to compile a file gets longer and longer, its starts off
takes about 2-3 seconds before it actually starts compiling the first few,
then by the last (469) it takes a good 15 seconds thinking before it starts
the compile.
The project is a convert from V4 ->V6. I will try recreating the project
from scratch in BCB6 see if this makes any difference.
Regards
AJAY
"Russell Hind" < XXXX@XXXXX.COM >wrote in message
Quote
Adam Johnston wrote:
>
>I accept it should take a little longer to compile for increased
>functionality but>4 times?
>

Look in the $(BCB)\Include directory (and sub directories) and delete
all *.hdp files. They are supposedly pre-compiled versions of the main
headers, but all they achieve for big projects is to slow down
compilation.

>
>I have a P4 2G, gigs of disk space, with 512MB so this shouldn't be an
>issue. I notice the CSM file is now>54MB. Does this get larger with
each
>incremental build? Do I need to delete all the TDS, CSM, IL* files
>periodically to maintain low build times?
>

How many other PCH files do you have? #00, #01, #02? You should only
really have 1 of these, and the .csm file.

I only see the csm file grow if I have multiple pre-compiled headers in
different cpp files or if I alter a header that is to be pre-compiled.
Apart from that it doesn't grow.

>If I close and reopen the IDE after a build then click Run it takes a
30-40
>seconds to work out nothing needs to be compiled then runs the app?
>

This is because it has a lot of dependencies to check to see if it needs
re-building. Once this has been done, it caches the modified times of
all dependency files so it doesn't have to query the OS each time. If
you switch to another app and back to bcb, it re-checks all the files to
see if anything needs re-building. This is why you get a pause the
first time you try and run the project.

HTH

Russell

 

{smallsort}