Pablo Galindo Salgado
Pablo Galindo Salgado works in the Python team of Hudson River Trading. He is a CPython core developer and a Theoretical Physicist specializing in general relativity and black hole physics. He is currently serving on the Python Steering Council in his 6th term and he is the release manager for Python 3.10 and 3.11. He has also a cat but he does not code.
pyblogsal
@pablogsal.com
Sesión
Para la ultima edicion de Python, en el core dev team nos propusimos construir el mejor profiler por muestreo para cualquier lenguaje interpretado y añadirlo en la libreria estándar.
Python 3.15 trae el resultado: Tachyon, un nuevo profiler por muestreo capaz de samplear a nivel de microsegundo. A esa velocidad, puede que tu profiler esté haciendo más trabajo que el propio código al que analiza. Esta charla es la historia de cómo lo construimos.
En esta charla aprenderás a leer memoria de un proceso en ejecución sin detenerlo, a dar sentido a las estructuras internas de Python desde fuera, y qué trucos hacen falta para pasar de «suficientemente rápido» a «esta velocidad es casi ilegal». Si alguna vez te has preguntado qué hace falta para construir un profiler capaz de conectarse a un servidor en producción, capturar datos y marcharse sin que la aplicación se entere, aquí lo vas a descubrir.
Pero esto no es solo una charla sobre aspectos secretos de como Python funciona por dentro. También aprenderás a usar Tachyon para encontrar las partes lentas de tu código. Flamegraphs, mapas de calor, profiling consciente de async, análisis de contención del GIL, profiling a nivel de bytecode... Al final sabrás qué formato de salida elegir, qué modo de profiling encaja con tu problema, y cómo pasar de «mi servidor va lento» a «aquí está la línea que nos está matando».Tanto si te interesa la programación de sistemas que hace que esto funcione, como si solo quieres una forma mejor de depurar problemas de rendimiento, esta charla tiene algo para ti.