Computación científica
Repositorio de GitHubBenchmark de reacción-difusión
La misma simulación, dos backends de Python y una comparación cuidadosa de velocidad y consistencia numérica.
Contexto: Computación científica, simulación numérica y rendimiento en Python
Periodo: 2026
Resumen
El benchmark ejecuta el mismo modelo bidimensional FitzHugh-Nagumo con NumPy vectorizado y Numba paralelo. Estados, ecuaciones e iteraciones idénticos permiten comparar tiempo de ejecución, error numérico y significación.
De entradas idénticas a una comparación de rendimiento justificada
Estado inicial
Ambos backends reciben la misma cuadrícula y parámetros
NumPy
La implementación vectorizada ejecuta la referencia
Numba
El backend compilado y paralelo resuelve las mismas ecuaciones
Verificación
Se miden tiempo, error numérico y significación
Informes
Tablas y gráficos hacen comparables los resultados
Qué gestiona el sistema
Simula un sistema FitzHugh-Nagumo bidimensional.
Compara NumPy y Numba bajo condiciones idénticas.
Utiliza fronteras periódicas y difusión con cuatro vecinos.
Genera CSV, gráficos y comparaciones estadísticas.
Benchmark pareado medido
Diez muestras pareadas de 300 iteraciones por cuadrícula bajo condiciones de simulación idénticas.
Aceleración de Numba
8,50×
NumPy en 64 × 64
Aceleración de Numba
3,77×
NumPy en 128 × 128
Aceleración de Numba
2,44×
NumPy en 256 × 256
Prueba t pareada
< 0,001valor p
Todos los tamaños
Error absoluto máximo
2,3e-6–2,6e-6
Numba frente a NumPy
Tecnología
Stack
Áreas
Explorador del benchmark
Resultados de benchmark precalculados
Numba comparado con la referencia NumPy
Elige un tamaño de cuadrícula para comparar tiempo medio, aceleración medida y consistencia numérica.
más rápido que la referencia NumPy
- Error absoluto máximo
- 2.56e-6
- Prueba t pareada
- p = 7.50e-4
- Muestras × iteraciones
- 10 × 300
Fuente: archivos CSV del benchmark con diez muestras pareadas de 300 iteraciones por cuadrícula. La ejecución del benchmark permanece en el flujo del repositorio.
Ver los archivos CSV originales en GitHubConclusiones
- Numba redujo el tiempo para todos los tamaños de cuadrícula probados.
- Varios tamaños muestran cómo escala la aceleración.
- El error numérico permanece visible junto al rendimiento y cercano a NumPy.
¿Quieres revisar la implementación?
El repositorio contiene el código, las instrucciones de configuración y el historial de desarrollo.