Miguel Grinberg, autor de varios libros sobre los frameworks de Python SQLAlchemy y Flask, publicó los resultados de las pruebas de rendimiento de CPython, versiones 3.9 a 3.14. Se realizaron pruebas similares para PyPy 3.11 (una implementación de Python con compilador JIT), Node.js 24 y Rust 1.90. Para las versiones 3.13 y 3.14 de CPython, se midió el rendimiento adicionalmente con el compilador JIT habilitado y el modo de compilación de subprocesos libres sin bloqueo global.
Para medir el rendimiento, se utilizaron scripts para calcular los números de Fibonacci (recursión profunda) y ordenar aleatoriamente números generados, ejecutándose en modo de un solo hilo y divididos en 4 hilos. Las pruebas se ejecutaron en Ubuntu 24.04 en una computadora portátil con una CPU Intel Core i5 y macOS Sequoia en una computadora portátil con procesador Apple M2.
En la mayoría de las pruebas, CPython 3.14 fue aproximadamente un 20 % más rápido que la versión 3.13, aunque las versiones 3.11 y 3.12 fueron más rápidas en algunas pruebas. La diferencia de rendimiento entre la versión 3.14, la 3.9 y la 3.10 fue aproximadamente el doble. PyPy, Node.js y Rust superaron a CPython 3.14 en la primera prueba por 4.93, 4.88 y 69.82 veces, respectivamente, y en la segunda por 18.14, 6.64 y 36.15 veces, respectivamente (solo se compararon los modos de un solo subproceso).




El modo global sin bloqueo en CPython 3.14 duplicó la velocidad de ejecución multihilo. Habilitar el modo JIT en CPython no resultó en una mejora significativa del rendimiento y en la prueba de la rama 3.14, macOS Incluso ralentizó la ejecución.


En pruebas de un solo subproceso, el modo sin bloqueo global ralentizó notablemente la ejecución de la tarea, mientras que el modo con JIT casi no tuvo impacto en el rendimiento.


Fuente: opennet.ru
