| View previous topic :: View next topic |
| Author |
Message |
Andreas Hausladen Guest
|
Posted: Sat Dec 10, 2005 10:54 pm Post subject: Speed bug also exists in BDS 2006 |
|
|
The Compiler<->IDE bug that increases the compile time also exists in BDS
2006 (my copy arrived today).
Because I haven't set up many include directories yet, the time difference
with an updated patch are not that high
New VCL Application - Build:
Without patch: 3.06 ms
With patch: 2.97 ms
But that is not a valid testcase. Unfortunatelly I cannot compile my
"testcase" (aka qmake.exe) due to the new compiler. I think I must remove
many #ifdef Q_CC_BOR from Qt4 now.
--
Regards,
Andreas Hausladen
|
|
| Back to top |
|
 |
Sean Hoffman Guest
|
Posted: Sat Dec 10, 2005 11:02 pm Post subject: Re: Speed bug also exists in BDS 2006 |
|
|
Andreas Hausladen wrote:
| Quote: | The Compiler<->IDE bug that increases the compile time also exists in BDS
2006 (my copy arrived today).
snip |
So is the patch the same for the new compiler or different one?
|
|
| Back to top |
|
 |
Andreas Hausladen Guest
|
Posted: Sat Dec 10, 2005 11:29 pm Post subject: Re: Speed bug also exists in BDS 2006 |
|
|
Sean Hoffman wrote:
| Quote: | So is the patch the same for the new compiler or different one?
|
Yes, except the .bpl name and the symbol from where I get the original
callback structure. But I'm still testing. And maybe I port my file
caching from bcc32pch to the IDE Compiler Speed Improvement patch.
--
Regards,
Andreas Hausladen
|
|
| Back to top |
|
 |
DavidPerkins Guest
|
Posted: Sat Dec 10, 2005 11:50 pm Post subject: Re: Speed bug also exists in BDS 2006 |
|
|
| Quote: | The Compiler<->IDE bug that increases the compile time also exists in BDS
2006 (my copy arrived today).
Because I haven't set up many include directories yet, the time difference
with an updated patch are not that high
|
Hopefully this can be raised with Borland and a fix added ready for the
proper C++ release.
|
|
| Back to top |
|
 |
Andreas Hausladen Guest
|
|
| Back to top |
|
 |
Tom Woodrow Guest
|
Posted: Sun Dec 11, 2005 7:05 am Post subject: Re: Speed bug also exists in BDS 2006 |
|
|
Andreas Hausladen wrote:
WOW!
BCB5 Prof
From the IDE Compile & Link Was 4 Minutes after IDE speed fix 43
seconds. No even enough time to go pee anymore!
Tom Woodrow
|
|
| Back to top |
|
 |
Roddy Pratt Guest
|
Posted: Mon Dec 12, 2005 10:14 am Post subject: Re: Speed bug also exists in BDS 2006 |
|
|
"Andreas Hausladen" <AndreasDOTHausladen (AT) gNOMAILmx (DOT) de> wrote
| Quote: | The Compiler<->IDE bug that increases the compile time also exists in BDS
2006 (my copy arrived today).
Because I haven't set up many include directories yet, the time difference
with an updated patch are not that high
When/if my BDS2006 arrives, I'll let you know any figures. |
Meanwhile, It would be good to add your fix as a workaround for QC13775
And - please *all* vote for QC13775 so we can get Andrew's fix applied to
BDS2006 ASAP...
- Roddy
|
|
| Back to top |
|
 |
Dennis Jones Guest
|
Posted: Mon Dec 12, 2005 4:36 pm Post subject: Re: Speed bug also exists in BDS 2006 |
|
|
"Andreas Hausladen" <AndreasDOTHausladen (AT) gNOMAILmx (DOT) de> wrote
| Quote: | The Compiler<->IDE bug that increases the compile time also exists in BDS
2006 (my copy arrived today).
Because I haven't set up many include directories yet, the time difference
with an updated patch are not that high
New VCL Application - Build:
Without patch: 3.06 ms
With patch: 2.97 ms
|
First, I assume you meant s, not ms. Second, no two builds take the same
amount of time even when several builds are executed in succession, and
especially for such a small project. That small of a difference (0.09s) can
easily be chalked up to variability in running background processes, disk
caching, and a myriad of other variables. A *much* larger project would be
a better test case.
- Dennis
|
|
| Back to top |
|
 |
