[Gambas-user] Wow, Gambas is twice as fast as (Free) Pascal
Benoît Minisini
gambas at ...1...
Sat Oct 11 18:58:15 CEST 2014
Le 11/10/2014 18:32, T Lee Davidson a écrit :
>
> On 10/11/2014 08:52 AM, Benoît Minisini wrote:
>> You're right, I thought that the number of occurrences was printed, not
>> the result. Always look at the code before answering!:-)
>>
>> Well, as Fabien says, shows the Pascal code. I find strange that a
>> compiled Pascal program is twice slower than an interpreted Gambas
>> program. Or there is something weird in the Lazarus compiler?
>>
>> Regards,
>>
>> -- Benoît Minisini
>
> I thought it was strange too, Benoît. But, at the same time, also
> thought it was highly impressive on Gambas' (and its developers')
> account. :-)
>
>
> I have tried compiling the Pascal program with {$OPTIMIZATION ON} and
> also {$RANGECHECKS OFF} (even though that should be the default) with no
> improvement in performance.
>
> Here's the Pascal code:
>
> program Polynom;
> {$mode objfpc}
>
> var
> z : integer;
>
> function DoIt(x : double) : double;
> var Mu : double = 10.0;
> var Pu, Su : double;
> var I, J, N : integer;
> var aPoly : array [0..99] of double;
>
> begin
> N := 500000;
> Pu := 0;
>
> For I := 0 To N-1 do
> begin
> For J := 0 To 99 do
> begin
> Mu := (Mu + 2.0) / 2.0;
> aPoly[J] := Mu;
> end;
> Su := 0.0;
> For J := 0 To 99 do
> begin
> Su := X * Su + aPoly[J];
> end;
> Pu := Pu + Su;
> end;
>
> DoIt := Pu;
> end;
>
> Begin
>
> For z := 1 To 10 do
> begin
> writeln( DoIt(0.2) );
> end;
>
> End.
>
It seems to be a perfect equivalent. So Gambas is faster, cool...
If you succeed in converting the other benchmarks, I will add them to
the wiki.
Regards,
--
Benoît Minisini
More information about the User
mailing list