tinycc-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Tinycc-devel] Some benchmarks on RPi


From: Christian Jullien
Subject: Re: [Tinycc-devel] Some benchmarks on RPi
Date: Wed, 6 Feb 2013 20:16:46 +0100

Gcc is not using -O2 ... but -O3.

Here are the results with -O0:
Gcc loses 20% in program speed but compiles of course much faster

tcc still compiles around 10x faster but runs x3.5 times slower.

Christian


address@hidden ~/openlisp/cbench $ time make
main.c
gabriel.c
boyer.c
browse.c
ctak.c
dderiv.c
deriv.c
destru.c
div2.c
fft.c
fib20.c
fprint.c
fread.c
frpoly.c
puzzle.c
stak.c
tak.c
takl.c
takr.c
tprint.c
traverse.c
triang.c
ld gngabriel ..

real    1m19.448s
user    1m15.610s
sys     0m2.660s

~/openlisp/cbench $ ./gngabriel ../contrib/gabriel.lsp
 01Fib     : ok, time =   0.001s. ( 0 GC)
 02Tak     : ok, time =   0.013s. ( 0 GC)
 03Stak    : ok, time =   0.060s. ( 0 GC)
 04Ctak    : ok, time =   0.258s. ( 0 GC)
 05Takl    : ok, time =   0.029s. ( 0 GC)
 06Takr    : ok, time =   0.040s. ( 0 GC)
 07Boyer   : ok, time =   0.219s. ( 2 GC)
 08Browse  : ok, time =   0.394s. ( 6 GC)
 09Destru  : ok, time =   0.049s. ( 1 GC)
 10Travini : ok, time =   0.146s. ( 0 GC)
 11Travrun : ok, time =   1.115s. ( 0 GC)
 12Deriv   : ok, time =   0.094s. ( 2 GC)
 13Dderiv  : ok, time =   0.121s. ( 2 GC)
 14Divit   : ok, time =   0.046s. ( 1 GC)
 15Divrec  : ok, time =   0.052s. ( 1 GC)
 16FFT     : ok, time =   0.214s. ( 0 GC)
 17Puzzle  : ok, time =   0.861s. ( 0 GC)
 18Triang  : ok, time =   1.459s. ( 0 GC)
 19Fprint  : ok, time =   0.011s. ( 0 GC)
 20Fread   : ok, time =   0.017s. ( 0 GC)
 21Tprint  : ok, time =   0.004s. ( 0 GC)
 22Frpoly  : ok, time =   0.639s. (13 GC)
                       5.843 s.


-----Original Message-----
From: Thomas Preud'homme [mailto:address@hidden 
Sent: mercredi 6 février 2013 18:29
To: Christian JULLIEN; address@hidden
Subject: Re: [Tinycc-devel] Some benchmarks on RPi

Le mercredi 6 février 2013 13:13:11, Christian JULLIEN a écrit :
> Here are some benchmarks comparing tcc and gcc 4.7 on RPi.
> 
> Benchmarks are taken from my OpenLisp tests suite.
> Source files for the bench consist of 15040 lignes of C code generated 
> form compiler

Was gcc compiling in -O0? If yes, then that would be a nice result to forward 
to Fabrice Bellard for the release :)

I'm especially surprise considering that compilation is often quite IO bound 
AFAIK.

Thanks a lot for the results.

Tom

