
🔎 Python 3.15 incorpora profiling.sampling, un perfilador que toma muestras periódicas de la pila de llamadas para revelar dónde pasa el tiempo un programa. A diferencia del perfilado por rastreo, no añade una instrucción a cada llamada de función: observa el proceso desde fuera, con poco impacto en su ejecución.
El autor muestra cómo usarlo con scripts y procesos activos, y cómo distinguir tiempo de CPU, esperas de entrada/salida y actividad relacionada con el GIL. Los resultados pueden verse como gráficos de llamas, mapas de calor por línea o informes en la terminal.
El muestreo ofrece una aproximación estadística, no un registro exacto: puede pasar por alto funciones muy breves y no cuenta cada llamada. A cambio, resulta útil para encontrar los puntos que más consumen recursos, incluso en servicios en producción.
💡 Explicación en pocas palabras#
En vez de revisar cada movimiento, imagina tomar fotos rápidas de un programa mientras trabaja. Las funciones que aparecen más veces probablemente consumen más tiempo. Es una forma menos intrusiva de encontrar dónde conviene optimizar.
Más información en el link 👇

