La simulación precisa a nivel de ciclo ha sido durante décadas una herramienta esencial en arquitectura de computadores, pero la creciente complejidad de los sistemas modernos —núcleos múltiples, jerarquías de memoria profundas, aceleradores, E/S compleja y pilas de software extensas— la ha vuelto extremadamente lenta: simular unos segundos de ejecución puede requerir meses. Este "muro de la simulación de temporización" ha empujado a la investigación hacia aproximaciones como la simulación exclusiva de la aplicación, ventanas de instrucciones fijas o muestras representativas, que reducen el tiempo de ejecución a costa de perder rigor en la medición microarquitectónica de extremo a extremo.
Este artículo defiende recuperar la simulación completa del sistema (full-system), no modelando todo con detalle permanentemente, sino midiendo los intervalos adecuados, empleando las métricas de rendimiento correctas y aplicando métodos estadísticos sólidos para hacerla viable. La simulación completa captura interacciones entre CPU, memoria, dispositivos, sistema operativo y aplicaciones; muchos cuellos de botella solo emergen al considerar interrupciones, E/S, gestión de memoria y sincronización. Hoy resulta más necesaria que nunca: las cargas de trabajo modernas son orientadas a servicios y multi-inquilino, los sistemas heterogéneos integran CPUs con GPUs y NICs inteligentes, y las cargas de inteligencia artificial agéntica dependen fuertemente de invocaciones a herramientas, APIs y bases de datos, lo que sitúa al sistema operativo en el centro del rendimiento.
Los autores abordan tres ejes: qué medir (validación de métricas como IPC o IPC de nivel de usuario frente a espera activa), cómo medir (ventanas de medición de cinco a 120 segundos para capturar variabilidad, muestreo basado en fases con SimPoint) y por qué la metodología de Alameldeen ofrece una base estadística para acotar el error. El texto describe herramientas históricas como SimOS, Simics, gem5, QEMU, MARSS y QFlex, y compara velocidades de emulación con QEMU frente a simulación funcional y de temporización sobre un núcleo ARM Neoverse N1, evidenciando que incluso gem5 a 250 KIPS necesita meses para simular unos segundos de un solo núcleo.
