Puntos de referencia canónicos en varios idiomas

Esta página informa una ejecución local completa de la suite canónica benchLANG el 12 de julio de 2026. Las 19 implementaciones de lenguaje configuradas completaron las cinco cargas de trabajo con resultados válidos.

La suite se ejecutó en Linux 7.0.0 x86-64 con un AMD Ryzen 9 5900X (12 núcleos, 24 subprocesos) y 30 GiB de RAM. Cada idioma se compiló una vez y se ejecutó una vez. La máquina no estaba aislada, la frecuencia de su CPU no estaba bloqueada y había otra carga del sistema presente, por lo que estas mediciones son una instantánea reproducible, no una afirmación de clasificaciones estadísticamente estables.

Las cargas de trabajo canónicas son:

El tiempo de ejecución es el tiempo transcurrido interno de la carga de trabajo. El tiempo de compilación es el tiempo transcurrido para la compilación de la suite. LOC cuenta el archivo fuente completo para ese idioma. El RSS máximo se mide para el proceso completo del conjunto con /usr/bin/time -v, y el tamaño binario es el artefacto completo generado del conjunto. Debido a que las cinco cargas de trabajo comparten un archivo fuente, las métricas de compilación, LOC, RSS y binarias se repiten en cada tabla de cargas de trabajo. significa que la ruta de ejecución interpretada, impulsada por JIT o de inicio del código fuente no produjo una fase de compilación medida por separado ni un binario independiente.

tamiz principal

Idioma Ejecución (es) compilar(es) LOC RSS pico binario
c 2.608 0,33 172 33,1 MB 28,3 KiB
Rust 2.609 2.69 142 33,3 MB 2,04 MB
nim 2.612 1.44 119 50,0 MB 52,1 KiB
Zig 2.612 4.23 180 32,9 MB 204,0 KiB
re 2.614 3.10 133 97,3 MB 1,13 MB
Java 2.615 127 561,8 MB
fortran 2.616 0,59 233 33,6 MB 32,5 KiB
ada 2.617 0,98 224 34,8 MB 48,7 KiB
seed 2.622 0,84 218 33,2 MB 27,8 KiB
c# 2.630 4.37 129 116,9 MB 77,1 KiB
JavaScript (bollo) 2.649 108 342,8 MB
JavaScript (nodo) 2.663 108 303,2 MB
dardo 2.905 1.22 130 69,8 MB 6,45 MB
ir 3.054 2.83 157 52,9 MB 1,53 MB
OCaml 3.090 0,31 118 87,4 MB 1,86 MB
pascal 3.110 0,22 205 32,2 MB 548,3 KiB
PHP 3.198 127 179,2 MB
Pitón (PyPy3) 3.297 127 376,5 MB
Pitón (Python3) 60.688 127 153,1 MB

Fibonacci recursivo

Idioma Ejecución (es) compilar(es) LOC RSS pico binario
nim 0.096 1.44 119 50,0 MB 52,1 KiB
fortran 1.682 0,59 233 33,6 MB 32,5 KiB
c 1.710 0,33 172 33,1 MB 28,3 KiB
ada 1.762 0,98 224 34,8 MB 48,7 KiB
seed 2.979 0,84 218 33,2 MB 27,8 KiB
Zig 3.074 4.23 180 32,9 MB 204,0 KiB
Rust 3.082 2.69 142 33,3 MB 2,04 MB
re 3.083 3.10 133 97,3 MB 1,13 MB
c# 3.323 4.37 129 116,9 MB 77,1 KiB
Java 3.974 127 561,8 MB
OCaml 5.235 0,31 118 87,4 MB 1,86 MB
ir 5.584 2.83 157 52,9 MB 1,53 MB
pascal 5.709 0,22 205 32,2 MB 548,3 KiB
JavaScript (bollo) 7.489 108 342,8 MB
dardo 7.850 1.22 130 69,8 MB 6,45 MB
JavaScript (nodo) 11.452 108 303,2 MB
Pitón (PyPy3) 12.589 127 376,5 MB
PHP 18.944 127 179,2 MB
Pitón (Python3) 113.390 127 153,1 MB

El resultado de Nim se informa exactamente como se midió, pero su tiempo fib(45) es una fuerte especialización del optimizador o una señal de plegado constante. No debe usarse como evidencia comparativa hasta que la carga de trabajo obtenga un aporte anti-plegamiento.

Procesamiento de cadenas

Idioma Ejecución (es) compilar(es) LOC RSS pico binario
Zig 1.448 4.23 180 32,9 MB 204,0 KiB
seed 1.513 0,84 218 33,2 MB 27,8 KiB
JavaScript (nodo) 1.812 108 303,2 MB
Rust 2.105 2.69 142 33,3 MB 2,04 MB
c 2.124 0,33 172 33,1 MB 28,3 KiB
nim 2.188 1.44 119 50,0 MB 52,1 KiB
c# 2.228 4.37 129 116,9 MB 77,1 KiB
ada 2.310 0,98 224 34,8 MB 48,7 KiB
re 2.430 3.10 133 97,3 MB 1,13 MB
JavaScript (bollo) 2.742 108 342,8 MB
ir 2.823 2.83 157 52,9 MB 1,53 MB
fortran 3.405 0,59 233 33,6 MB 32,5 KiB
Java 4.018 127 561,8 MB
OCaml 4.093 0,31 118 87,4 MB 1,86 MB
Pitón (PyPy3) 4.896 127 376,5 MB
dardo 5.871 1.22 130 69,8 MB 6,45 MB
PHP 7.251 127 179,2 MB
pascal 12.094 0,22 205 32,2 MB 548,3 KiB
Pitón (Python3) 38.324 127 153,1 MB

