[fpc-devel] Re: Comparison FPC 2.6.2 - Kylix 3

Daniël Mantione daniel.mantione at freepascal.org
Mon Mar 4 09:08:42 CET 2013



Op Sun, 3 Mar 2013, schreef Marcos Douglas:

> On Sun, Mar 3, 2013 at 5:16 PM, Graeme Geldenhuys
> <graeme at geldenhuys.co.uk> wrote:
>>
>> On 2013-03-03 19:47, Florian Klämpfl wrote:
>>>
>>> First 10 m of a marathon done.
>>
>>
>> Is that 'miles' or 'meters'?  ;-)
>
> Sad. Instead of "fight", why not walking together?
>
> IMHO Martin Schreiber is doing a great job using these comparisons and
> some improvements could be made in FPC... but he is making a mistake
> in their approach of how to present FPC's "defects".
>
> Martin:
> I do not know nothing about compilers, but I know the Florian Klämpfl
> will do nothing about you're saying because do you do not have
> proposed improvements! You are only showing the Delphi/Kylix speed is
> extremely superior (even knowing that Delphi do not is multiplataform
> and do not have the complexity that FPC has, AFAIK).
> One more thing: try do not thinking only in MSEgui in your thoughts,
> in your great ideas.
> IMHO the MSEgui should be part of FPC, somehow, but...
>
> FPC Team:
> Try to hear Martin otherwise, because he is a great developer with great ideas.

That FPC is slower than Delphi is a result of many concious decisions:
* FPC has a lot of passes through the node tree - allows more
   features and transformations 
* FPC has a more layered code generation (hlcg, cg, cpu specific
   overrides) - allows manu CPU architectures, JVM and more
* FPC has an advanced register allocator. Allows speedy code and many CPU
   architectures.
* FPC has external debug information. Due its nature, this debug info
   requires processing power.

As these are concious decisions, there is no quick fix. This doesn't 
mean no attention has been made to the compiler speed, many efforts 
have been put into profiling and optimizing the algorithms. For the 
rest, one has to accept FPC as it is. If FPC was inferior to Delphi, 
we would not have had this discussion.

Further, global bennchmarks of "my million line program takes long to 
compile" are not helpfull at all in diagnosing performance problems. (Or 
bugs, or other issues).

Daniël


More information about the fpc-devel mailing list