Goroutines baratas, cache misses caros: concurrencia en Go al nivel del silicio
DEVELOPMENT
🌎 Mexico 2026
Escribir concurrencia en Go es engañosamente simple: go func() y listo. Pero entre esa línea y los núcleos que la ejecutan hay un mundo que determina si tu código realmente corre en paralelo o si pele…
Escribir concurrencia en Go es engañosamente simple: go func() y listo. Pero entre esa línea y los núcleos que la ejecutan hay un mundo que determina si tu código realmente corre en paralelo o si pelea consigo mismo sin que lo notes.
En esta charla vamos a bajar desde el runtime de Go hasta el silicio para entender por qué dos goroutines "independientes" pueden ser más lentas que una sola, qué es una cache line y por qué importa, cómo el hardware decide la concurrencia que crees estar escribiendo, y qué patrones lo cambian todo sin tocar la lógica del programa.
Con benchmarks en vivo, código real y algunos momentos donde el profiler dice cosas que el código fuente jamás contaría. Al final, te llevas un modelo mental nuevo de qué pasa cuando escribes go.
Sobre Juan Diego Latorre Ramirez: Ingeniero apasionado por las nuevas tecnologías y el desarrollo de software.
He participado en el desarrollo de productos de software complejos para diferentes industrias, utilizando lenguajes de programación como Go y Python, diferentes bases de datos como MongoDB, Postgres, Redis, InfluxDB y diversos servicios en la nube, tanto en Google Cloud Platform como en AWS, entre otras tecnologías.
Mi área principal es el Desarrollo BackEnd y arquitectura de software. Busco constantemente la mejora continua en los productos, con el fin de brindar soluciones robustas, escalables y eficientes a los clientes.
Especialmente interesado en la programación concurrente y paralela.