PplWare Mobile

GCC – O compilador lendário celebra 25 anos

                                    
                                

Este artigo tem mais de um ano


Autor: Pedro Pinto


  1. André says:

    Para ser totalmente correcto:
    GCC – A compilação (ou colecção) de compiladores lendários celebra 25 anos

    E que 25 anos… O melhor de todos, no que conta a optimizações 🙂
    É pena ainda não suportar a 100% o C++11, mas está muito perto de o fazer.

    Congratulations GCC!

    • NS says:

      É bastante bom, mas está longe do ser o melhor.
      Um bom exemplo é o compilador da intel, que em muitas situações em 10 vezes mais rápido (por exemplo fazendo uma decomposição LU com as MKL).

      • @lmx says:

        Não esta correcta a tua avaliação…!!

        O compilador da Intel refere-se apenas a uma arquitectura, e não a todas as que o gcc suporta….

        Fazendo a mesma analogia que fizes-te,
        posso te dizer que o gcc é milhões de vezes mais rápido que o da Intel para a arquitectura AVR,ou MIPS ou ARM, entre muitas outras?!
        que tens a dizer da minha afirmação?

        cmps

        • NS says:

          O que estava em causa era a qualidade do compilador. O compilador intel é ordens de magnitude superior.
          Quanto à arquitectura, isso é uma pura mentira. Embora não para isso que foi construido, um compilador intel um ARM faz a mesma figura que outros compiladores.
          Quanto ao custo… tudo depende da utilidade. Para muitas coisas uso o gcc que dá muito bem. Quando corro calculos num cluster é impensavel usar o GCC. Operações com matrizes usando Blas ou Lapack chegam a ser 10 a 20 vezes mais rápidas. Isto é falar de 1 semana ou 10 semanas. 😉
          Claro que o uso das flags adequadas ajuda, mas não faz milagres. Para além disso, o ic é totalmente vectorizado, enquanto que o gcc está a anos luz de isso acontecer.
          Conclusão: O compilador intel com as MKL afinadinhas vale os milhares de euros que custa.

          • @lmx says:

            Boas..
            eu não disse que para essa arquitectura é mau!É evidente que terá que ser o melhor, agora para as outras não acredito nem de longe que seja melhor que o gcc!!
            A comparação que fizes-te parece-me errada, pois estás a comparar algo que é feito apenas para uma arquitectura com algo que existe para imensas arquitecturas, e essa comparação é errada, é nesse sentido que o meu comentário vai.

            cmps

      • Mi says:

        Sem contar que o compilador Intel não produz resultados _correctos_, e compila deliberadamente opcodes lentos para plataformas não-Intel.

      • Carlos says:

        @lmx, mi:

        Eu estou chocado! chocado!!! que o compilador da Intel esteja otimizado para processadores Intel.

        Só falta virem dizer que o compilador da IBM está otimizado para processadores da IBM, que o da AMD está otimizado para processadores AMD e que o da ARM está otimizado para processadores ARM…

        • @lmx says:

          Boas…
          lol,
          de facto não percebo o porquê de as pessoas trazerem sempre algo que é muito especifico e que está patenteado, para um mundo onde existe algo grandioso, e que cobre a maioria das arquitecturas existentes, tendo um desempenho fantástico, para a situação em que é proposto, software livre(não podendo de forma alguma conter código patenteado pelas respectivas marcas de processadores, e outros).
          Mesmo assim e sem introduzir optimizações na altura de compilar, tem uma performance muito boa, e não apenas para c/c++, mas sim para todas as outras linguagens que suporta.

          É evidente que este compilador(que na pratica não é bem um compilador, pois um compilador tem um preprocessador de texto(macros),compilador, assembler e linker…(o que não é o caso!!!))não pode ter a mesma performance que um criado pela própria marca e que se encontra patenteado…

          O GCC usa o Pacote binUtils para fazer assembler e linker.

          É estranho quando alguém diz que está longe de ser o melhor e depois compara-o com um compilador de uma única arquitectura patenteada :S .

          quando na Prática o GCC é muito mais do que um compilador, obviamente em conjunto com binutils.

          cmps

          cmps

          • @lmx says:

            assim de cabeça…
            o compilador gcc contem mais de 450 megas de CODIGO FONTE, mais uns quantos do pacote binutils e mais uns quantos da GLIBC.
            É um montro(funciona para varias linguagens e arquitecturas) …mas é um monstro bonito 😉

            cmps

          • Carlos says:

            Qual é a única arquitetura patenteada?

            A da IBM, a da ARM ou a da Intel?

            É verdade que toda a gente fabrica processadores ARM (principalmente a Samsung) mas isso não quer dizer que não haja patentes às paletes. Para além do processador base cujo design é propriedade da ARM, o processador ARM dependendo de quem o fabrica usa patentes da Samsung, da Apple, da Qualcommm, da PowerVR, e mais uma carrada delas, incluindo da Intel ou não tivesse sido a intel a criar o primeiro microprocessador comercial, e o célebre sr. Moore (o da Lei de Moore) um dos seus fundadores.

          • @lmx says:

            São todas como é evidente, e expectável que um compilador não possa usar código patenteado?Penso que isso é óbvio!
            Não faz sentido dizer que o compilador da intel é melhor em algumas coisas, porque este foi criado primeiro e tem codigo patenteado…que não pode ser usado noutros compiladores…
            O problema da evolução é mesmo a treta das patentes, se assim não fosse o gcc daria-lhe um baile na arquitectura x86, porque não outras da-lhe um bailinho lol.

            cmps

  2. vasco says:

    Estou a dar os 1º passos na programação usando o C. O único que compilador que utilizei até agora foi o gcc.

  3. Eduardo says:

    No caso da Apple o compilador padrão é o LLVM e não Clang. O Clang é um dos front-end possíveis, havendo em alternativa o front-end do GCC – daí LLVM-GCC. Em ambos os casos considera-se que o compilador é o LLVM.

  4. Ana Narciso says:

    Parabéns ao GCC!

    O Richard Stallman (criador do GCC) veio a Lisboa à Semana Informática do IST, a qual coordenei e tive o prazer de fazer de “babysitter” dele. Nem sabia que já eram 25 anos, bolas!

    • @lmx says:

      Boas…

      Sortuda 😉 !
      Eu ainda não tive o prazer de o conhecer 🙁 .

      cmps

      • Carlos says:

        Prazer?

        O homem é um fanático fundamentalista do opensource, é o género de pessoa que faz as outras pessoas pensarem que há algo errado com o opensource.

        • Ana Narciso says:

          OPEN SOURCE??????
          Já eras excomungado por ele!

          SOFTWARE LIVRE, FREE SOFTWARE.

          A sério, não imaginas o stress que foi para meter na cabeça dos jornalistas esta diferença, porque ele passa-se quando as pessoas confundem os termos.

          Mais info: http://www.gnu.org/philosophy/free-software-for-freedom.html

        • @lmx says:

          Boas…
          existem de facto diferenças entre opensource e software livre…

          Mas de uma forma geral partilho muitos dos valores deste SENHOR, e dou graças a deus ele ter existido, pois hoje temos escolha.

          Escolha essa que inclusive permite aos mais necessitados poderem ter acesso ao ensino (informático e não só), que eu considero um valor fundamental de uma sociedade supostamente humana, sendo que a informática abre as portas a muito conhecimento, inclusive externo a esta ciência, como por exemplo o uso da Internet.

          Este SENHOR conhecido como o ultimo dos Grandes GURUS gerados pelo MIT, tem sido um
          impulsionador do software livre a todos os níveis, não podia deixar de estar de acordo com estes valores humanos, que também eu tenho orgulho em possuir, mas que não me permitem dada a minha insignificância, comparativamente a este SENHOR, produzir tamanho feito.
          É de louvar que existam ainda neste mundo, feito de pseudo seres-humanos, pessoas como ele.

          O fanatismo é relativo, depende sempre do ponto de vista de cada um.
          Para a Microsoft, ele é visto como um vírus, já para mim…eu é que vejo a Microsoft como um vírus lol, e a ele vejo-o como um ser humano Verdadeiramente difícil de igualar, assim como muitos outros que teem ficado na historia, pela positiva como é óbvio.
          Tudo na vida tem sempre varias interpretações e possíveis soluções, depende de que lado estamos colocados…

          cmps

    • hippie says:

      Olá,

      @ Ana Narciso

      já que foste a ama dele, LOL, sabes onde posso encontrar o video da palestra do teu protegido.

      Obrigado.

      \o/

Deixe um comentário

O seu endereço de email não será publicado.

You may use these HTML tags and attributes: <a href="" title="" rel=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

Aviso: Todo e qualquer texto publicado na internet através deste sistema não reflete, necessariamente, a opinião deste site ou do(s) seu(s) autor(es). Os comentários publicados através deste sistema são de exclusiva e integral responsabilidade e autoria dos leitores que dele fizerem uso. A administração deste site reserva-se, desde já, no direito de excluir comentários e textos que julgar ofensivos, difamatórios, caluniosos, preconceituosos ou de alguma forma prejudiciais a terceiros. Textos de caráter promocional ou inseridos no sistema sem a devida identificação do seu autor (nome completo e endereço válido de email) também poderão ser excluídos.