Andreas Hausladen Guest
|
Posted: Mon Dec 12, 2005 6:35 pm Post subject: Re: Speed bug also exists in BDS 2006 |
|
|
Dennis Jones wrote:
| Quote: | First, I assume you meant s, not ms.
|
Yes.
| Quote: | Second, no two builds take the same amount of time even
when several builds are executed in succession, and
especially for such a small project.
|
That's right. I tested it with a much larger project (but first I had to
remove some #ifdef Q_CC_BOR from Qt4) The a counter speaks words:
FileOpen: execution count: 106016
passed to original FileOpen: 9896
FileAge: execution count: 4937
passed to original FileAge: 349
Compiled with original Compiler: 30.66 secs
Compiler with IDE Compiler Speed Fix: 22.80 secs
Compiler with bcc32pch's IDE Compiler Speed Fix: 19.41
Compiler with bcc32pch using bcc32ide: N/A (development not finished yet)
I seems that Borland has optimized their FileOpen a lot becaue BCB 6 would
have taken minutes if it would have to ("try-") open 106016 files.
I think the time difference comes from the hashtable that Borland does not
use. The 3 seconds from bcc32pch are header file caching. This consumes a
lot of memory so I introduce a new option "Enable header file caching
during compilation".
--
Regards,
Andreas Hausladen
|
|
| Back to top |
|
 |
Roddy Pratt Guest
|
Posted: Mon Dec 12, 2005 7:38 pm Post subject: Re: Speed bug also exists in BDS 2006 |
|
|
"Andreas Hausladen" <AndreasDOTHausladen (AT) gNOMAILmx (DOT) de> wrote
| Quote: |
Compiled with original Compiler: 30.66 secs
Compiler with IDE Compiler Speed Fix: 22.80 secs
Compiler with bcc32pch's IDE Compiler Speed Fix: 19.41
Compiler with bcc32pch using bcc32ide: N/A (development not finished yet)
I seems that Borland has optimized their FileOpen a lot becaue BCB 6 would
have taken minutes if it would have to ("try-") open 106016 files.
|
Can you get a comparable time for BCB 6? On this basis, it seems that
Borland have actually "fixed" the problem, even though they don't claim to
have.
I guess you're right about the hash tables. They might be persuaded to
implement something like that to get a 30% speed improvement, but it's
nothing compared to the 3x+ improvement that's already been addressed.
Assuming they *have* fixed it, I'm amazed they haven't talked up the new
performance. For many shops, that fix alone would justify the upgrade costs
in a matter of weeks. Or maybe it got fixed so long ago that they've
forgotten....?
Can we tell anything by inspecting FileOpen in the VCL source? BCB5 FileOpen
just calls CreateFile...
- Roddy
|
|
| Back to top |
|
 |
Andreas Hausladen Guest
|
Posted: Mon Dec 12, 2005 8:17 pm Post subject: Re: Speed bug also exists in BDS 2006 |
|
|
Roddy Pratt wrote:
| Quote: | Can we tell anything by inspecting FileOpen in the VCL source? BCB5
FileOpen just calls CreateFile...
|
The FileOpen alone was never the problem. It was the code around it that
implements the virtual file system for the opened files. And without IDE
source code we will never know if they fixed it.
--
Regards,
Andreas Hausladen
|
|
| Back to top |
|
 |
Zach Saw Guest
|
Posted: Tue Dec 13, 2005 8:29 pm Post subject: Re: Speed bug also exists in BDS 2006 |
|
|
| Quote: | Compiler with bcc32pch using bcc32ide: N/A (development not finished yet)
|
Do drop us a line when you're done with this. :)
|
|
| Back to top |
|
 |
Andreas Hausladen Guest
|
Posted: Tue Dec 13, 2005 8:50 pm Post subject: Re: Speed bug also exists in BDS 2006 |
|
|
Zach Saw wrote:
| Quote: | Do drop us a line when you're done with this.
|
bcc32ide is on a hold until I have identified all the bug in bcc32pch that
do not happen on my machine.
--
Regards,
Andreas Hausladen
|
|
| Back to top |
|
 |
Zach Saw Guest
|
Posted: Wed Dec 14, 2005 3:04 am Post subject: Re: Speed bug also exists in BDS 2006 |
|
|
| Quote: | Do drop us a line when you're done with this. :)
bcc32ide is on a hold until I have identified all the bug in bcc32pch that
do not happen on my machine.
|
By the way, is bcc32pch available for testing in BDS 2006 yet?
Thanks,
Zach
|
|
| Back to top |
|
 |
Andreas Hausladen Guest
|
Posted: Wed Dec 14, 2005 9:41 am Post subject: Re: Speed bug also exists in BDS 2006 |
|
|
Zach Saw wrote:
| Quote: | By the way, is bcc32pch available for testing in BDS 2006 yet?
|
No because there is no bpr2mak.exe (or bdsproj2mak.exe) that I could call
for creating the make files. But I'm working on this.
--
Regards,
Andreas Hausladen
|
|
| Back to top |
|
 |
|