Un cambio de una sola línea en el Compilador GCC ha dejado un 12% de mejora en chips modernos de Intel y AMD dentro de SPEC CPU 2017. El ajuste toca la escala de fallos de predicción de saltos y llegará con GCC 17, previsto para 2027.
La cifra importa porque no viene de un rediseño grande ni de una optimización exótica. Viene de mover una constante. Y eso encaja con una semana extraña para el software de bajo nivel: hace unos días, un cambio de tres líneas en el kernel de Linux también terminó en una subida del 5% en almacenamiento.
Qué cambió dentro del compilador GCC
Según la explicación de Phoronix, la ingeniera de software de Intel Lili Cui ajustó la línea que define la escala de fallos de predicción de saltos. En la práctica, añadió 3 a ese valor. Con ese cambio, GCC se vuelve más cauteloso a la hora de generar código con ramas tradicionales.
La idea detrás de la modificación es sencilla de seguir. Cuando el compilador cree que una rama puede costar demasiado, tiene más incentivos para buscar alternativas sin saltos, como secuencias branchless. Eso reduce los retrocesos cuando el procesador se equivoca al predecir qué camino tomará el código.
- El ajuste se limita a una línea del compilador.
- La escala de fallos de predicción sube en 3 puntos.
- El cambio favorece código menos dependiente de saltos.
- El objetivo es reducir parones por predicciones erróneas.
El benchmark NAB marca el 12% de mejora
Cui probó el resultado en SPEC CPU 2017, concretamente en 544.nab_r Nucleic Acid Builder. Ese test calcula física y química de moléculas, y ahí es donde apareció el dato más llamativo: un 12% más de rendimiento en procesadores modernos de Intel y AMD.
La explicación técnica también encaja con la arquitectura actual. Los chips modernos tienen pipelines más profundos, así que un error de predicción penaliza más que antes. Si el compilador evita parte de esos saltos, el procesador pasa menos tiempo dando marcha atrás y más ejecutando instrucciones útiles.
Casos así ayudan a entender por qué pequeños ajustes en compiladores y kernels pueden mover números visibles en benchmarks. Ya lo vimos con el código abierto bajo presión por el rendimiento, y esta vez el foco vuelve a estar en cómo se exprime cada ciclo.
Cuándo llegará este cambio a GCC
El cambio ya está integrado para GCC 17, cuya salida está prevista para 2027. Eso significa que la mejora no llegará de inmediato a los usuarios, pero sí queda encaminada para una futura versión del compilador.
La referencia técnica deja otro dato claro: el salto no depende de un único fabricante. En el test, el beneficio apareció tanto en Intel como en AMD, lo que apunta a un efecto ligado al comportamiento de la compilación y a la penalización de las ramas, no a un chip concreto.
Puedes seguir a HardwarePremium en Facebook, Twitter (X), Instagram, Threads, BlueSky o Youtube. También puedes consultar nuestro canal de Telegram para estar al día con las últimas noticias de tecnología.
FAQ
Modificaron una sola línea para subir en 3 puntos la escala de fallos de predicción de saltos. Con eso, GCC se vuelve más prudente al decidir cuándo usar ramas tradicionales.
En el benchmark SPEC CPU 2017 544.nab_r, la mejora fue del 12% en chips modernos de Intel y AMD. El resultado se asocia a menos tiempo perdido en predicciones erróneas.
Se utilizó 544.nab_r, también llamado Nucleic Acid Builder, dentro de SPEC CPU 2017. Es una prueba centrada en cálculos de física y química de moléculas.
El cambio está previsto para GCC 17, que llegaría en 2027. Hasta entonces, la modificación queda pendiente de esa versión del compilador.




Comentarios