O candidato a lançamento do Go 1.21 acaba de ser lançado e traz muitos recursos interessantes em relação ao desempenho. Além disso, ganhou recursos de linguagem, como funções min/max/clear e aprimora ainda mais sua biblioteca padrão.O mais interessante com a série Go 1.21 agora é ter seu suporte para Profile Guided Optimization (PGO) já disponível. Assim, o Go 1.21 ativa PGO para desempenho mais rápido e tem coletor de lixo ajustado.
O comando go irá usá-lo para habilitar uma compilação PGO se houver um arquivo default.pgo presente no diretório principal do pacote. A ativação do PGO em um amplo conjunto de programas demonstrou melhorar o desempenho em 2 a 7%. O PGO é ótimo quando capaz de coletar rastreamentos/perfis precisos/realistas da carga de trabalho de seu aplicativo e pode ser muito benéfico para o desempenho, conforme mostrado em várias implementações de compilador.
Go 1.21 ativa PGO para desempenho mais rápido e tem coletor de lixo ajustado
O próprio compilador Go também foi reconstruído com o PGO ativado e está mostrando um desempenho de compilação cerca de 2 a 4% mais rápido para programas Go. A versão Go 1.21 também apresenta uma redução de até 40% na latência de cauda para alguns aplicativos, graças ao ajuste do coletor de lixo.
A ferramenta go do Go 1.21 agora também suporta compatibilidade de linguagem anterior e posterior, funções min/max/clear, melhorias na inferência de tipos para funções genéricas, várias adições de biblioteca e uma nova porta experimental para WebAssembly WASI.
Mais detalhes sobre o empolgante candidato a lançamento do Go 1.21 hoje através do blog do projeto em go.dev.