Mandelbrot

Idioma Ejecución (es) compilar(es) LOC RSS pico binario
nim 1.855 1.44 119 50,0 MB 52,1 KiB
ir 1.911 2.83 157 52,9 MB 1,53 MB
fortran 2.028 0,59 233 33,6 MB 32,5 KiB
ada 2.036 0,98 224 34,8 MB 48,7 KiB
c 2.103 0,33 172 33,1 MB 28,3 KiB
re 2.116 3.10 133 97,3 MB 1,13 MB
Rust 2.116 2.69 142 33,3 MB 2,04 MB
seed 2.119 0,84 218 33,2 MB 27,8 KiB
Zig 2.119 4.23 180 32,9 MB 204,0 KiB
c# 2.120 4.37 129 116,9 MB 77,1 KiB
dardo 2.166 1.22 130 69,8 MB 6,45 MB
Java 2.166 127 561,8 MB
JavaScript (nodo) 2.167 108 303,2 MB
OCaml 2.173 0,31 118 87,4 MB 1,86 MB
JavaScript (bollo) 2.177 108 342,8 MB
pascal 2.179 0,22 205 32,2 MB 548,3 KiB
Pitón (PyPy3) 2.280 127 376,5 MB
PHP 5.994 127 179,2 MB
Pitón (Python3) 73.626 127 153,1 MB

árboles binarios

Idioma Ejecución (es) compilar(es) LOC RSS pico binario
Java 0.550 127 561,8 MB
OCaml 0.924 0,31 118 87,4 MB 1,86 MB
JavaScript (bollo) 0.930 108 342,8 MB
nim 0.939 1.44 119 50,0 MB 52,1 KiB
dardo 0,959 1.22 130 69,8 MB 6,45 MB
c# 1.121 4.37 129 116,9 MB 77,1 KiB
JavaScript (nodo) 1.223 108 303,2 MB
seed 1.263 0,84 218 33,2 MB 27,8 KiB
pascal 1.560 0,22 205 32,2 MB 548,3 KiB
fortran 1.600 0,59 233 33,6 MB 32,5 KiB
c 1.626 0,33 172 33,1 MB 28,3 KiB
ada 1.795 0,98 224 34,8 MB 48,7 KiB
Zig 1.943 4.23 180 32,9 MB 204,0 KiB
ir 1.951 2.83 157 52,9 MB 1,53 MB
Rust 2.233 2.69 142 33,3 MB 2,04 MB
re 3.352 3.10 133 97,3 MB 1,13 MB
Pitón (PyPy3) 5.801 127 376,5 MB
PHP 6.796 127 179,2 MB
Pitón (Python3) 16.851 127 153,1 MB

suite completa

El tiempo del conjunto completo es la suma reportada por cada implementación para las cinco cargas de trabajo. Se incluye como descripción general; Las tablas de carga de trabajo anteriores siguen siendo la comparación principal.

Idioma Ejecución (es) compilar(es) LOC RSS pico binario
nim 7.698 1.44 119 50,0 MB 52,1 KiB
c 10.171 0,33 172 33,1 MB 28,3 KiB
seed 10.496 0,84 218 33,2 MB 27,8 KiB
ada 10.521 0,98 224 34,8 MB 48,7 KiB
Zig 11.194 4.23 180 32,9 MB 204,0 KiB
fortran 11.331 0,59 233 33,6 MB 32,5 KiB
c# 11.424 4.37 129 116,9 MB 77,1 KiB
Rust 12.146 2.69 142 33,3 MB 2,04 MB
Java 13.331 127 561,8 MB
re 13.595 3.10 133 97,3 MB 1,13 MB
ir 15.322 2.83 157 52,9 MB 1,53 MB
OCaml 15.515 0,31 118 87,4 MB 1,86 MB
JavaScript (bollo) 15.989 108 342,8 MB
JavaScript (nodo) 19.319 108 303,2 MB
dardo 19.752 1.22 130 69,8 MB 6,45 MB
pascal 24.652 0,22 205 32,2 MB 548,3 KiB
Pitón (PyPy3) 28.863 127 376,5 MB
PHP 42.224 127 179,2 MB
Pitón (Python3) 302.933 127 153,1 MB

Reproducción

La ejecución completa utilizó:

cd benchLANG
./run_benchmarks.sh --runs 1 --timeout 600

Las correcciones de caché de la cadena de herramientas locales fueron seguidas por reejecuciones específicas para Zig, Go, Nim, C# y Dart. Las tablas combinan solo el último resultado exitoso para cada idioma.