Hacker News Front Page · ntur1337 ·
It's the memory latency, stupid
El artículo sostiene que un uso de CPU del 100 % puede ocultar esperas prolongadas por accesos a memoria, y muestra cómo una agregación `GROUP BY` con una tabla hash grande sufre ese problema. En una prueba con 99 millones de filas, la partición radix redujo el tiempo de ejecución en la segunda medición de 3,6 a 2,7 segundos, las esperas por memoria del 50,1 % al 23,5 % y las lecturas bajo demanda de DRAM de 4,5 GB a 1,5 GB. El autor también informa que la implementación optimizada de Pivot ejecuta la consulta en 1,85 segundos con un solo núcleo y en 172 milisegundos con 16 núcleos.
When your database CPU is at 100%, what is it actually doing? Memory stalls, CPU caches, and how radix partitioning makes GROUP BY faster.