F3 — Performance y perfilado
Lo que necesitas dominar: profiling (medir dónde se va el tiempo, no adivinar), percentiles (p50/p95/p99 y por qué el promedio miente), latencia vs throughput, complejidad aplicada, memoria y allocations, caching. La regla de oro es una sola: mide, no supongas. El cuello casi nunca está donde crees.
Videos y charlas (empieza por acá)
Performance Matters — Emery Berger (Strange Loop 2019)
Gratis · ~40 min · Charla legendaria sobre por qué medir bien es difícil y cómo se engaña uno solo. Empieza acá.
Performance Analysis Superpowers with Linux eBPF — Brendan Gregg (Velocity 2017)
Gratis · El referente mundial de performance de sistemas, mostrando cómo ver de verdad qué hace la máquina.
Canal para seguir: mCoding (James Murphy) — cómo perfilar Python de verdad (cProfile, tiempos por función), corto y preciso.
Libros y herramientas
- Brendan Gregg — “Systems Performance” · pago · avanzado — la biblia de performance de sistemas. Su web (brendangregg.com) tiene mucho gratis.
- Bryant & O’Hallaron — “Computer Systems: A Programmer’s Perspective” (CSAPP) · pago — cómo funciona la máquina por debajo: memoria, caché, CPU. La base que explica el porqué.
- Herramientas Python · gratis:
py-spy(sampling profiler sin tocar el código),scalene(CPU+memoria),cProfile(stdlib).
Para que no se quede en video
Ya tienes el proyecto hecho a medias: en scholar-rag perfilaste la latencia por etapa (embed → retrieve → grade → generate) y encontraste que el LLM es el cuello. Llévalo más lejos: corre py-spy sobre el servicio bajo carga, mide p99 real, y ataca la etapa que domina con un antes/después. Performance no es optimizar a ciegas, es medir, encontrar el cuello, y probar que lo bajaste.