Mold 1.0.2 lançado com melhorias de desempenho, e mais

E foi lançado o Mold 1.0.2 com melhorias de desempenho, e mais. Confira as novidades dessa importante atualização desse sodtware.

Para os interessados ​​em compiladores, o Mold as the “Modern Linker” é um dos projetos interessantes para assistir em 2022.

Segundo seu autor, Rui Ueyama, o Mold permitiria aos desenvolvedores aumentar sua produtividade acelerando significativamente os ciclos de depuração-edição-reconstrução:

Ueyama publicou um benchmark mostrando que o molde já é capaz de vincular o Chrome, com 2 GB de tamanho, em pouco mais de 2 segundos, ou seja, com uma aceleração de 5x mais llde mais de 25 vezes mais rápido que o GNU Gold.

Embora esse resultado ainda seja mais que o dobro da meta declarada, definitivamente cria credenciais muito impressionantes.

O Mold 1.0 veio no final de 2021 para este projeto desenvolvido por Rui Ueyama que também é conhecido como o desenvolvedor original do linker LLD da LLVM.

O Mold 1.0 é considerado estável e pronto para produção, ao mesmo tempo em que oferece resultados muito promissores em comparação com os ligantes LLD da LLVM ou Gold da GNU.

O Mold vem gerando interesse entre os desenvolvedores e agora o Mold 1.0.2 sai neste domingo com correções e pequenas atualizações.

Novidades do Mold 1.0.2

Mold 1.0.2 lançado com melhorias de desempenho, e mais
Mold 1.0.2 lançado com melhorias de desempenho, e mais

Enquanto o Mold está trabalhando para o suporte nativo de otimização de tempo de link (LTO), no momento o Mold 1.0.2 agora voltará a usar ld.bfd ou ld.lld se o suporte GCC/LLVM LTO for solicitado.

Isso pelo menos não quebrará as compilações e, portanto, deve funcionar bem até que o suporte LTO do Mold esteja pronto.

O Mold 1.0.2 agora também está honrando mais flags (sinalizadores/parâmetros) suportados por outros linkers, thunks de extensão de intervalo ARM64 estão em vigor, o suporte para Mold no NetBSD está funcionando, emitindo entradas PLT compactas de 8 bytes em vez de entradas de 16 bytes em x86_64 ao usar “-z now” e suporte para realocações dinâmicas compactadas do tipo RELR.

Referências anteriores do projeto Mold mostrando o desempenho do vinculador muito atraente.

Também há melhorias de desempenho com o Mold 1.0.2 por meio da reescrita do processador de script, o que é especialmente benéfico se estiver usando o comportamento de correspondência de padrão *glob.

Há também um processamento de realocação mais otimizado para seções não alocadas em memória. Este último trabalho de otimização ajudará a acelerar as coisas se o binário tiver muitas informações de depuração.

Plus Mold 1.0.2 tem várias correções de bugs, incluindo a capacidade de lidar com arquivos maiores que 4GiB.

Mais detalhes sobre as mudanças com o Mold 1.0.2 (e outras informações) podem ser visualizados no GitHub do projeto.

Sobre o Edivaldo Brito

Edivaldo Brito é analista de sistemas, gestor de TI, blogueiro e também um grande fã de sistemas operacionais, banco de dados, software livre, redes, programação, dispositivos móveis e tudo mais que envolve tecnologia.