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

Summary: tcc compiles x41 faster but runs program x3.37 slower

== gcc

1) compile time
jullien@sims ~/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
jullien@sims ~/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)
                      
 4.154 s.

== tcc
1) compile time
jullien@sims ~/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
jullien@sims ~/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)
                     
 14.058 s.

_______________________________________________
Tinycc-devel mailing list
[email protected]
https://lists.nongnu.org/mailman/listinfo/tinycc-devel

Reply via email to