Mi tiempo de compilación de Rust pasó de 4 minutos a 32 segundos

2025-06-26

El sitio web Rust del autor tardaba 4 minutos en compilarse, requiriendo una recompilación, copia y reinicio para cada cambio. Para acelerar las cosas, se utilizaron contenedores Docker y cargo-chef para la precompilación de dependencias, pero con un éxito limitado. Utilizando la función de auto-perfilado de rustc y los datos de rastreo de LLVM, el autor identificó la optimización en tiempo de enlace (LTO) y la generación de código del módulo LLVM como los principales cuellos de botella. Mediante una serie de optimizaciones, incluyendo el ajuste de los niveles de LTO, los niveles de optimización y la división de grandes funciones asíncronas, el tiempo de compilación se redujo de 4 minutos a 32,3 segundos.

Desarrollo