Visite também: Currículo ·  Efetividade BR-Mac

O que é LinuxDownload LinuxApostila LinuxEnviar notícia


Phoronix compara desempenho de GCC, LLVM-GCC, DragonEgg, Clang

Conforme o compilador livre Clang (e toda a infraestrutura do LLVM, do qual é integrante) avança em seu roadmap, o interesse em comparar com o veterano (e também livre) GCC aumenta – e agora que o Clang começa a se aproximar de poder compilar o kernel Linux, creio que as comparações irão se intensificar.

Comparar características e diferenciais de modo geral é tarefa bem complexa, mas o Phoronix buscou adiantar um comparativo de desempenho (tanto da compilação em si quanto do código gerado), e o fez da maneira obsessivo-compulsiva de sempre: comparou o GCC 4.2.1, 4.3.0, 4.4.0, 4.5.0 e uma versão em desenvolvimento do GCC 4.6, o LLVM 2.8, o LLVM-GCC e o Dragonegg (que coloca o LLVM como componente da compilação do GCC).

Compiler Benchmarks Of GCC, LLVM GCC, DragonEgg, Clang (http://www.phoronix.com/scan.php?page=article&item=llvm gcc dragonegg28&num=4) ” src=”http://img.efetividade.net/img/xtra/benchc8.png”]

Os testes envolveram uma miudeza de benchmarks e compilações, típica do Phoronix: Apache, Gcrypt, OpenSSL, John The Ripper, BYTE, C-Ray, Crafty, Himeno, MAFFT, HMMer, 7-Zip, LAME MP3, x264, GraphicsMagick, compilação cronometrada do Apache e do ImageMagick.

Tentar resumir as 7 páginas de gráficos e detalhamentos seria até injusto, mas vale mencionar que cada um dos sistemas exibiu forças e fraquezas, e as versões em desenvolvimento (LLVM, Clang e GCC 4.6) puderam mostrar em quais pontos estão mais avançadas e onde ainda precisam de ajustes. Me chamaram a atenção especialmente os comparativos em que todos os compiladores testados estavam equilibrados – sinal de maturidade sendo alcançada, na minha opinião. (via phoronix.com)


• Publicado por Augusto Campos em 2010-11-09

Comentários dos leitores

Os comentários são responsabilidade de seus autores, e não são analisados ou aprovados pelo BR-Linux. Leia os Termos de uso do BR-Linux.

    Marcos (usuário não registrado) em 9/11/2010 às 10:13 am

    Legal.

    Queria que tivesse algum compilador comercial junto, com o da MS e o da Intel, pra poder ver o quanto há espaço pra melhorar.

    Weber Jr . (usuário não registrado) em 9/11/2010 às 10:35 am

    @Marcos

    Além de não ser foco do Phoronix, fico imaginando se não existe algum impedimento legal.

    Como a Oracle que proíbe que se divulgue benchmarks do seu SGBD.

    CarlosCaldas (usuário não registrado) em 9/11/2010 às 11:37 am

    Isso sim é um teste bem feito. Gostaria que incluísse o SW não livre Visual Studio nesse comparativo.

    @Weber Jr., se não me engano algumas empresas como Oracle colocam cláusulas em alguns de seus produtos proibindo benchmarks :-) Mas não creio que seja o caso do ICC. O ICC é o melhor compilador para gerar bom código x86. Nem é difícil imaginar o porque :-)

    Ao meu ver o tempo de compilação é algo que não deve importar tanto, já que um tempo maior pode significar um número maior de otimizações, o que é algo muito bom em se tratando de qualidade de código.

    Ah sim, queria ver o PCC (primeiro comando da capital) e o TCC (terceiro comando da capital, suplente do segundo ;-)) na disputa também.

    Pelo que vi o tcc gera binários bem pequenos, compila muito rápido (muitas vezes mais rápido que o gcc), além de gerar um código muito otimizado. Também, foi criado pelo mesmo desenvolvedor original do QEMU, do FFMPEG e o cara que bateu o record de dígitos do número Pi (π), num computador pessoal :-).

    renato (usuário não registrado) em 9/11/2010 às 1:43 pm

    não faria sentido incluir o compilador da microsoft que só existe pra windows enquanto o foco desses compiladores é o unix. Mas uma comparação com o ICC seria legal, embora tenham feito uma comparação entre ICC e GCC pouco tempo atrás.

    Tércio Martins (usuário não registrado) em 9/11/2010 às 2:11 pm

    @Weber Jr.: creio que não há impedimento para eles medirem o desempenho com o Visual Studio (constantemente o site faz benchmarks comparando “clones livres do Unix” com o Mac OS X, desempenho de placas de vídeo no Windows e no Linux, etc.).

    O que impede eles de fazer o comparativo com todos os compiladores seja o fato de o VS só compilar executáveis para Windows e o Clang, por sua vez, para Unix/Linux. Como os formatos de arquivos executáveis são diferentes no Windows e nos Unix-like, não é possível avaliar os três compiladores ainda. Quando o VS suportar compilação para Unices ou o Clang gerar executáveis Windows, aí será possível fazer uma comparação dessas.

    foobob (usuário não registrado) em 9/11/2010 às 2:16 pm

    Visual Studio não compila PN. é só uma IDE xumbrega chamando um compilador de linha-de-comando como qualquer outro… crianças!…

    Riser (usuário não registrado) em 9/11/2010 às 2:37 pm

    Até agora o LLVM não mostrou essas coisas todas, mas a galerinha adora aqui dizer que ele tá “humilhando” GCC.

    Hahahaha…

Este post é antigo (2010-11-09) e foi arquivado. O envio de novos comentários a este post já expirou.