Python 3.15 reduce la sobrecarga del perfilado a 4.5x con doble despacho

Python 3.15's Ultra-Low Overhead Interpreter Profiling Mode – Ken Jin's Blog

Python 3.15 reduce la sobrecarga del perfilado a 4.5x con doble despacho

Ken Jin, desarrollador de CPython, detalla una innovadora técnica de perfilado de intérpretes para el JIT de Python 3.15. En lugar de un segundo intérprete o un modo condicional, se emplean dos tablas de despacho intercambiables: una para ejecución normal y otra que enruta todas las instrucciones a una única instrucción de grabación. Esto permite registrar trazas con una sobrecarga mínima (solo 4.5x en un benchmark de juguete, frente a 900-1000x en sistemas como PyPy). El artículo explica el diseño, los resultados y las reflexiones sobre la complejidad añadida.

Esto esencialmente significa que perfilando el intérprete en CPython 3.15 es solo como máximo 4.5 veces más lento para nuestro benchmark de juguete.

Más de este día

2026-07-21