Test conditions:
- SVN 11150
- WinXP SP2
- default build + -DHB_FM_STATISTICS_OFF
-DHB_FM_STATISTICS_OFF is the default now.
- speedtest.exe
BCC MinGW 4.4.0
Test execution 69.58 / 73.90 57.77 / 59.98
speedtst.exe size 622592 1090648 (903680 stripped)
Harbour build 4min 47sec 29min 15sec
So, GCC is 17% faster execution, 45% larger executable, 6.11 times
longer compilation.
The question is: why executable size is significantly larger? Huge
number of inlined functions or ...?
I'd also like to know.
However, the size difference may change for larger projects.
I seem to remember msvc was the winner here, yet it's larger
for small projects. I can no longer build my app for BCC, so
cannot give actual data, but that's also a factor we should
consider.
For me BTW, MinGW speed advantage is much bigger.
For Harbour development, it would be nice to have a better compile
time also. Half an hour to check if typo is fixed is a long time.
This is true, but with our GNU Make system, this is rarely
required, since you can rebuild the changed lib only, by
issuing the make command in the corresponding source directory.
The other thing you can do, is to disable optimizations for
development with HB_BUILD_OPTIM=no.
The third thing you can do is to use msys to build for mingw,
as it always felt faster, but I didn't do any measurements.
Notice that with BCC some things aren't built, most notably
hbqt, which is huge and takes ages to compile. You can control
contribs with HB_CONTRIBLIBS envvar.
Finally, I've only kept BCC for testing while doing development,
due to fast compiling speed. I find myself using msvc for that
purpose though...
Brgds,
Viktor
_______________________________________________
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour