Benchmarks
Gambas es un lenguaje interpretado, sin "just-in-time" u otra compilación a código nativo en absoluto hasta la versión 3.2.
He aquí algunos pequeños puntos de referencia robados en su mayoría a través de Internet utilizado para la comparación de Gambas y Gambas+JIT-compilado contra los interpretados Python y Perl.
Las pruebas se realizaron en mi propio ordenador,
ejecutándolas con la utilidad de sistema
time
.
El tiempo de ejecución es la suma del tiempo de usuario y la hora del sistema.
NOTA: Tenga en cuenta que hay un poco de tiempo utilizado para compilar los archivos de origen en todos los idiomas.
Al menos casi todos los test son estupidos
Results
Tiempos de ejecucion es en segundos.
Benchmark |
Python |
Perl |
Gambas |
Gambas + JIT |
sort |
4,30 |
8,52 |
5,36 |
0,43 |
polynom |
12,47 |
22,54 |
9,20 |
0,60 |
primes |
5,98 |
9,49 |
3,84 |
0,68 |
nbody |
6,02 |
7,77 |
5,43 |
0,93 |
mandelbrot |
6,68 |
4,96 |
3,83 |
0,12 |
string |
9,42 |
8,16 |
6,10 |
6,11 |
Language versions
Se utilizaron las siguientes versiones de los lenguajes de programacion:
-
Python 2.7.10.
-
Perl 5.20.2.
-
Gambas 3.8.90 (development version r7476).
Benchmark source code
Para obtener el código fuente de los benchmark, navegar por el directorio
benchmark
en el código fuente de Gambas.
Ejecutar los benchmark en tu propio sistema
Hay un script llamado
benchmark.gbs
en el directorio
benchmark
.
Sólo tiene que abrir un terminal, cambie a ese directorio, y ejecutarlo con el interprete gambas (gbs3).
Obtendrá el resultado como datos HTML. Si quieres compartirlo, no se olvide
para especificar la distribución de ejecutar y su modelo de CPU.
Por ejemplo, en mi propio sistema (con 4 núcleos, por lo tanto, las cuatro líneas repetidas):
$ uname -a
Linux benoit-kubuntu 4.2.0-16-generic #19-Ubuntu SMP Thu Oct 8 15:35:06 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
$ cat /proc/cpuinfo | grep "model name"
model name : Intel(R) Core(TM) i5-3570K CPU @ 3.40GHz
model name : Intel(R) Core(TM) i5-3570K CPU @ 3.40GHz
model name : Intel(R) Core(TM) i5-3570K CPU @ 3.40GHz
model name : Intel(R) Core(TM) i5-3570K CPU @ 3.40GHz