Desempenho aprimorado

Nova otimização no GCC 15 para CPUs AMD Zen 4 e Zen 5

Compilador GCC 14 adiciona suporte a GNU/Hurd AArch64
Lançamento estável do GCC 12.1 deve ocorrer nesta semana

O GCC 15 traz uma importante atualização para otimizar ainda mais o desempenho das CPUs AMD Zen 4 e Zen 5. A novidade, chamada de “X86_TUNE_AVX512_TWO_EPILOGUES”, foi desenvolvida por Richard Biener, engenheiro da SUSE, e promete melhorias significativas em performance e tamanho de código ao compilar aplicativos para essas arquiteturas.

O que é a otimização “x86_tune_avx512_two_epilogues”?

A nova otimização ajusta o comportamento do vetorizador para gerar epílogos em AVX2 e SSE para laços vetorizados com AVX512. Isso evita que determinados trechos de código sejam desvetorizados, como identificado em benchmarks específicos, incluindo o SPEC CPU 2017. No caso do teste 525.x264_r, a ausência de um epílogo AVX2 resultava em código não vetorizado, comprometendo o desempenho.

Impactos práticos da otimização

Embora não tenham sido divulgados números detalhados sobre os ganhos de desempenho, a própria implementação foi validada como “positiva” nos benchmarks, tanto em performance quanto em redução do tamanho do código gerado. Essa otimização está habilitada por padrão para CPUs AMD Zen 4 e Zen 5, demonstrando um avanço nas configurações de compilação direcionadas a essas arquiteturas modernas.

Implementação no gcc 15

A otimização foi integrada à árvore de código do GCC e estará disponível na versão estável GCC 15.1, prevista para os primeiros meses de 2025.

Por que isso importa?

Com essa melhoria, desenvolvedores que utilizam CPUs AMD Zen 4 e Zen 5 podem esperar compilações mais eficientes e código com melhor desempenho em aplicações intensivas. Além disso, iniciativas como essa fortalecem a competitividade da AMD no mercado de CPUs de alto desempenho.

Saiba mais

Para detalhes técnicos, acesse o commit oficial no Git do GCC.