> 
> Summary: tcc compiles x41 faster but runs program x3.37 slower
> 
> == gcc
> 
> 1) compile time
> address@hidden ~/openlisp/cbench $ time make gabriel.c boyer.c browse.c 
> ctak.c dderiv.c deriv.c destru.c div2.c fft.c fib20.c fprint.c fread.c 
> frpoly.c puzzle.c stak.c tak.c takl.c takr.c tprint.c traverse.c 
> triang.c ld gngabriel ..
> 
> real    5m38.279s
> user    5m32.040s
> sys    0m3.700s
> 
> 2) run time
> address@hidden ~/openlisp/cbench $ ./gngabriel ../contrib/gabriel.lsp
>  01Fib     : ok, time =   0.001s. ( 0
> GC)  02Tak     : ok, time =   0.005s. (
> 0 GC)  03Stak    : ok, time =   0.020s. ( 0
> GC)  04Ctak    : ok, time =   0.211s. ( 0
> GC)  05Takl    : ok, time =   0.021s. ( 0
> GC)  06Takr    : ok, time =   0.021s. ( 0
> GC)  07Boyer   : ok, time =   0.129s. ( 2 GC)
>  08Browse  : ok, time =   0.266s. ( 6 GC)
>  09Destru  : ok, time =   0.030s. ( 1 GC)
>  10Travini : ok, time =   0.079s. ( 0 GC)
>  11Travrun : ok, time =   0.892s. ( 0 GC)
>  12Deriv   : ok, time =   0.070s. ( 2 GC)
>  13Dderiv  : ok, time =   0.084s. ( 2 GC)
>  14Divit   : ok, time =   0.035s. ( 1 GC)
>  15Divrec  : ok, time =   0.036s. ( 1 GC)
>  16FFT     : ok, time =   0.207s. ( 0
> GC)  17Puzzle  : ok, time =   0.645s. ( 0 GC)
>  18Triang  : ok, time =   0.796s. ( 0 GC)
>  19Fprint  : ok, time =   0.013s. ( 0 GC)
>  20Fread   : ok, time =   0.029s. ( 0 GC)
>  21Tprint  : ok, time =   0.004s. ( 0 GC)
>  22Frpoly  : ok, time =   0.561s. (13 GC)
>             &nb
> sp;          4.154 s.
> 
> == tcc
> 1) compile time
> address@hidden ~/openlisp-tinycc/cbench $ time make
> main.c
> gabriel.c
> boyer.c
> browse.c
> ctak.c
> dderiv.c
> deriv.c
> destru.c
> div2.c
> fft.c
> fib20.c
> fprint.c
> fread.c
> frpoly.c
> puzzle.c
> stak.c
> tak.c
> takl.c
> takr.c
> tprint.c
> traverse.c
> triang.c
> ld gngabriel ..
> 
> real    0m8.182s
> user    0m6.510s
> sys    0m0.830s
> 
> 2) run time
> address@hidden ~/openlisp-tinycc/cbench $ ./gngabriel ../contrib/gabriel.lsp
>  01Fib     : ok, time =   0.002s. ( 0
> GC)  02Tak     : ok, time =   0.022s. (
> 0 GC)  03Stak    : ok, time =   0.129s. ( 0
> GC)  04Ctak    : ok, time =   0.756s. ( 0
> GC)  05Takl    : ok, time =   0.099s. ( 0
> GC)  06Takr    : ok, time =   0.055s. ( 0
> GC)  07Boyer   : ok, time =   0.507s. ( 2 GC)
>  08Browse  : ok, time =   1.073s. ( 6 GC)
>  09Destru  : ok, time =   0.146s. ( 1 GC)
>  10Travini : ok, time =   0.421s. ( 0 GC)
>  11Travrun : ok, time =   2.394s. ( 0 GC)
>  12Deriv   : ok, time =   0.256s. ( 2 GC)
>  13Dderiv  : ok, time =   0.285s. ( 2 GC)
>  14Divit   : ok, time =   0.121s. ( 1 GC)
>  15Divrec  : ok, time =   0.125s. ( 1 GC)
>  16FFT     : ok, time =   0.794s. ( 0
> GC)  17Puzzle  : ok, time =   1.601s. ( 0 GC)
>  18Triang  : ok, time =   2.756s. ( 0 GC)
>  19Fprint  : ok, time =   0.046s. ( 0 GC)
>  20Fread   : ok, time =   0.065s. ( 0 GC)
>  21Tprint  : ok, time =   0.019s. ( 0 GC)
>  22Frpoly  : ok, time =   2.385s. (13 GC)
>             &nb
> sp;         14.058 s.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]