Re: BDS2006 exe sizes



On Thu, 23 Feb 2006 13:44:12 +0000 (UTC), Marco van de Voort
<marcov@xxxxxxxx> waffled on about something:

On 2006-02-23, Dodgy <Dodgy@xxxxxxxxxxxxxxxxxxxxx> wrote:
On Thu, 23 Feb 2006 18:03:16 +1300, Nicholas Sherlock
<N.sherlock@xxxxxxxxx> waffled on about something:

Ian wrote:
[...]
If the compiler produces a large executable from
such a simple program as those, then they aren't efficient enough in my
book.

Even if the compiler produces executables which are far smaller than the
competition for real projects? Your benchmark is meaningless. If you
want to work with no support for a "Hello World" .exe, then don't use
the VCL or RTL. Code it all from scratch. If you want to get some work
done, stop worrying about your .exe size.

I recently had a play with the Free Pascal Compiler and Lazarus, and
was quite impressed so I decided to throw the source of my Suduko
solving program at it to see just how good/bad it was.

First the code compiled first go, no changes required, but the exe was
huge 6meg compared to 400K in D7.

Since the FPC one is with Full debugging-info-in-binary, I assume you configured
delphi to do the same? Specially don't forget to tick "td32 debug info" in
linker options :-)

Oh I tried all that, I ticked and unticked everything... It never got
me more than 300k off the size. I may have missed something though :-)

. So then I decided to do some speed
tests, it might produce huge code (which I could probably trim down
myself with a bit of hand optimising) but blimee does it run fast.
Running my program and solving a 4x4 hex suduko was 3x faster with the
FPC code than D7.

Wait till you get 2.1.1. It's performance should be better :_)

Groovy :-)

I look forward to it.

FYI my suduko program uses some huge tlists and self calling
functions, so it looks like FPC is faster with it's tlist handling,
although I haven't checked to see if it's greedier with the memory
when running.

Note that FPC packs a tlist without notifiers (tfplist, but a better name
would be TD3List). If you are really speed bound by tlist, a little

Type
{$ifdef FPC}
TMylist = TFpList;
{$else}
TMyList = TList;
{$endif}

could be worthwhile.

Oh, you mean it could go faster... Nice :-D

Dodgy.
--
MUSHROOMS ARE THE OPIATE OF THE MOOSES
.



Relevant Pages

  • Re: BDS2006 exe sizes
    ... Even if the compiler produces executables which are far smaller than the ... solving program at it to see just how good/bad it was. ... Running my program and solving a 4x4 hex suduko was 3x faster with the ... FPC code than D7. ...
    (comp.lang.pascal.delphi.misc)
  • Re: Delphi strategy against Lazarus
    ... I just created a simple app (with the latest lazarus 0.9.24)... ... Anyway I've been following lazarus for a long time, but .exe size is a big ... Sometimes its 300% faster in simply functions, sometimes FPC is slower, ... And FPU is handled very well on FPC, altought I am not ASM guru.... ...
    (borland.public.delphi.non-technical)